diff --git a/src/components/XdTextareaInput/index.vue b/src/components/XdTextareaInput/index.vue index 6992a083..e2ff1a6f 100644 --- a/src/components/XdTextareaInput/index.vue +++ b/src/components/XdTextareaInput/index.vue @@ -46,7 +46,7 @@ export default { }, methods: { onClear(){ - this.svalue=''; + this.svalue=null; this.$emit("input", this.svalue); this.dispatch('ElFormItem', 'el.form.blur'); }, diff --git a/src/utils/TanexPrinterSdk.js b/src/utils/TanexPrinterSdk.js index befe467f..38f58ddf 100644 --- a/src/utils/TanexPrinterSdk.js +++ b/src/utils/TanexPrinterSdk.js @@ -165,7 +165,7 @@ class TanexPrinterSdk { } clearTimeout(this.recievePdfFileTimer); - }, 60000) + }, 6000) } } @@ -223,7 +223,7 @@ class TanexPrinterSdk { this.sendPdfFileListCount = orderList.length; printCmd['Data']=printData - console.log(JSON.stringify(printCmd)); + // console.log(JSON.stringify(printCmd)); this.send(JSON.stringify(printCmd),null); } } @@ -346,7 +346,6 @@ class TanexPrinterSdk { } else if(msg["CMD"]=='batchGetPDF'){ this.innerBatchGetPDF(msg) - } @@ -406,8 +405,8 @@ class TanexPrinterSdk { } innerBatchGetPDF(msg){ - console.log("innerBatchGetPDF") - console.log(msg) + // console.log("innerBatchGetPDF") + // console.log(msg) // 有出错,停止接收数据 if(msg.Status!='2'){ clearTimeout(this.recievePdfFileTimer); @@ -455,7 +454,7 @@ class TanexPrinterSdk { }) } - console.log("文件已接收完成"); + // console.log("文件已接收完成"); return; } diff --git a/src/utils/pdfUtils.js b/src/utils/pdfUtils.js index e463e2cf..dc1b3cc3 100644 --- a/src/utils/pdfUtils.js +++ b/src/utils/pdfUtils.js @@ -169,7 +169,6 @@ export default class PdfUtils { } async mergePdf3(pdfFileList, fileName,isNeedDown=false) { - let startTime = +new Date() let pdfBuffers = []; pdfFileList.map((item) => { let dateArray=this.base64ToBuffer(item); @@ -199,8 +198,6 @@ export default class PdfUtils { if (typeof link.download === 'undefined') { link.setAttribute('target', '_blank') } - // document.body.appendChild(link); - // link.click(); document.body.appendChild(link) link.click() document.body.removeChild(link) @@ -210,7 +207,6 @@ export default class PdfUtils { }); return URL.createObjectURL(mergedPdfBlob);; } - console.log(+new Date() - startTime) } downloadBase64(base64Str,fileName) { let result = base64Str.replace(/[\r\n]/g, ""); @@ -231,7 +227,6 @@ export default class PdfUtils { fileTobase64(file) { let reader = new FileReader(); reader.readAsDataURL(file) - console.log(reader) } diff --git a/src/views/emis/EmisBaseTools/EmisBrandPicker.vue b/src/views/emis/EmisBaseTools/EmisBrandPicker.vue index c03a560d..1af5cd11 100644 --- a/src/views/emis/EmisBaseTools/EmisBrandPicker.vue +++ b/src/views/emis/EmisBaseTools/EmisBrandPicker.vue @@ -6,7 +6,7 @@ :placeholder="placeholder" style="width: 100%;" @change="onChange"> - + diff --git a/src/views/emis/EmisBaseTools/EmisGetNextSitePicker.vue b/src/views/emis/EmisBaseTools/EmisGetNextSitePicker.vue index 0ef7ba20..73fabf82 100644 --- a/src/views/emis/EmisBaseTools/EmisGetNextSitePicker.vue +++ b/src/views/emis/EmisBaseTools/EmisGetNextSitePicker.vue @@ -20,7 +20,7 @@ @clear="onClear" @visible-change="reverseArrow" > - + @@ -86,14 +86,6 @@ this.firstFlag = true; this.initData(); }, - // siteType(newVal, oldVal) { - // if(newVal!= oldVal ){ - // } - // }, - // countryCode(newVal, oldVal) { - // if(newVal!= oldVal ){ - // } - // } }, created() { // this.queryData(); diff --git a/src/views/emis/emisTransLine/index.vue b/src/views/emis/emisTransLine/index.vue index ba080054..b3bdac8e 100644 --- a/src/views/emis/emisTransLine/index.vue +++ b/src/views/emis/emisTransLine/index.vue @@ -125,7 +125,7 @@ diff --git a/src/views/emis/emisWaybill/waybillIsPrinted.vue b/src/views/emis/emisWaybill/waybillIsPrinted.vue index 998d8285..f1850fe5 100644 --- a/src/views/emis/emisWaybill/waybillIsPrinted.vue +++ b/src/views/emis/emisWaybill/waybillIsPrinted.vue @@ -2,28 +2,21 @@
-
- - 运单号 - 订单号 +
+ + 运单号 + 订单号
- + - -
- - 下单时间 - 录单时间 - -
+ @@ -52,9 +45,6 @@ />
- - - - - + + + + + + + + + + + - + - - + + - - + + - - -
- {{ printerStatusMessage }} - {{ printerStatusMessage }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 是 + 否 + + + + + + + + + + + + + + + -
打印 @@ -178,7 +238,7 @@ type="primary" plain size="mini" - :disabled="multiple||(printerStatus!=1)" + :disabled="multiple" @click="handlePrintPreview" >预览面单 @@ -187,49 +247,16 @@ type="primary" plain size="mini" - :disabled="multiple||(printerStatus!=1)" + :disabled="multiple" @click="handleDownPDF" >下载pdf -
-
模板:
-
- - - -
-
- +
- -
-
打印机:
-
- - - -
-
-
- - 下载打印组件 - - -
- -
-
@@ -460,12 +482,50 @@ import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker'; import CountryPicker0 from '@/views/emis/EmisBaseTools/CountryPicker.vue'; import CountryPicker1 from '@/views/emis/EmisBaseTools/CountryPicker.vue'; +import CountryPicker2 from '@/views/emis/EmisBaseTools/CountryPicker.vue'; +import ProvincePicker2 from '@/views/emis/EmisBaseTools/ProvincePicker.vue'; + +import TransLinePicker from '@/views/emis/EmisBaseTools/TransLinePicker.vue'; +import TransProductPicker from '@/views/emis/EmisBaseTools/TransProductPicker.vue'; + + +import PayeePicker from '@/views/emis/EmisBaseTools/PayeePicker.vue'; +import SalemanPicker from '@/views/emis/EmisBaseTools/SalemanPicker.vue'; + +import EmisUserSimplePicker0 from '@/views/emis/EmisBaseTools/EmisUserSimplePicker.vue'; +import EmisUserSimplePicker1 from '@/views/emis/EmisBaseTools/EmisUserSimplePicker.vue'; + +import EmisSiteSimplePicker1 from '@/views/emis/EmisBaseTools/EmisSiteSimplePicker.vue'; +import EmisSiteSimplePicker2 from '@/views/emis/EmisBaseTools/EmisSiteSimplePicker.vue'; + +import ProblemTypePicker from '@/views/emis/EmisBaseTools/ProblemTypePicker.vue'; + + import PdfViewer from '@/components/PdfViewer/index.vue'; import PdfUtils from '@/utils/pdfUtils' +import TanexPrinterPanel from '@/views/emis/EmisBaseTools/TanexPrinterPanel.vue'; + export default { name: "WaybillIsPrinted", - components: { PdfViewer,elDateAdvPicker,emisWaybillForm,CountryPicker0,CountryPicker1 }, + components: { + TanexPrinterPanel, + PdfViewer, + elDateAdvPicker, + emisWaybillForm, + CountryPicker1, + CountryPicker2, + ProvincePicker2, + TransLinePicker, + TransProductPicker, + PayeePicker, + SalemanPicker, + EmisUserSimplePicker0, + EmisUserSimplePicker1, + EmisSiteSimplePicker1, + EmisSiteSimplePicker2, + ProblemTypePicker + }, 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' @@ -493,19 +553,7 @@ export default { currentId:null, openForm: false, titleForm: "", - - openPdfView:false, - pdfUrl:null, - - - tanexPrinter:null, - printerDownUrl:null, - printerStatus:0, - printerStatusMessage:'打印组件未连接', - printerList:[], - printTplList:[], - selTplName:null, - selPrinterName:null, + queryOrderType:null, currentSelection:[], // 弹出展示层 @@ -691,7 +739,9 @@ export default { }, created() { this.getList(); - this.initTanexPrinterSdk(); + this.queryOrderType="1"; + + // this.initTanexPrinterSdk(); // 调整表格的高度,不允许滚动 this.$nextTick(function() { @@ -700,81 +750,9 @@ export default { this.tableHeight = window.innerHeight - tableH; }); }, - beforeDestroy(){ - this.tanexPrinter.close(); - }, + methods: { - initTanexPrinterSdk(){ - this.tanexPrinter = this.$tanexPrinter; - - this.getConfigKey("sys.printer.downurl").then(response => { - this.printerDownUrl = response.msg; - }); - - this.tanexPrinter.init(); - - this.tanexPrinter.setOnOpen(this.onPrinterOpen); - this.tanexPrinter.setOnClose(this.onPrinterClose); - this.tanexPrinter.setOnError(this.onPrinterError); - this.tanexPrinter.setOnGetPrinter(this.onGetPrinter); - this.tanexPrinter.setOnGetPrintTpl(this.onGetPrintTpl); - // this.tanexPrinter.setOnBatchGetPDF(this.onBatchGetPDF); - - }, - onBatchGetPDF(pdfList){ - console.log(pdfList); - const pdfDataList=[...pdfList]; - console.log(pdfDataList); - let pdfUtils=new PdfUtils({}); - // const loadingInstance = this.$loading({ - // text: '正在生成预览...' - // }) - pdfUtils.mergePdf3(pdfDataList, (new Date()).getTime()+".pdf",false ) - .then(url=>{ - // loadingInstance.close(); - // this.pdfUrl='/static/pdfjs/dist/web/printPreview.html?file=' +encodeURIComponent(url); - this.pdfUrl=url; - console.log(url) - this.openPdfView = true; - }) - .catch(error => { - console.log(error) - }); - - // pdfDataList.forEach(item => { - // pdfUtils.downloadBase64(item,(new Date()).getTime()+".pdf") - // }); - }, - onPrinterOpen(evt){ - console.log("onPrinterOpen") - this.printerStatus = 1; - this.printerStatusMessage="打印组件已连接,可以打印."; - - }, - onPrinterClose(evt){ - console.log("onPrinterClose") - this.printerStatus = 0; - this.printerStatusMessage="打印组件已断开!"; - }, - onPrinterError(evt){ - console.log("onPrinterError") - this.printerStatus = 0; - this.printerStatusMessage="打印组件已断开!"; - }, - - onGetPrinter(msg){ - console.log("onGetPrinter") - this.printerList=this.tanexPrinter.getPrinterTplList(); - this.selPrinterName=this.tanexPrinter.getDefaultPrinter(); - }, - onGetPrintTpl(msg){ - console.log("onGetPrintTpl") - this.printTplList=this.tanexPrinter.getPrintTplList(); - this.selTplName=this.printTplList[0].value; - }, - handleBatchPrint(){ - // 重要,设置为true才会把右上角X和取消区分开来 this.$confirm("确定打印?", "提示", { cancelButtonText: "不打印", confirmButtonText: "确定打印", @@ -786,86 +764,61 @@ export default { this.currentSelection.forEach(item=>{ orderList.push(item.billCode); }); - this.tanexPrinter.batchPrint(this.selTplName,this.selPrinterName,orderList) + this.$refs.tanexPrinter.batchPrint(orderList); }).catch(() => {}); }, - async handlePrintPreview(){ - let that =this; - let orderList=[]; + handlePrintPreview(){ + let orderList=[]; this.currentSelection.forEach(item=>{ orderList.push(item.billCode); }); - const loadingInstance = this.$loading({ - text: '正在生成预览...' - }) - this.tanexPrinter.batchGetPDF(this.selTplName,this.selPrinterName,orderList,function(pdfList,success,erroMsg){ - console.log(success); - console.log(erroMsg); - if(success){ - const pdfDataList=[...pdfList]; - console.log(pdfDataList); - let pdfUtils=new PdfUtils({}); - pdfUtils.mergePdf3(pdfDataList, (new Date()).getTime()+".pdf",false ) - .then(url=>{ - loadingInstance.close(); - // this.pdfUrl='/static/pdfjs/dist/web/printPreview.html?file=' +encodeURIComponent(url); - that.pdfUrl=url; - console.log(url) - that.openPdfView = true; - }) - .catch(error => { - console.log(error) - }); - }else{ - console.log(erroMsg); - // this.$modal.msgError("打印出错:"+erroMsg); - } - }); - }, - async handlePrintPreview_old(){ - let pdfUrlList=[]; - this.currentSelection.forEach(item=>{ - let url=this.tanexPrinter.getPdfUrl(item.billCode,this.selTplName,this.selPrinterName); - pdfUrlList.push(url) - }); - let pdfUtils=new PdfUtils({}); - const loadingInstance = this.$loading({ - text: '正在生成预览...' - }) - pdfUtils.mergePdf2(pdfUrlList, (new Date()).getTime()+".pdf" ) - .then(url=>{ - loadingInstance.close(); - // this.pdfUrl='/static/pdfjs/dist/web/printPreview.html?file=' +encodeURIComponent(url); - this.pdfUrl=url; - this.openPdfView = true; - }) - .catch(error => { - }); - + this.$refs.tanexPrinter.printPreview(orderList); }, handleDownPDF(){ - // let pdfUrlList=[]; - // this.currentSelection.forEach(item=>{ - // let url=this.tanexPrinter.getPdfUrl(item.billCode,this.selTplName,this.selPrinterName); - // pdfUrlList.push(url) - // }); - let pdfUrlList=[]; - this.currentSelection.forEach(item=>{ - let url=this.tanexPrinter.getPdfUrl(item.billCode,this.selTplName,this.selPrinterName); - pdfUrlList.push(url) + let orderList=[]; + this.currentSelection.forEach(item=>{ + orderList.push(item.billCode); }); - - let pdfUtils=new PdfUtils({}); - pdfUtils.mergePdf2(pdfUrlList, (new Date()).getTime()+".pdf" ,true); + this.$refs.tanexPrinter.downPDF(orderList); }, - - /** 查询运单列表列表 */ getList() { this.loading = true; + this.queryParams.params = {}; - listEmisWaybill(this.addDateRange(this.queryParams, this.dateTimeRange)).then(response => { + + if(this.queryParams.billCode){ + if(this.queryOrderType != "1"){ + this.queryParams.orderSn=this.queryParams.billCode+""; + this.queryParams.billCode=null; + }else{ + // 处理子单号 + let billArr = this.queryParams.billCode.split(","); + let newBillCodeStr=""; + billArr.forEach(item=>{ + if(item.startsWith("T")){ + let mainBillCode=item.substr(0,14); + newBillCodeStr=newBillCodeStr+mainBillCode+","; + }else{ + newBillCodeStr=newBillCodeStr+item+","; + } + }); + this.queryParams.billCode=newBillCodeStr; + + } + } + if(this.dateTimeRange&&this.dateTimeRange.length==2){ + let startDate = new Date(this.dateTimeRange[0]); + let endDate= new Date(this.dateTimeRange[1]); + startDate=dateToStr(startDate); + endDate=dateToStr(endDate) + + this.queryParams.params["beginSendDate"] = startDate; + this.queryParams.params["endSendDate"] = endDate; + } + + listEmisWaybill(this.queryParams).then(response => { this.emisWaybillList = response.rows; this.total = response.total; this.loading = false; @@ -997,20 +950,9 @@ export default { }; -