WaitingOrder.js 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729
  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. return html;
  329. }
  330. //查询按钮
  331. function searchFn() {
  332. var form = new mini.Form("#ctl00_f_all");
  333. var data = form.getData(true, false);
  334. var s = data;
  335. //var s = mini.encode(data);
  336. //alert(s);
  337. //form.setIsValid(false);
  338. //console.log("565656565", data);
  339. grid.load({
  340. ctid: s.tid, shopname: s.shop, buyer_nick: s.ww, customer: s.customer, orderState: s.state, address: s.address,
  341. date1: s.date1, date2: s.date2, price1: s.price1, price2: s.price2, supplier: s.supplier,
  342. seller_memo: s.memo, backdate1: s.backdate1, backdate2: s.backdate2, backtype: s.backtype, otherMemo: s.otherMemo
  343. });
  344. }
  345. //清除查询内容
  346. function clearFn() {
  347. //$("#ctl00_f_all").find("input").val("");
  348. var form = new mini.Form("#ctl00_f_all");
  349. form.clear();
  350. mini.get("aSearchMonth").setChecked(false);
  351. mini.get("aSearchDay").setChecked(false);
  352. mini.get("aSearchWeek").setChecked(false);
  353. }
  354. function newPageSearchFn() {
  355. var form = new mini.Form("#ctl00_f_all");
  356. var data = form.getData(true, false);
  357. var s = data;
  358. var sData = JSON.stringify(data);
  359. var sendData = "sData=" + sData;
  360. if (parent != null) parent.openNewSearchTab("待下单列表", "EDelivery/WaitingOrder.aspx", sendData);
  361. }
  362. $(function () {
  363. if (openPageData != "") {
  364. var s = openPageData;
  365. grid.load({
  366. ctid: s.tid, shopname: s.shop, buyer_nick: s.ww, design: s.design, orderState: s.state,
  367. date1: s.date1, date2: s.date2, price1: s.price1, price2: s.price2, supplier: s.supplier,
  368. seller_memo: s.memo, backdate1: s.backdate1, backdate2: s.backdate2, backtype: s.backtype
  369. });
  370. var form = new mini.Form("#ctl00_f_all");
  371. if (form != undefined && form != null) {
  372. form.setData(s);
  373. }
  374. //$("#ic_chkNewPageSearch")[0].checked = true;
  375. }
  376. });
  377. function view_search() {
  378. var key = "";
  379. if ($("#txtKey").length > 0) {
  380. key = $("#txtKey").val();
  381. }
  382. grid.load({ key: key, type: $("#txtSearchType").val() });
  383. }
  384. function multiExport() {
  385. //defExport();
  386. var sels = grid.getSelecteds();
  387. if (sels.length > 0) {
  388. var ctids = "";
  389. for (var s = 0; s < sels.length; s++) {
  390. var supplier = sels[s].SupplierId;
  391. if (supplier == "" || supplier == 0) {
  392. mini.alert("未选择供应商!");
  393. return;
  394. }
  395. if (sels[s].SplitTag.length > 0) {
  396. ctids += sels[s].ctid;
  397. ctids += ",";
  398. }
  399. }
  400. if (ctids.length > 0) {
  401. ctids = ctids.substring(0, ctids.length - 1);
  402. postAjax("get_erp_islasthavesameorder", "ctid=" + ctids, function (data) {
  403. if (data.data.length <= 0)
  404. goMultiDownload(sels);
  405. else {
  406. mini.showMessageBox({
  407. title: "提示!",
  408. iconCls: "mini-messagebox-question",
  409. buttons: ["继续下载", "取消下载"],
  410. message: "请注意:拆分单车间不一致," + data.data + "!",
  411. callback: function (action) {
  412. if (action == "继续下载") {
  413. goMultiDownload(sels);
  414. }
  415. else if (action == "取消下载") {
  416. return;
  417. }
  418. }
  419. });
  420. }
  421. });
  422. }
  423. else {
  424. goMultiDownload(sels);
  425. }
  426. }
  427. else {
  428. mini.alert("请选择要下载的记录!");
  429. }
  430. }
  431. var fileDownArrays = [];
  432. function downloadFileFn() {
  433. //defExport();
  434. var sels = grid.getSelecteds();
  435. if (sels.length > 0) {
  436. var pArr = new Array();
  437. for (var i = 0; i < sels.length; i++) {
  438. if (sels[i].SupplierId != 64) {
  439. return mini.alert(sels[i].ctid + "不是彩印通订单");
  440. }
  441. if (sels[i].payment == 0) {
  442. return mini.alert(sels[i].ctid + "金额为0无法指派");
  443. }
  444. pArr.push(sels[i].ctid);
  445. }
  446. progressShow();
  447. fileDownArrays = pArr;
  448. /* noFileDownForMulProcess("http://localhost:54673/caiyintongload.aspx", "hexdata=" + pArr.join(",") + "&supplier=1" + "&userid=" + userId + "&cyt=1",*/
  449. noFileDownForMulProcess("http://183.250.143.56:8088/caiyintongload.aspx", "hexdata=" + pArr.join(",") + "&supplier=1" + "&userid=" + userId + "&cyt=1",
  450. function (smsg) {
  451. progressHide();
  452. mini.showMessageBox({
  453. title: "提示!",
  454. iconCls: "mini-messagebox-question",
  455. buttons: ["我知道了"],
  456. message: "请注意备注格式:" + smsg + "!",
  457. callback: function (action) {
  458. if (action == "我知道了") {
  459. grid.reload();
  460. }
  461. }
  462. });
  463. },
  464. function (emsg) {
  465. progressHide();
  466. mini.showMessageBox({
  467. title: "提示!",
  468. iconCls: "mini-messagebox-question",
  469. buttons: ["我知道了"],
  470. message: "请注意备注格式:" + smsg + "!",
  471. callback: function (action) {
  472. if (action == "我知道了") {
  473. grid.reload();
  474. }
  475. }
  476. });
  477. });
  478. postAjaxSync("orderPlaceInfo", { ctids: pArr.join(",") });
  479. /* postAjax("order_batch_downloads", "tid=" + fileDownArrays, function (data) {
  480. if (data.length > 0) {
  481. mini.showMessageBox({
  482. title: "提示",
  483. iconCls: "mini-messagebox-question",
  484. buttons: ["我知道了"],
  485. message: data,
  486. callback: function (action) {
  487. if (action == "我知道了") {
  488. resultShow(data);
  489. }
  490. }
  491. });
  492. }
  493. });*/
  494. } else {
  495. mini.alert("请选择要下载的记录!");
  496. }
  497. }
  498. var fileDownArrays4 = [];
  499. function downloadFileFn4() {
  500. //defExport();
  501. var form = new mini.Form("#ctl00_f_all");
  502. var data = form.getData(true, false);
  503. var s = data;
  504. grid.load({
  505. ctid: s.tid, shopname: s.shop, buyer_nick: s.ww, customer: s.customer, orderState: s.state, address: s.address,
  506. date1: s.date1, date2: s.date2, price1: s.price1, price2: s.price2, supplier: s.supplier,
  507. seller_memo: s.memo, backdate1: s.backdate1, backdate2: s.backdate2, backtype: s.backtype, pagesize: "1"
  508. });
  509. /* var sels = grid.getSelecteds();
  510. if (sels.length > 0) {
  511. var pArr = new Array();
  512. for (var i = 0; i < sels.length; i++) {
  513. pArr.push(sels[i].ctid);
  514. }
  515. fileDownArrays4 = pArr;
  516. postAjax("order_To_Supplier", "tid=" + fileDownArrays4, function (data) {
  517. if (data.length > 0) {
  518. resultShow(data);
  519. }
  520. });
  521. } else {
  522. mini.alert("请选择要下载的记录!");
  523. }*/
  524. }
  525. function goMultiDownload(sels) {
  526. var total = sels.length;
  527. var culTag = 0;
  528. var errMsg = "";
  529. var pArr = new Array();
  530. progressShow();
  531. for (var i = 0; i < sels.length; i++) {
  532. pArr.push(sels[i].ctid);
  533. //noFileDown(downUrl.replace("download", "copydownload"), "hexdata=" + sels[i].ctid + "&userid=" + userId);
  534. noFileDownForMulProcess(downUrl.replace("download", "copydownload"), "hexdata=" + sels[i].ctid + "&userid=" + userId,
  535. function (smsg) {
  536. culTag = culTag + 1;
  537. if (culTag >= total) {
  538. grid.reload();
  539. if (errMsg == "") {
  540. showToast("文件下载结束");
  541. }
  542. progressHide();
  543. }
  544. },
  545. function (emsg) {
  546. culTag = culTag + 1;
  547. if (emsg.length > 0) {
  548. errMsg += emsg;
  549. errMsg += ",";
  550. }
  551. if (culTag >= total) {
  552. grid.reload();
  553. if (errMsg.length > 0) {
  554. alert(errMsg);
  555. }
  556. progressHide();
  557. }
  558. });
  559. }
  560. postAjaxSync("orderPlaceInfo", { ctids: pArr.join(",") });
  561. //noFileDown(downUrl.replace("download", "copydownload"), "hexdata=" + pArr.join(",") + "&userid=" + userId);
  562. }
  563. function localMultiExport() {
  564. var sels = grid.getSelecteds();
  565. if (sels.length > 0) {
  566. var pArr = new Array();
  567. for (var i = 0; i < sels.length; i++) {
  568. pArr.push(sels[i].ctid);
  569. }
  570. console.log("downurl", downUrl);
  571. fileDown(downUrl, "hexdata=" + pArr.join(",") + "&supplier=1" + "&userid=" + userId);
  572. } else {
  573. mini.alert("请选择要下载的记录!");
  574. }
  575. }
  576. function testMultiExport() {
  577. var sels = grid.getSelecteds();
  578. if (sels.length > 0) {
  579. var total = sels.length;
  580. var culTag = 0;
  581. var errMsg = "";
  582. var pArr = new Array();
  583. progressShow();
  584. for (var i = 0; i < sels.length; i++) {
  585. //pArr.push(sels[i].ctid);
  586. noFileDownForMulProcess(downUrl.replace("download", "testcopydownload"), "hexdata=" + sels[i].ctid + "&userid=" + userId,
  587. function (smsg) {
  588. culTag = culTag + 1;
  589. grid.reload();
  590. progressShow();
  591. if (culTag >= total) {
  592. grid.reload();
  593. if (errMsg == "") {
  594. showToast("文件下载结束");
  595. }
  596. progressHide();
  597. }
  598. },
  599. function (emsg) {
  600. culTag = culTag + 1;
  601. if (emsg.length > 0) {
  602. errMsg += emsg;
  603. errMsg += ",";
  604. }
  605. if (culTag >= total) {
  606. grid.reload();
  607. if (errMsg.length > 0) {
  608. alert(errMsg);
  609. }
  610. progressHide();
  611. }
  612. });
  613. }
  614. } else {
  615. mini.alert("请选择要下载的记录!");
  616. }
  617. }
  618. function downAuth(ctid, tid) {
  619. postAjax("getCellFile", { tid: tid, ctid: ctid, type: "AUTH_FILE" }, function (data) {
  620. for (var i = 0; i < data.length; i++) {
  621. downAtta(data[i].url)
  622. }
  623. });
  624. }
  625. function downAtta(url) {
  626. var pdata = "url=" + url;
  627. var xhr = new XMLHttpRequest(); // 创建XMLHttpRequest实例
  628. xhr.open('POST', "../plug/uploadFileOss.aspx"); // 打开下载文件请求
  629. xhr.responseType = "blob";
  630. xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
  631. xhr.onloadstart = function () {
  632. };
  633. xhr.onprogress = function (event) {
  634. };
  635. xhr.onerror = function () {
  636. progressHide();
  637. }
  638. xhr.ontimeout = function () {
  639. progressHide();
  640. }
  641. xhr.onloadend = function () {
  642. if (xhr.status === 200) {
  643. try {
  644. let blob = xhr.response;
  645. let fileName = xhr.getResponseHeader("Content-Disposition").split('filename=')[1];
  646. fileName = decodeURIComponent(fileName);
  647. let url = URL.createObjectURL(blob);
  648. let a = document.createElement('a');
  649. a.href = url;
  650. a.download = fileName;
  651. document.body.appendChild(a);
  652. a.click();
  653. document.body.removeChild(a);
  654. window.URL.revokeObjectURL(url);
  655. } catch (e) {
  656. progressHide();
  657. }
  658. } else {
  659. }
  660. progressHide();
  661. };
  662. xhr.send(pdata); // 发送下载文件请求
  663. }