WaitingOrder.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735
  1. var downUrl = "";
  2. var exData = null;
  3. var edit_id = "";
  4. var _memo_msg = "";
  5. var userId = "";
  6. var cdrImgUrl = null;
  7. function addFn() {
  8. edit_id = "";
  9. $(".win_tb").find("input").val("");
  10. $(".win_tb").find("textarea").val("");
  11. mini.get("add_win").show();
  12. }
  13. let replace_list = [
  14. ["皙贝", "白卡"],
  15. ["睿狐", "莱尼"],
  16. ["岚蝶", "安格"],
  17. ["琮纹", "刚古"],
  18. ["珠光", "珠光"],
  19. ["溪雪", "珠光"],
  20. ["雅柔", "雅柔"],
  21. ["萱姿", "雅柔"],
  22. ["草香", "草香"],
  23. ["芳怡", "草香"],
  24. ["金绒", "牛皮"],
  25. ["素芸", "棉卡"],
  26. ["玉蕊", "蛋壳"]
  27. ]
  28. function memoRenderer(e) {
  29. var record = e.record;
  30. //var html = "<textarea class='memo-class' rows=\"3\" readonly=\"readonly\" id='" + record.ctid + "' ondblclick=\"doubleClick('" + record.ctid + "')\">" + record.seller_memo + "</textarea>";
  31. let memo = record.seller_memo;
  32. replace_list.forEach(item => {
  33. memo = memo.replace(item[0], item[1]);
  34. })
  35. var html = "<div class='white-space' ondblclick=\"copyText(this)\" data-ctid = \"" + record.ctid + "\">" + memo + "</div>";
  36. return html;
  37. }
  38. function copyText(obj) {
  39. var div = obj;
  40. var rec = grid.getSelected();
  41. let text = div.innerText;
  42. let ctid = div.dataset.ctid;
  43. div.innerText = text + "《" + ctid + "》";
  44. if (document.body.createTextRange) {
  45. var range = document.body.createTextRange();
  46. range.moveToElementText(div);
  47. range.select();
  48. } else if (window.getSelection) {
  49. var selection = window.getSelection();
  50. var range = document.createRange();
  51. range.selectNodeContents(div);
  52. selection.removeAllRanges();
  53. selection.addRange(range);
  54. } else {
  55. //console.warn("none");
  56. return;
  57. }
  58. document.execCommand("Copy");
  59. div.innerText = text;
  60. mini.showTips({
  61. content: "复制成功!",
  62. state: "danger",
  63. x: "Center",
  64. y: "Center",
  65. timeout: 1000
  66. });
  67. }
  68. function orderPTimeRenderer(e) {
  69. var grid = e.sender;
  70. var record = e.record;
  71. var html = "<div style=\"display:flex;flex-direction:column;\">";
  72. html += ("<div>" + record.seller_nick + "</div>");
  73. html += getWWurlByNick(record.buyer_nick);
  74. html += ("<div>" + formatCommonDate(record.pay_time) + "</div>");
  75. html += "</div>";
  76. return html;
  77. }
  78. function returnTimeRenderer(e) {
  79. var record = e.record;
  80. var html = "<div style=\"display:flex;flex-direction:column;\">";
  81. html += ("<div>" + formatCommonDate(record.ReturnTime) + "</div>");
  82. html += "</div>";
  83. return html;
  84. }
  85. function orderStatusRenderer(e) {
  86. var grid = e.sender;
  87. var record = e.record;
  88. var statestr = getOrderStatestrByState(record.OrderState);
  89. var html = "<div style=\"display:flex;flex-direction:column;\">";
  90. html += ("<div onclick=\"clickToLog('" + record.ctid + "')\" style=\"color:blue;margin-bottom:10px;\">" + statestr + "</div>");
  91. var taostatus = getInitStatusstrByState(record.status);
  92. html += ("<div>" + taostatus + "</div>");
  93. html += "</div>";
  94. return html;
  95. }
  96. function isReturnRenderer(e) {
  97. var record = e.record;
  98. var html = "<div>";
  99. if (record.IsReturn == 1) {
  100. html += ("<div style=\"color:#C05301;\">供应商退回</div>");
  101. }
  102. else if (record.IsReturn == 2) {
  103. html += ("<div style=\"color:green;\">下单部退回</div>");
  104. }
  105. html += "</div>";
  106. return html;
  107. }
  108. function orderCusRenderer(e) {
  109. var grid = e.sender;
  110. var record = e.record;
  111. var html = "<div style=\"display:flex;flex-direction:column;align-items:center;\">";
  112. html += ("<a style=\"color:#0090FF;\">" + record.CustomerUserName + "</a>");
  113. html += ("<a style=\"color:#0090FF;\">" + record.DesignUserName + "</a>");
  114. html += "</div>";
  115. return html;
  116. }
  117. function addressRenderer(e) {
  118. var grid = e.sender;
  119. var record = e.record;
  120. var tid = record.tid;
  121. var rowIndex = e.rowIndex;
  122. var html = "<div>" + record.receiver_name + " " + record.receiver_mobile + " " + record.receiver_state + record.receiver_city + record.receiver_district + record.receiver_address + "</div>";
  123. return html;
  124. }
  125. function verifyStateRenderer(e) {
  126. var record = e.record;
  127. var ctid = record.ctid;
  128. var html = "";
  129. if (record.IsVerifyToSupplier == "False") {
  130. html += "<div style='color:blue;'>未审核</div>";
  131. }
  132. else if (record.IsVerifyToSupplier == "True") {
  133. html += "<div style='color:green;'>已审核</div>";
  134. }
  135. return html;
  136. }
  137. function supActionRenderer(e) {
  138. var record = e.record;
  139. var ctid = record.ctid;
  140. var html = "";
  141. html += getGridBtn("stop", "退回", "supplierBackFn('" + ctid + "')");
  142. return html;
  143. }
  144. function GetToQuote(eid) {
  145. edit_id = eid;
  146. var rec = grid.getSelected();
  147. postAjax("Get_To_Quote", "ctid=" + eid, function (data) {
  148. resultShow(data);
  149. });
  150. }
  151. function supplierBackFn(ctid) {
  152. //if (!confirm("确认退回吗?")) return;
  153. //postAjax("upd_erp_supplierback", "ctid=" + ctid, function (data) {
  154. // resultShow(data, "grid.reload();");
  155. //});
  156. if (rec != undefined && rec != "") {
  157. edit_id = rec.ctid;
  158. mini.prompt("请输入原因:", "退单",
  159. function (action, value) {
  160. if (action == "ok") {
  161. var parms = new Object();
  162. parms.ctid = ctid;
  163. parms.returnreason = value;
  164. postAjax("upd_erp_supplierback", parms, function (data) {
  165. resultShow(data, "grid.reload();");
  166. });
  167. } else {
  168. }
  169. },
  170. true
  171. );
  172. }
  173. else {
  174. mini.alert("请选中一行记录!");
  175. }
  176. }
  177. function verifyFn(ctid) {
  178. var rows = grid.getSelecteds();
  179. var ctids = "";
  180. for (var rec of rows) {
  181. ctids += rec.ctid;
  182. ctids += ",";
  183. }
  184. ctids = ctids.substring(0, ctids.length - 1);
  185. if (!confirm("确认审核吗?(供应商将收到此订单)")) return;
  186. postAjax("upd_erp_verifytosupplier", "ctid=" + ctids, function (data) {
  187. resultShow(data, "grid.reload();");
  188. });
  189. }
  190. //点击指派按钮
  191. function assignSupplierFn() {
  192. var rows = grid.getSelecteds();
  193. if (rows.length <= 0) {
  194. mini.alert("请选中一行记录!");
  195. return;
  196. }
  197. else {
  198. edit_id = "";
  199. for (var rec of rows) {
  200. edit_id += rec.ctid;
  201. edit_id += ",";
  202. }
  203. mini.get("assign_win").show("center", "top");
  204. $("#assign_win").find("input").val("");
  205. }
  206. }
  207. //保存指派供应商
  208. function saveAssignFn() {
  209. var parms = new Object();
  210. parms.ctid = edit_id;
  211. parms.SupplierName = mini.get("txtSupplierName").getValue();
  212. parms.tag = "waitingorder";
  213. if (parms.SupplierName == "") {
  214. alert("供应商不能为空!");
  215. return;
  216. }
  217. postAjax("assign_erp_supplier", parms, function (data) {
  218. mini.get("assign_win").hide();
  219. resultShow(data, "grid.reload();");
  220. });
  221. }
  222. function cancelAssignFn() {
  223. mini.get("assign_win").hide();
  224. }
  225. //退单按钮
  226. function returnOrderFn() {
  227. var rec = grid.getSelected();
  228. if (rec != undefined && rec != "") {
  229. $("#returnreason_id").val(rec.ctid);
  230. $("#returnreason_type").val("2");
  231. mini.get("returnreason_win").show();
  232. }
  233. else {
  234. mini.alert("请选中一行记录!");
  235. }
  236. }
  237. function returnOrder_CusFn() {
  238. var rec = grid.getSelected();
  239. if (rec != undefined && rec != "") {
  240. $("#returnreason_id").val(rec.ctid);
  241. $("#returnreason_type").val("1");
  242. mini.get("returnreason_win").show();
  243. }
  244. else {
  245. mini.alert("请选中一行记录!");
  246. }
  247. }
  248. function makeSupplierFn() {
  249. var rows = grid.getSelecteds();
  250. if (rows.length <= 0) {
  251. mini.alert("请选中一行记录!");
  252. return;
  253. }
  254. else {
  255. edit_id = "";
  256. for (var rec of rows) {
  257. edit_id += rec.ctid;
  258. edit_id += ",";
  259. }
  260. mini.get("make_win").show("center");
  261. $("#make_win").find("input").val("");
  262. }
  263. }
  264. //保存指派供应商
  265. function saveMakeAssignFn() {
  266. var parms = new Object();
  267. parms.ctid = edit_id;
  268. parms.SupplierName = mini.get("txtMakeSupplier").getText();
  269. if (parms.SupplierName == "") {
  270. alert("供应商不能为空!");
  271. return;
  272. }
  273. postAjax("assign_erp_makesupplier", parms, function (data) {
  274. mini.get("make_win").hide();
  275. resultShow(data, "grid.reload();");
  276. });
  277. }
  278. function largeImage(that) {
  279. var large_image = '<img src= ' + $(that).attr("src") + '></img>';
  280. $('.image_large').html($(large_image).css({
  281. display: "block",
  282. height: '60%',
  283. //width: '40%',
  284. position: "absolute",
  285. left: "50%",
  286. top: "50%",
  287. transform: "translate(-50%,-50%)",
  288. }, 500));
  289. $('.image_large').css("display", "block");
  290. }
  291. function hideImage(that) {
  292. $(that).css("display", "none");
  293. }
  294. function cancelMakeAssignFn() {
  295. mini.get("make_win").hide();
  296. }
  297. function viewCdrImg(id) {
  298. var rec = grid.getSelected();
  299. if (rec.OrderState < 5) {
  300. mini.alert("还没有上传文件,没有图片");
  301. return;
  302. }
  303. var finish = formatCommonDate(rec.FinishDesignTime);
  304. var yearmonth = finish.substring(0, 7);
  305. var monthUrl = yearmonth.replace("/", "");
  306. var url = cdrImgUrl + "/" + monthUrl + "/" + rec.seller_memo + ".png";
  307. mini.get("viewimg_win").show();
  308. $("#r_img").attr("src", url);
  309. }
  310. function viewPayImg(id) {
  311. var rec = grid.getSelected();
  312. var url = viewUrl + "/" + rec.PayProofImg;
  313. mini.get("payimg_win").show();
  314. $("#p_img").attr("src", url);
  315. }
  316. function actionRenderer(e) {
  317. var record = e.record;
  318. var id = record.ctid;
  319. var html = "";
  320. html += getGridBtn("view", "预览文件", "viewCdrImg('" + id + "')");
  321. if (record.PayProofImg != "") {
  322. html += getGridBtn("view", "付款图片", "viewPayImg('" + id + "')");
  323. }
  324. html += getGridBtn("edit", "查看报价", "GetToQuote('" + id + "')");
  325. if (record.authCount > 0) {
  326. html += getGridBtn("view", "授权下载", "downAuth('" + record.tid + "','" + record.ctid + "')");
  327. }
  328. html += getGridBtn("memo", record.IsJoint == 1 ? "取消拼版" : "拼版", "saveJointorder('" + record.ctid + "')");
  329. return html;
  330. }
  331. function saveJointorder(ctid) {
  332. postAjax("saveJointorder", { ctid }, function (data) {
  333. resultShow(data, "grid.reload();");
  334. });
  335. }
  336. //查询按钮
  337. function searchFn() {
  338. var form = new mini.Form("#ctl00_f_all");
  339. var data = form.getData(true, false);
  340. var s = data;
  341. //var s = mini.encode(data);
  342. //alert(s);
  343. //form.setIsValid(false);
  344. //console.log("565656565", data);
  345. grid.load({
  346. ctid: s.tid, shopname: s.shop, buyer_nick: s.ww, customer: s.customer, orderState: s.state, address: s.address,
  347. date1: s.date1, date2: s.date2, price1: s.price1, price2: s.price2, supplier: s.supplier,
  348. seller_memo: s.memo, backdate1: s.backdate1, backdate2: s.backdate2, backtype: s.backtype, otherMemo: s.otherMemo
  349. });
  350. }
  351. //清除查询内容
  352. function clearFn() {
  353. //$("#ctl00_f_all").find("input").val("");
  354. var form = new mini.Form("#ctl00_f_all");
  355. form.clear();
  356. mini.get("aSearchMonth").setChecked(false);
  357. mini.get("aSearchDay").setChecked(false);
  358. mini.get("aSearchWeek").setChecked(false);
  359. }
  360. function newPageSearchFn() {
  361. var form = new mini.Form("#ctl00_f_all");
  362. var data = form.getData(true, false);
  363. var s = data;
  364. var sData = JSON.stringify(data);
  365. var sendData = "sData=" + sData;
  366. if (parent != null) parent.openNewSearchTab("待下单列表", "EDelivery/WaitingOrder.aspx", sendData);
  367. }
  368. $(function () {
  369. if (openPageData != "") {
  370. var s = openPageData;
  371. grid.load({
  372. ctid: s.tid, shopname: s.shop, buyer_nick: s.ww, design: s.design, orderState: s.state,
  373. date1: s.date1, date2: s.date2, price1: s.price1, price2: s.price2, supplier: s.supplier,
  374. seller_memo: s.memo, backdate1: s.backdate1, backdate2: s.backdate2, backtype: s.backtype
  375. });
  376. var form = new mini.Form("#ctl00_f_all");
  377. if (form != undefined && form != null) {
  378. form.setData(s);
  379. }
  380. //$("#ic_chkNewPageSearch")[0].checked = true;
  381. }
  382. });
  383. function view_search() {
  384. var key = "";
  385. if ($("#txtKey").length > 0) {
  386. key = $("#txtKey").val();
  387. }
  388. grid.load({ key: key, type: $("#txtSearchType").val() });
  389. }
  390. function multiExport() {
  391. //defExport();
  392. var sels = grid.getSelecteds();
  393. if (sels.length > 0) {
  394. var ctids = "";
  395. for (var s = 0; s < sels.length; s++) {
  396. var supplier = sels[s].SupplierId;
  397. if (supplier == "" || supplier == 0) {
  398. mini.alert("未选择供应商!");
  399. return;
  400. }
  401. if (sels[s].SplitTag.length > 0) {
  402. ctids += sels[s].ctid;
  403. ctids += ",";
  404. }
  405. }
  406. if (ctids.length > 0) {
  407. ctids = ctids.substring(0, ctids.length - 1);
  408. postAjax("get_erp_islasthavesameorder", "ctid=" + ctids, function (data) {
  409. if (data.data.length <= 0)
  410. goMultiDownload(sels);
  411. else {
  412. mini.showMessageBox({
  413. title: "提示!",
  414. iconCls: "mini-messagebox-question",
  415. buttons: ["继续下载", "取消下载"],
  416. message: "请注意:拆分单车间不一致," + data.data + "!",
  417. callback: function (action) {
  418. if (action == "继续下载") {
  419. goMultiDownload(sels);
  420. }
  421. else if (action == "取消下载") {
  422. return;
  423. }
  424. }
  425. });
  426. }
  427. });
  428. }
  429. else {
  430. goMultiDownload(sels);
  431. }
  432. }
  433. else {
  434. mini.alert("请选择要下载的记录!");
  435. }
  436. }
  437. var fileDownArrays = [];
  438. function downloadFileFn() {
  439. //defExport();
  440. var sels = grid.getSelecteds();
  441. if (sels.length > 0) {
  442. var pArr = new Array();
  443. for (var i = 0; i < sels.length; i++) {
  444. if (sels[i].SupplierId != 64) {
  445. return mini.alert(sels[i].ctid + "不是彩印通订单");
  446. }
  447. if (sels[i].payment == 0) {
  448. return mini.alert(sels[i].ctid + "金额为0无法指派");
  449. }
  450. pArr.push(sels[i].ctid);
  451. }
  452. progressShow();
  453. fileDownArrays = pArr;
  454. /* noFileDownForMulProcess("http://localhost:54673/caiyintongload.aspx", "hexdata=" + pArr.join(",") + "&supplier=1" + "&userid=" + userId + "&cyt=1",*/
  455. noFileDownForMulProcess("http://183.250.143.56:8088/caiyintongload.aspx", "hexdata=" + pArr.join(",") + "&supplier=1" + "&userid=" + userId + "&cyt=1",
  456. function (smsg) {
  457. progressHide();
  458. mini.showMessageBox({
  459. title: "提示!",
  460. iconCls: "mini-messagebox-question",
  461. buttons: ["我知道了"],
  462. message: "请注意备注格式:" + smsg + "!",
  463. callback: function (action) {
  464. if (action == "我知道了") {
  465. grid.reload();
  466. }
  467. }
  468. });
  469. },
  470. function (emsg) {
  471. progressHide();
  472. mini.showMessageBox({
  473. title: "提示!",
  474. iconCls: "mini-messagebox-question",
  475. buttons: ["我知道了"],
  476. message: "请注意备注格式:" + smsg + "!",
  477. callback: function (action) {
  478. if (action == "我知道了") {
  479. grid.reload();
  480. }
  481. }
  482. });
  483. });
  484. postAjaxSync("orderPlaceInfo", { ctids: pArr.join(",") });
  485. /* postAjax("order_batch_downloads", "tid=" + fileDownArrays, function (data) {
  486. if (data.length > 0) {
  487. mini.showMessageBox({
  488. title: "提示",
  489. iconCls: "mini-messagebox-question",
  490. buttons: ["我知道了"],
  491. message: data,
  492. callback: function (action) {
  493. if (action == "我知道了") {
  494. resultShow(data);
  495. }
  496. }
  497. });
  498. }
  499. });*/
  500. } else {
  501. mini.alert("请选择要下载的记录!");
  502. }
  503. }
  504. var fileDownArrays4 = [];
  505. function downloadFileFn4() {
  506. //defExport();
  507. var form = new mini.Form("#ctl00_f_all");
  508. var data = form.getData(true, false);
  509. var s = data;
  510. grid.load({
  511. ctid: s.tid, shopname: s.shop, buyer_nick: s.ww, customer: s.customer, orderState: s.state, address: s.address,
  512. date1: s.date1, date2: s.date2, price1: s.price1, price2: s.price2, supplier: s.supplier,
  513. seller_memo: s.memo, backdate1: s.backdate1, backdate2: s.backdate2, backtype: s.backtype, pagesize: "1"
  514. });
  515. /* var sels = grid.getSelecteds();
  516. if (sels.length > 0) {
  517. var pArr = new Array();
  518. for (var i = 0; i < sels.length; i++) {
  519. pArr.push(sels[i].ctid);
  520. }
  521. fileDownArrays4 = pArr;
  522. postAjax("order_To_Supplier", "tid=" + fileDownArrays4, function (data) {
  523. if (data.length > 0) {
  524. resultShow(data);
  525. }
  526. });
  527. } else {
  528. mini.alert("请选择要下载的记录!");
  529. }*/
  530. }
  531. function goMultiDownload(sels) {
  532. var total = sels.length;
  533. var culTag = 0;
  534. var errMsg = "";
  535. var pArr = new Array();
  536. progressShow();
  537. for (var i = 0; i < sels.length; i++) {
  538. pArr.push(sels[i].ctid);
  539. //noFileDown(downUrl.replace("download", "copydownload"), "hexdata=" + sels[i].ctid + "&userid=" + userId);
  540. noFileDownForMulProcess(downUrl.replace("download", "copydownload"), "hexdata=" + sels[i].ctid + "&userid=" + userId,
  541. function (smsg) {
  542. culTag = culTag + 1;
  543. if (culTag >= total) {
  544. grid.reload();
  545. if (errMsg == "") {
  546. showToast("文件下载结束");
  547. }
  548. progressHide();
  549. }
  550. },
  551. function (emsg) {
  552. culTag = culTag + 1;
  553. if (emsg.length > 0) {
  554. errMsg += emsg;
  555. errMsg += ",";
  556. }
  557. if (culTag >= total) {
  558. grid.reload();
  559. if (errMsg.length > 0) {
  560. alert(errMsg);
  561. }
  562. progressHide();
  563. }
  564. });
  565. }
  566. postAjaxSync("orderPlaceInfo", { ctids: pArr.join(",") });
  567. //noFileDown(downUrl.replace("download", "copydownload"), "hexdata=" + pArr.join(",") + "&userid=" + userId);
  568. }
  569. function localMultiExport() {
  570. var sels = grid.getSelecteds();
  571. if (sels.length > 0) {
  572. var pArr = new Array();
  573. for (var i = 0; i < sels.length; i++) {
  574. pArr.push(sels[i].ctid);
  575. }
  576. console.log("downurl", downUrl);
  577. fileDown(downUrl, "hexdata=" + pArr.join(",") + "&supplier=1" + "&userid=" + userId);
  578. } else {
  579. mini.alert("请选择要下载的记录!");
  580. }
  581. }
  582. function testMultiExport() {
  583. var sels = grid.getSelecteds();
  584. if (sels.length > 0) {
  585. var total = sels.length;
  586. var culTag = 0;
  587. var errMsg = "";
  588. var pArr = new Array();
  589. progressShow();
  590. for (var i = 0; i < sels.length; i++) {
  591. //pArr.push(sels[i].ctid);
  592. noFileDownForMulProcess(downUrl.replace("download", "testcopydownload"), "hexdata=" + sels[i].ctid + "&userid=" + userId,
  593. function (smsg) {
  594. culTag = culTag + 1;
  595. grid.reload();
  596. progressShow();
  597. if (culTag >= total) {
  598. grid.reload();
  599. if (errMsg == "") {
  600. showToast("文件下载结束");
  601. }
  602. progressHide();
  603. }
  604. },
  605. function (emsg) {
  606. culTag = culTag + 1;
  607. if (emsg.length > 0) {
  608. errMsg += emsg;
  609. errMsg += ",";
  610. }
  611. if (culTag >= total) {
  612. grid.reload();
  613. if (errMsg.length > 0) {
  614. alert(errMsg);
  615. }
  616. progressHide();
  617. }
  618. });
  619. }
  620. } else {
  621. mini.alert("请选择要下载的记录!");
  622. }
  623. }
  624. function downAuth(ctid, tid) {
  625. postAjax("getCellFile", { tid: tid, ctid: ctid, type: "AUTH_FILE" }, function (data) {
  626. for (var i = 0; i < data.length; i++) {
  627. downAtta(data[i].url)
  628. }
  629. });
  630. }
  631. function downAtta(url) {
  632. var pdata = "url=" + url;
  633. var xhr = new XMLHttpRequest(); // 创建XMLHttpRequest实例
  634. xhr.open('POST', "../plug/uploadFileOss.aspx"); // 打开下载文件请求
  635. xhr.responseType = "blob";
  636. xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
  637. xhr.onloadstart = function () {
  638. };
  639. xhr.onprogress = function (event) {
  640. };
  641. xhr.onerror = function () {
  642. progressHide();
  643. }
  644. xhr.ontimeout = function () {
  645. progressHide();
  646. }
  647. xhr.onloadend = function () {
  648. if (xhr.status === 200) {
  649. try {
  650. let blob = xhr.response;
  651. let fileName = xhr.getResponseHeader("Content-Disposition").split('filename=')[1];
  652. fileName = decodeURIComponent(fileName);
  653. let url = URL.createObjectURL(blob);
  654. let a = document.createElement('a');
  655. a.href = url;
  656. a.download = fileName;
  657. document.body.appendChild(a);
  658. a.click();
  659. document.body.removeChild(a);
  660. window.URL.revokeObjectURL(url);
  661. } catch (e) {
  662. progressHide();
  663. }
  664. } else {
  665. }
  666. progressHide();
  667. };
  668. xhr.send(pdata); // 发送下载文件请求
  669. }