| | |
| | | <head> |
| | | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| | | <title>éå®åºåºæç»æ¥è¡¨</title> |
| | | <meta name="renderer" content="webkit"> |
| | | <meta name="renderer" content="webkit" charset="UTF-8"> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> |
| | | <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all"> |
| | |
| | | <script src="../../../layuiadmin/PubCustom.js"></script> |
| | | <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script> |
| | | <script src="../../../layuiadmin/HideButton.js"></script> |
| | | <!--<script src="../../../layuiadmin/xlsx.full.min.js"></script>--> |
| | | <script src="https://cdn.bootcdn.net/ajax/libs/xlsx/0.18.5/xlsx.full.min.js"></script> |
| | | </head> |
| | | <body> |
| | | <div class="layui-fluid"> |
| | |
| | | data: { "ModRightNameCheck": ModRightNameCheck, "user": sessionStorage["HUserName"] }, |
| | | success: function (result) { |
| | | if (result.count == 1) { |
| | | var dataArray = []; |
| | | var HCusID = option.data[0]["HCusID"]; |
| | | var HPieceQtySum = 0; |
| | | var HQtySum = 0; |
| | | var HTaxMoneySum = 0; |
| | | for (var i = 0; i < option.data.length; i++) { |
| | | if (HCusID != option.data[i]["HCusID"]) { |
| | | dataArray.push({ "æ¥æ": "", "HCusID": "", "客æ·": "å计", "HMaterID": "", "ç©æåç§°": "", "ä»¶æ°": HPieceQtySum, "æ°é": HQtySum, "åä»·": "", "éé¢": HTaxMoneySum, "HEmpID": "", "ä¸å¡å": "" }); |
| | | dataArray.push({ "æ¥æ": "", "HCusID": "", "客æ·": "", "HMaterID": "", "ç©æåç§°": "", "ä»¶æ°": "", "æ°é": "", "åä»·": "", "éé¢": "", "HEmpID": "", "ä¸å¡å": "" }); |
| | | dataArray.push({ "æ¥æ": "", "HCusID": "", "客æ·": "", "HMaterID": "", "ç©æåç§°": "", "ä»¶æ°": "", "æ°é": "", "åä»·": "", "éé¢": "", "HEmpID": "", "ä¸å¡å": "" }); |
| | | dataArray.push({ "æ¥æ": "", "HCusID": "", "客æ·": "", "HMaterID": "", "ç©æåç§°": "", "ä»¶æ°": "", "æ°é": "", "åä»·": "", "éé¢": "", "HEmpID": "", "ä¸å¡å": "" }); |
| | | dataArray.push({ "æ¥æ": "", "HCusID": "", "客æ·": "客æ·", "HMaterID": "", "ç©æåç§°": "ç©æåç§°", "ä»¶æ°": "ä»¶æ°", "æ°é": "æ°é", "åä»·": "åä»·", "éé¢": "éé¢", "HEmpID": "", "ä¸å¡å": "ä¸å¡å" }); |
| | | HCusID = option.data[i]["HCusID"]; |
| | | HPieceQtySum = 0; |
| | | HQtySum = 0; |
| | | HTaxMoneySum = 0; |
| | | } |
| | | dataArray.push(option.data[i]); |
| | | |
| | | HPieceQtySum += option.data[i]["ä»¶æ°"] * 1; |
| | | HQtySum += option.data[i]["æ°é"] * 1; |
| | | HTaxMoneySum += option.data[i]["éé¢"] * 1; |
| | | } |
| | | |
| | | table.exportFile(ins.config.id, dataArray, "xls"); |
| | | exportAll(); |
| | | } else { |
| | | layer.alert("å½åæ¨¡åæ²¡æå¯¼åºæé!", { icon: 5 }); |
| | | } |
| | |
| | | return res; |
| | | } |
| | | //#endregion |
| | | |
| | | |
| | | |
| | | |
| | | //#region å¯¼åº |
| | | function oneTable(option) { |
| | | //è·åè¡¨å¤´æ°æ® |
| | | var colsList = []; |
| | | for (var i = 1; i < option.cols[0].length; i++) { |
| | | if (option.cols[0][i].hide != true) { |
| | | colsList.push(option.cols[0][i]); |
| | | } |
| | | } |
| | | //è·åè¡æ°æ® |
| | | var listData = []; //è·åè¡æ°æ® |
| | | var HCusID = option.data[0]["HCusID"]; //ç¨äºåºåä¸åå®¢æ· |
| | | var HPieceQtySum = 0; //ä»¶æ°å计 |
| | | var HQtySum = 0; //æ°éå计 |
| | | var HTaxMoneySum = 0; //éé¢å计 |
| | | for (var i = 0; i < option.data.length; i++) { |
| | | if (HCusID != option.data[i]["HCusID"]) { |
| | | var sumTemp = { "客æ·": "å计", "ç©æåç§°": "", "ä»¶æ°": HPieceQtySum, "æ°é": HQtySum, "åä»·": "", "éé¢": HTaxMoneySum, "ä¸å¡å": "" }; |
| | | var emptyTemp = { "客æ·": "", "ç©æåç§°": "", "ä»¶æ°": "", "æ°é": "", "åä»·": "", "éé¢": "", "ä¸å¡å": "" }; |
| | | var titleTemp = { "客æ·": "客æ·", "ç©æåç§°": "ç©æåç§°", "ä»¶æ°": "ä»¶æ°", "æ°é": "æ°é", "åä»·": "åä»·", "éé¢": "éé¢", "ä¸å¡å": "ä¸å¡å" }; |
| | | listData.push(sumTemp); |
| | | listData.push(emptyTemp); |
| | | listData.push(emptyTemp); |
| | | listData.push(titleTemp); |
| | | |
| | | //è®°å½æ°å®¢æ·çå
ç |
| | | HCusID = option.data[i]["HCusID"]; |
| | | |
| | | //åå§åä»¶æ°åè®¡ãæ°éå计ãéé¢å计 |
| | | HPieceQtySum = 0; |
| | | HQtySum = 0; |
| | | HTaxMoneySum = 0; |
| | | } |
| | | listData.push(option.data[i]); |
| | | |
| | | HPieceQtySum += option.data[i]["ä»¶æ°"] * 1; |
| | | HQtySum += option.data[i]["æ°é"] * 1; |
| | | HTaxMoneySum += option.data[i]["éé¢"] * 1; |
| | | } |
| | | |
| | | |
| | | //设置sheetä¸çæ°æ® |
| | | let news = [[]]; |
| | | for (var i = 0; i < colsList.length; i++) { |
| | | news[0].push(colsList[i].title); |
| | | } |
| | | for (var i = 0; i < listData.length; i++) { |
| | | news.push([listData[i].客æ·, listData[i].ç©æåç§°, listData[i].ä»¶æ°, listData[i].æ°é, listData[i].åä»·, listData[i].éé¢, listData[i].ä¸å¡å]); |
| | | } |
| | | |
| | | //å建sheet |
| | | const sheet = XLSX.utils.aoa_to_sheet(news); |
| | | return sheet; |
| | | } |
| | | function twoTable(option) { |
| | | //è·åè¡¨å¤´æ°æ® |
| | | var colsList = []; |
| | | for (var i = 1; i < option.cols[0].length; i++) { |
| | | if (option.cols[0][i].hide != true) { |
| | | colsList.push(option.cols[0][i]); |
| | | } |
| | | } |
| | | //è·åè¡æ°æ® |
| | | var listData = []; //è·åè¡æ°æ® |
| | | var HCusID = option.data[0]["HCusID"]; //ç¨äºåºåä¸åå®¢æ· |
| | | var HPieceQtySum = 0; //ä»¶æ°å计 |
| | | var HQtySum = 0; //æ°éå计 |
| | | var HTaxMoneySum = 0; //éé¢å计 |
| | | for (var i = 0; i < option.data.length; i++) { |
| | | if (HCusID != option.data[i]["HCusID"]) { |
| | | var sumTemp = { "客æ·": "å计", "ç©æåç§°": "", "ä»¶æ°": HPieceQtySum, "æ°é": HQtySum, "åä»·": "", "éé¢": HTaxMoneySum, "ä¸å¡å": "" }; |
| | | var emptyTemp = { "客æ·": "", "ç©æåç§°": "", "ä»¶æ°": "", "æ°é": "", "åä»·": "", "éé¢": "", "ä¸å¡å": "" }; |
| | | var titleTemp = { "客æ·": "客æ·", "ç©æåç§°": "ç©æåç§°", "ä»¶æ°": "ä»¶æ°", "æ°é": "æ°é", "åä»·": "åä»·", "éé¢": "éé¢", "ä¸å¡å": "ä¸å¡å" }; |
| | | listData.push(sumTemp); |
| | | listData.push(emptyTemp); |
| | | listData.push(emptyTemp); |
| | | listData.push(titleTemp); |
| | | |
| | | //è®°å½æ°å®¢æ·çå
ç |
| | | HCusID = option.data[i]["HCusID"]; |
| | | |
| | | //åå§åä»¶æ°åè®¡ãæ°éå计ãéé¢å计 |
| | | HPieceQtySum = 0; |
| | | HQtySum = 0; |
| | | HTaxMoneySum = 0; |
| | | } |
| | | listData.push(option.data[i]); |
| | | |
| | | HPieceQtySum += option.data[i]["ä»¶æ°"] * 1; |
| | | HQtySum += option.data[i]["æ°é"] * 1; |
| | | HTaxMoneySum += option.data[i]["éé¢"] * 1; |
| | | } |
| | | |
| | | |
| | | //设置sheetä¸çæ°æ® |
| | | let news = [[]]; |
| | | for (var i = 0; i < colsList.length; i++) { |
| | | news[0].push(colsList[i].title); |
| | | } |
| | | for (var i = 0; i < listData.length; i++) { |
| | | news.push([listData[i].客æ·, listData[i].ç©æåç§°, listData[i].ä»¶æ°, listData[i].æ°é, listData[i].åä»·, listData[i].éé¢, listData[i].ä¸å¡å]); |
| | | } |
| | | |
| | | //å建sheet |
| | | const sheet = XLSX.utils.aoa_to_sheet(news); |
| | | return sheet; |
| | | } |
| | | function exportAll() { |
| | | //è·åsheet |
| | | let sheet1 = oneTable(option); |
| | | let sheet2 = twoTable(option); |
| | | |
| | | //å建excelææ¡£ |
| | | const wb = XLSX.utils.book_new(); |
| | | XLSX.utils.book_append_sheet(wb, sheet1, "éç¾æ¯"); |
| | | XLSX.utils.book_append_sheet(wb, sheet2, "ç¾æ¯"); |
| | | const workbookBlob = workbook2blob(wb); |
| | | |
| | | // å¯¼åºæåçæ»è¡¨ |
| | | var ExcelName = "éå®åºåºæç»æ¥è¡¨" + Format(new Date(), "yyyy-MM-dd") + ".xlsx"; |
| | | openDownloadDialog(workbookBlob, ExcelName); |
| | | |
| | | |
| | | // å°blob对象 å建bloburl,ç¶åç¨aæ ç¾å®ç°å¼¹åºä¸è½½æ¡ |
| | | } |
| | | //#region 设置导åºåæ° |
| | | function workbook2blob(workbook) { |
| | | // çæexcelçé
置项 |
| | | var wopts = { |
| | | // è¦çæçæä»¶ç±»å |
| | | bookType: "xlsx", |
| | | // æ¯å¦çæShared String Table, 宿¹è§£éæ¯, 妿å¼å¯çæé度ä¼ä¸é, ä½å¨ä½çæ¬IOS设å¤ä¸ææ´å¥½çå
¼å®¹æ§ |
| | | bookSST: false, |
| | | type: "binary" |
| | | }; |
| | | var wbout = XLSX.write(workbook, wopts); |
| | | // å°å符串转ArrayBuffer |
| | | function s2ab(s) { |
| | | var buf = new ArrayBuffer(s.length); |
| | | var view = new Uint8Array(buf); |
| | | for (var i = 0; i !== s.length; ++i) view[i] = s.charCodeAt(i) & 0xff; |
| | | return buf; |
| | | } |
| | | let buf = s2ab(wbout); |
| | | var blob = new Blob([buf], { |
| | | type: "application/octet-stream" |
| | | }); |
| | | return blob; |
| | | } |
| | | //#endregion |
| | | //#region |
| | | function openDownloadDialog(blob, fileName) { |
| | | if (typeof blob === "object" && blob instanceof Blob) { |
| | | blob = URL.createObjectURL(blob); // å建blobå°å |
| | | } |
| | | var aLink = document.createElement("a"); |
| | | aLink.href = blob; |
| | | // HTML5addç屿§, æå®ä¿åæä»¶å, å¯ä»¥ä¸è¦åç¼, 注æ, ææ¶å |
| | | aLink.download = fileName || ""; |
| | | var event; |
| | | if (window.MouseEvent) event = new MouseEvent("click"); |
| | | // ç§»å¨ç«¯ |
| | | else { |
| | | event = document.createEvent("MouseEvents"); |
| | | event.initMouseEvent( |
| | | "click", |
| | | true, |
| | | false, |
| | | window, |
| | | 0, |
| | | 0, |
| | | 0, |
| | | 0, |
| | | 0, |
| | | false, |
| | | false, |
| | | false, |
| | | false, |
| | | 0, |
| | | null |
| | | ); |
| | | } |
| | | aLink.dispatchEvent(event); |
| | | } |
| | | //#endregion |
| | | //#endregion |
| | | |
| | | }); |
| | | |
| | | //#endregion |