From 951688ab635a53625204582a69a4f2ffbc724016 Mon Sep 17 00:00:00 2001 From: linfso Date: Thu, 19 Sep 2024 01:01:54 +0800 Subject: [PATCH] md --- .../emis/emisSettleBill/panel/MoneyPanel.vue | 197 ++++++++++-------- .../emis/emisSettleBill/panel/MonthPanel.vue | 67 +++--- 2 files changed, 134 insertions(+), 130 deletions(-) diff --git a/src/views/emis/emisSettleBill/panel/MoneyPanel.vue b/src/views/emis/emisSettleBill/panel/MoneyPanel.vue index 0fe180ae..e04cc4d4 100644 --- a/src/views/emis/emisSettleBill/panel/MoneyPanel.vue +++ b/src/views/emis/emisSettleBill/panel/MoneyPanel.vue @@ -75,6 +75,8 @@ slot-scope="slotProps" :height="(slotProps.contentHeight-60)+'px'" + ref="refTable" + v-loading="loading" border size="mini" @@ -115,7 +117,7 @@ >删除 - + { this.emisSettleBillList = response.rows; this.total = response.total; @@ -544,103 +551,117 @@ export default { }, /** 导出按钮操作 */ handleExport() { - // this.download('emis/emisSettleBill/export', { - // ...this.queryParams - // }, `emisSettleBill_${new Date().getTime()}.xlsx`) - const loadingInstance = this.$loading({ + const loadingInstance = this.$loading({ text: '正在导出...' - }) + }) + if(this.selectionList&&this.selectionList.length>0){ + this.exportData(this.selectionList,loadingInstance); + } + else{ - var qParam = {...this.queryParams}; - qParam.pageNum=1; - qParam.pageSize=5000; + this.initQueryParams(); - listEmisSettleBill(this.addDateRange(qParam, this.dateTimeRange)).then(response => { - this.downloadLoading = false - if (response.code === 200) { + let qExportParam={...this.queryParams}; + qExportParam=this.addDateRange(qExportParam, this.dateTimeRange,'createTime') + qExportParam.pageNum=1; + qExportParam.pageSize=20000; - const curList = response.rows - import('@/vendor/Export2Excel').then(excel => { - - const tHeader = ['id','总结算账单编号','结算账单名称','结算账单类型','结算开始时间','结算结束时间','账单月份','应收款金额','已收款金额','月结编号','客户编码','客户名称','结算站点代码','结算站点名称','理赔金额','折让金额','抵扣金额','其他金额','理赔原因','折让原因','抵扣原因','其他原因','开票状态','付款状态','总票数','总件数','总重量','未结数量','合计金额','退款数量','退款金额','财务确认状态','财务确认日期','财务确认站点','财务确认人','站点确认状态','财务确认备注','站点确认日期','站点确认人','网点确认备注','备注','删除标志(0代表存在','创建者','创建时间','更新者','更新时间','创建站点','更新站点',]; - const filterVal = ['id','settleBillNo','settleBillName','settleType','settleStartDate','settleEndDate','billMonth','recMoney','recedMoney','custNo','customerCode','customerName','siteCode','siteName','satisfyMoney','allowanceMoney','deductionMoney','otherMoney','satisfyReason','allowanceReason','deductionReason','otherReason','openBillStatus','paymentStatus','sendPieceSum','pieceNumber','feeWeight','uncollectedAmount','sendMoneySum','refundAmount','refundMoney','blConfirm','confirmDate','confirmSite','confirmManCode','blSiteConfirm','confirmNote','siteConfirmDate','siteConfirmManCode','siteConfirmNote','remark','delFlag','createBy','createTime','updateBy','updateTime','createSite','updateSite',]; - const data = this.formatJson(filterVal, curList, response.rows) - axios({ - method: "get", - url: this.templateFile, - responseType: "arraybuffer", - }).then(response =>{ - - - console.log("==this.templateFile=>",this.templateFile); - console.log("==xxxx=>",response); - - excel.export_json_to_excel_by_tpl({ - tplData:response, - header: tHeader, - data, - filename: '账单', - autoWidth: true - }) - - - }).catch(error => console.log(error)) - - - loadingInstance.close() - }) - } - }); + listEmisSettleBill(qExportParam).then(response => { + if (response.code === 200) { + this.exportData(response.rows,loadingInstance); + } + }); + } }, - /** 导出按钮操作 */ - handleExport_old() { - // this.download('emis/emisSettleBill/export', { - // ...this.queryParams - // }, `emisSettleBill_${new Date().getTime()}.xlsx`) - const loadingInstance = this.$loading({ - text: '正在导出...' + exportData(selData,loadingInstance){ + const curList =selData + import('@/vendor/Export2Excel').then(excel => { + const exportParam=this.$refs.refTable.getExportParam(); + const tHeader = exportParam.header; + const filterVal = exportParam.filter; + const data = this.formatJson(filterVal, curList, selData) + excel.export_json_to_excel({ + header: tHeader, + data, + filename: '账单列表', + autoWidth: true }) - var qParam = {...this.queryParams}; - qParam.pageNum=1; - qParam.pageSize=5000; - - listEmisSettleBill(this.addDateRange(qParam, this.dateTimeRange)).then(response => { - this.downloadLoading = false - if (response.code === 200) { - - // const curList = response.rows - // import('@/vendor/Export2Excel').then(excel => { - // const tHeader = ['id','总结算账单编号','结算账单名称','结算账单类型','结算开始时间','结算结束时间','账单月份','应收款金额','已收款金额','月结编号','客户编码','客户名称','结算站点代码','结算站点名称','理赔金额','折让金额','抵扣金额','其他金额','理赔原因','折让原因','抵扣原因','其他原因','开票状态','付款状态','总票数','总件数','总重量','未结数量','合计金额','退款数量','退款金额','财务确认状态','财务确认日期','财务确认站点','财务确认人','站点确认状态','财务确认备注','站点确认日期','站点确认人','网点确认备注','备注','删除标志(0代表存在','创建者','创建时间','更新者','更新时间','创建站点','更新站点',]; - // const filterVal = ['id','settleBillNo','settleBillName','settleType','settleStartDate','settleEndDate','billMonth','recMoney','recedMoney','custNo','customerCode','customerName','siteCode','siteName','satisfyMoney','allowanceMoney','deductionMoney','otherMoney','satisfyReason','allowanceReason','deductionReason','otherReason','openBillStatus','paymentStatus','sendPieceSum','pieceNumber','feeWeight','uncollectedAmount','sendMoneySum','refundAmount','refundMoney','blConfirm','confirmDate','confirmSite','confirmManCode','blSiteConfirm','confirmNote','siteConfirmDate','siteConfirmManCode','siteConfirmNote','remark','delFlag','createBy','createTime','updateBy','updateTime','createSite','updateSite',]; - // const data = this.formatJson(filterVal, curList, response.rows) - // excel.export_json_to_excel({ - // header: tHeader, - // data, - // filename: '结算总账单', - // autoWidth: true - // }) - // loadingInstance.close() - // }) - } - }); + loadingInstance.close() + }) }, formatJson(filterVal, jsonData, resData) { let index = 0 return jsonData.map(v => filterVal.map(j => { + if (j === 'index') { return ++index } - if (j === 'status') { - var statusStr='xxx' - if(v[j] == 10){ - statusStr='xxx' + if (j === 'kjlx') { + return v['sendSiteName']+'--'+v['dispatchUnderlingSiteName']; + } + if (j === 'fjr') { + return v['sendName']+'--'+v['receiveName']; + } + if (j === 'custName') { + let paymentType=v['paymentType']; + if(paymentType==2 || paymentType==4 || paymentType==5 ){ + return v['custName']; + }else{ + return ""; } - return statusStr; + } + + if (j === 'sendMobile') { + return ""; + } + if (j === 'paymentStatus') { + return this.selectDictLabel(this.dict.type.emis_payment_status,v[j]); + } + + if (j === 'pickupMethod') { + return this.selectDictLabel(this.dict.type.emis_qujian_fangshi,v[j]); + } + if (j === 'customsEclaration') { + return this.selectDictLabel(this.dict.type.emis_declare_mode,v[j]); + } + if (j === 'customsClear') { + return this.selectDictLabel(this.dict.type.emis_customs_clear,v[j]); + } + if (j === 'packType') { + return this.selectDictLabels(this.dict.type.emis_tab_packing_type,v[j]); + } + if (j === 'openBillStatus') { + if(v[j] == 0){ + return '未开票'; + } + else if(v[j] == 1){ + return '已开票'; + } + else if(v[j] == 2){ + return '部分开票'; + } + else if(v[j] == 3){ + return '不开票'; + } + else{ + return '/'; + } + } + if (j === 'chargeStatus') { + if(v[j] == 0){ + return '未核销'; + }else{ + return '已核销'; + } + } + if (j === 'paymentType') { + return this.selectDictLabel(this.dict.type.emis_payment_type,v[j]); } return v[j] })) }, + /** 列索引函数 */ getIndex($index) { return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1 diff --git a/src/views/emis/emisSettleBill/panel/MonthPanel.vue b/src/views/emis/emisSettleBill/panel/MonthPanel.vue index 4c23640a..2b5ac914 100644 --- a/src/views/emis/emisSettleBill/panel/MonthPanel.vue +++ b/src/views/emis/emisSettleBill/panel/MonthPanel.vue @@ -75,6 +75,8 @@ slot-scope="slotProps" :height="(slotProps.contentHeight-60)+'px'" + ref="refTable" + v-loading="loading" border size="mini" @@ -226,7 +228,9 @@ import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker'; export default { name: "MoneyPanel", components: { MergeBillForm,elDateAdvPicker,PayeePicker,SalemanPicker,EmisMonthpayAccountPicker }, - dicts: [ + dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear', + 'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type', + 'emis_calc_fee_type','emis_print_type','emis_payment_status','emis_waybill_status','emis_tab_dispatch_mode' ], data() { return { @@ -579,7 +583,7 @@ export default { excel.export_json_to_excel({ header: tHeader, data, - filename: '寄件运单列表', + filename: '账单列表', autoWidth: true }) loadingInstance.close() @@ -626,33 +630,28 @@ export default { if (j === 'packType') { return this.selectDictLabels(this.dict.type.emis_tab_packing_type,v[j]); } - - if (j === 'dispatchMethod') { - if(v[j] == 1){ - return '派送'; - }else{ - return '自提'; + if (j === 'openBillStatus') { + if(v[j] == 0){ + return '未开票'; + } + else if(v[j] == 1){ + return '已开票'; + } + else if(v[j] == 2){ + return '部分开票'; + } + else if(v[j] == 3){ + return '不开票'; + } + else{ + return '/'; } } - if (j === 'blMessage') { - if(v[j] == 1){ - return '发送'; + if (j === 'chargeStatus') { + if(v[j] == 0){ + return '未核销'; }else{ - return '不发送'; - } - } - if (j === 'blAcceptMessage') { - if(v[j] == 1){ - return '发送'; - }else{ - return '不发送'; - } - } - if (j === 'blSign') { - if(v[j] == 1){ - return '已签收'; - }else{ - return '未签收'; + return '已核销'; } } if (j === 'paymentType') { @@ -662,22 +661,6 @@ export default { })) }, - formatJson(filterVal, jsonData, resData) { - let index = 0 - return jsonData.map(v => filterVal.map(j => { - if (j === 'index') { - return ++index - } - if (j === 'status') { - var statusStr='xxx' - if(v[j] == 10){ - statusStr='xxx' - } - return statusStr; - } - return v[j] - })) - }, /** 列索引函数 */ getIndex($index) { return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1