This commit is contained in:
linfso 2024-05-31 19:59:20 +08:00
parent 3cc084933b
commit 07c6cd750f
4 changed files with 60 additions and 39 deletions

View File

@ -168,26 +168,13 @@ export default class PdfUtils {
// console.log(+new Date() - startTime) // console.log(+new Date() - startTime)
} }
async getBlobUrl(base64Str) {
let dateArray=this.base64ToBuffer(base64Str);
const newPdf = await PDFDocument.create();
const pdfDocument = await PDFDocument.load(Buffer.from(dateArray));
const contentPages = await newPdf.copyPages(
pdfDocument,
pdfDocument.getPageIndices()
);
for (let page of contentPages) {
newPdf.addPage(page);
}
const uint8Array = await newPdf.save();
let mergeBuffer = Buffer.from(uint8Array);
const mergedPdfBlob = new Blob([mergeBuffer], {
type: "application/pdf",
});
return URL.createObjectURL(mergedPdfBlob);
getBlobUrl(base64Str) {
let blob = new Blob([base64Str],{type: 'application/pdf'});
let pdfurl = window.URL.createObjectURL(blob);
return pdfurl;
} }
async mergePdf3(pdfFileList, fileName,isNeedDown=false) { async mergePdf3(pdfFileList, fileName,isNeedDown=false) {
let pdfBuffers = []; let pdfBuffers = [];
pdfFileList.map((item) => { pdfFileList.map((item) => {

View File

@ -352,14 +352,8 @@
} }
else if(code == 200){ else if(code == 200){
console.log("=====222222==>");
console.log(pdfData);
loadingInstance.close(); loadingInstance.close();
let pdfUtils=new PdfUtils({}); let pdfUtils=new PdfUtils({});
let blobUrl= await pdfUtils.getBlobUrl(pdfData.file); let blobUrl= await pdfUtils.getBlobUrl(pdfData.file);
let pdfInfo={ let pdfInfo={
"billCode":pdfData.ydSn, "billCode":pdfData.ydSn,

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="app-container" > <div class="app-container" >
<el-form ref="form" size="mini" :model="form" :rules="rules" label-width="100px"> <el-form ref="form" size="mini" :model="form" :rules="rules" :disabled="this.form.lockFlag=='T'" label-width="100px">
<el-collapse v-model="activeNames"> <el-collapse v-model="activeNames">
<el-collapse-item title="" name="1"> <el-collapse-item title="" name="1">
<template slot="title"> <template slot="title">
@ -50,9 +50,11 @@
<el-form-item label="运单号" prop="billCode" > <el-form-item label="运单号" prop="billCode" >
<div style="display:inline-flex"> <div style="display:inline-flex">
<div> <div>
<el-input v-model="form.billCode" placeholder="单号输入后按回车" @keyup.enter.native="handleScanInput" style="font-weight:600;color:black" > <el-form :disabled="false" @submit.native.prevent>
<i slot="suffix" class="iconfont">&#xe656;</i> <el-input v-model="form.billCode" placeholder="单号输入后按回车" @keyup.enter.native="handleScanInput" :disabled="false" style="font-weight:600;color:black" >
</el-input> <i slot="suffix" class="iconfont">&#xe656;</i>
</el-input>
</el-form>
</div> </div>
<!-- <div style="padding-left:5px"> <el-checkbox style="font-size:400;margin-right:10px;font-size:10px" @change="checked=>handleBillCodeChange(checked)"><span style="font-size:10px">电子主单</span></el-checkbox></div> --> <!-- <div style="padding-left:5px"> <el-checkbox style="font-size:400;margin-right:10px;font-size:10px" @change="checked=>handleBillCodeChange(checked)"><span style="font-size:10px">电子主单</span></el-checkbox></div> -->
</div> </div>
@ -976,9 +978,9 @@ data() {
sendSiteCode: [ sendSiteCode: [
{ required: true, message: "发件网点代码不能为空", trigger: ["blur",'change'] } { required: true, message: "发件网点代码不能为空", trigger: ["blur",'change'] }
], ],
sendDate: [ // sendDate: [
{ required: true, message: "发货时间不能为空", trigger: "blur" } // { required: true, message: "发货时间不能为空", trigger: "blur" }
], // ],
dispatchUnderlingSiteCode: [ dispatchUnderlingSiteCode: [
{ required: true, message: "目的地网点代码不能为空", trigger: "blur" } { required: true, message: "目的地网点代码不能为空", trigger: "blur" }
], ],
@ -1285,6 +1287,22 @@ methods: {
if(this.form.packType){ if(this.form.packType){
this.form.packType=this.form.packType.split(","); this.form.packType=this.form.packType.split(",");
} }
console.log("==================xxx==>");
console.log(this.form.lockFlag);
if(this.form.lockFlag=="T"){
this.$confirm('已锁单,不允许修改!', '提示', {
confirmButtonText: '确认',
cancelButtonText: '返回',
type: 'warning'
}).then(() => {
}).catch(() => {
})
}
}); });
}else{ }else{
@ -1425,6 +1443,7 @@ methods: {
billCodeSub:null, billCodeSub:null,
blSpecialQuote:null, blSpecialQuote:null,
blSensitive:null, blSensitive:null,
lockFlag:null,
}; };
this.resetForm("form"); this.resetForm("form");
}, },
@ -1909,8 +1928,10 @@ methods: {
// 实时获取运单号 // 实时获取运单号
handleBillCodeChange(checked,item){ handleBillCodeChange(checked,item){
if(checked){ if(checked){
realMatchWaybill().then(response => { let useSiteCode=this.form.sendSiteCode;
realMatchWaybill(useSiteCode).then(response => {
this.form.billCode=response.data; this.form.billCode=response.data;
this.initGetTotalAvailablePag(this.form.sendSiteCode);
}); });
}else{ }else{
this.form.billCode="" this.form.billCode=""

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="app-container" > <div class="app-container" >
<el-form ref="form" size="mini" :model="form" :rules="rules" label-width="100px"> <el-form ref="form" size="mini" :model="form" :rules="rules" :disabled="this.form.lockFlag=='T'" label-width="100px">
<el-collapse v-model="activeNames"> <el-collapse v-model="activeNames">
<el-collapse-item title="" name="1"> <el-collapse-item title="" name="1">
<template slot="title"> <template slot="title">
@ -50,9 +50,11 @@
<el-form-item label="运单号" prop="billCode" > <el-form-item label="运单号" prop="billCode" >
<div style="display:inline-flex"> <div style="display:inline-flex">
<div> <div>
<el-input v-model="form.billCode" placeholder="单号输入后按回车" @keyup.enter.native="handleScanInput" style="font-weight:600;color:black" > <el-form :disabled="false" @submit.native.prevent>
<i slot="suffix" class="iconfont">&#xe656;</i> <el-input v-model="form.billCode" placeholder="单号输入后按回车" @keyup.enter.native="handleScanInput" :disabled="false" style="font-weight:600;color:black" >
</el-input> <i slot="suffix" class="iconfont">&#xe656;</i>
</el-input>
</el-form>
</div> </div>
<!-- <div style="padding-left:5px"> <el-checkbox style="font-size:400;margin-right:10px;font-size:10px" @change="checked=>handleBillCodeChange(checked)"><span style="font-size:10px">电子主单</span></el-checkbox></div> --> <!-- <div style="padding-left:5px"> <el-checkbox style="font-size:400;margin-right:10px;font-size:10px" @change="checked=>handleBillCodeChange(checked)"><span style="font-size:10px">电子主单</span></el-checkbox></div> -->
</div> </div>
@ -976,9 +978,9 @@ data() {
sendSiteCode: [ sendSiteCode: [
{ required: true, message: "发件网点代码不能为空", trigger: ["blur",'change'] } { required: true, message: "发件网点代码不能为空", trigger: ["blur",'change'] }
], ],
sendDate: [ // sendDate: [
{ required: true, message: "发货时间不能为空", trigger: "blur" } // { required: true, message: "发货时间不能为空", trigger: "blur" }
], // ],
dispatchUnderlingSiteCode: [ dispatchUnderlingSiteCode: [
{ required: true, message: "目的地网点代码不能为空", trigger: "blur" } { required: true, message: "目的地网点代码不能为空", trigger: "blur" }
], ],
@ -1285,6 +1287,22 @@ methods: {
if(this.form.packType){ if(this.form.packType){
this.form.packType=this.form.packType.split(","); this.form.packType=this.form.packType.split(",");
} }
console.log("==================xxx==>");
console.log(this.form.lockFlag);
if(this.form.lockFlag=="T"){
this.$confirm('已锁单,不允许修改!', '提示', {
confirmButtonText: '确认',
cancelButtonText: '返回',
type: 'warning'
}).then(() => {
}).catch(() => {
})
}
}); });
}else{ }else{
@ -1425,6 +1443,7 @@ methods: {
billCodeSub:null, billCodeSub:null,
blSpecialQuote:null, blSpecialQuote:null,
blSensitive:null, blSensitive:null,
lockFlag:null,
}; };
this.resetForm("form"); this.resetForm("form");
}, },