签收图片上传

This commit is contained in:
wuteng 2026-04-10 16:12:50 +08:00
parent 9ef0863d24
commit a249d79330

View File

@ -1,11 +1,21 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form ref="form" size="mini" :model="form" label-width="80px"> <el-form ref="form" size="mini" :model="form" label-width="80px" @submit.native.prevent>
<!-- <SearchForm :ref="form" :model="picUrl" ref="queryForm" size="small" :maxShow="8" label-width="100px" v-show="showSearch" @search="getList" @reset="resetQuery"> --> <!-- <SearchForm :ref="form" :model="picUrl" ref="queryForm" size="small" :maxShow="8" label-width="100px" v-show="showSearch" @search="getList" @reset="resetQuery"> -->
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="8"> <el-col :span="24">
<el-form-item label="上传图片" prop="xxx" label-width="80px"> <el-form-item label="上传图片" prop="xxx" label-width="80px">
<ImageUpload ref="imageUpload" v-model="form.picUrl" :fileSize="1" :limit="80" @input="handleInput" ></ImageUpload> <ImageUpload ref="imageUpload" v-model="form.picUrl" :fileSize="1" :limit="80"></ImageUpload>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="运单号" prop="billCode" label-width="70px">
<span slot="label">
<span style="color: red">运单号</span>
</span>
<el-input v-model="form.billCode" clearable="" placeholder="单号输入后按回车" @keyup.enter.native="handleInput" >
<i slot="suffix" class="iconfont">&#xe656;</i>
</el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row > </el-row >
@ -50,7 +60,11 @@
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('运单编号')" align="center" prop="billCode" min-width="150" /> <el-table-column :label="$t('运单编号')" align="center" prop="billCode" min-width="150" />
<el-table-column :label="$t('图片URL')" align="center" prop="fileUrl" min-width="100" /> <el-table-column :label="$t('图片URL')" align="center" prop="fileUrl" min-width="100" >
<template slot-scope="scope">
<ImagePreview height="50px" v-for="pic in (scope.row.fileUrl||'').split(',')" :key="pic" :src="pic" ></ImagePreview>
</template>
</el-table-column>
<el-table-column :label="$t('上传网点')" align="center" prop="createSite" min-width="100" /> <el-table-column :label="$t('上传网点')" align="center" prop="createSite" min-width="100" />
<el-table-column :label="$t('上传人')" align="center" prop="createBy" min-width="100" /> <el-table-column :label="$t('上传人')" align="center" prop="createBy" min-width="100" />
<el-table-column :label="$t('大小')" align="center" prop="volumeWeight" min-width="100"> <el-table-column :label="$t('大小')" align="center" prop="volumeWeight" min-width="100">
@ -124,45 +138,46 @@ export default {
getList(){ getList(){
}, },
async handleInput(item, size){ async handleInput() {
if(item.trim() == ""){ if (this.form.billCode == "" || this.form.billCode == null) {
this.$modal.msgError("请先输入单号!");
return; return;
} }
let scList = item.trim().split(/[;\;\,\,\n]/)||[]; let billCode = this.form.billCode + '';
this.form.picUrl =[];
for(let s = 0; s<scList.length; s++){
let billCode = this.extractSubstring(scList[s]);
if(this.dataMap[billCode]) return;
let response = await getWaybillDetail(billCode) let response = await getWaybillDetail(billCode)
if(!response || response.code != 200){ if (!response || response.code != 200) {
this.$modal.msgError(response && response.msg || "未知错误"); this.$modal.msgError(response && response.msg || "未知错误");
this.form.picUrl =[]; this.form.picUrl = [];
return;
}
if (response.data.blFormalWaybill === "0") {
this.$modal.msgError("运单号无效");
this.form.picUrl = [];
return; return;
} }
let record = {}; let record = {};
record.billCode=billCode; record.billCode = billCode;
record.fileUrl=scList[s]; record.fileUrl=this.form.picUrl+'';
record.createSite=this.$store.getters.ownerSiteName; record.createSite = this.$store.getters.ownerSiteName;
record.createBy=this.$store.getters.empName; record.createBy = this.$store.getters.empName;
record.signManCode=this.$store.getters.empCode; record.signManCode = this.$store.getters.empCode;
record.createTime=getDateTimeToString(new Date()); record.createTime = getDateTimeToString(new Date());
record.remark = ""; record.remark = "";
record.fileName="签收底单"; record.fileName = "签收底单";
record.attachType="2"; record.attachType = "2";
record.dataFrom="pc"; record.dataFrom = "pc";
for(let name in size){ record.fileSiez=-1;
if(name.indexOf(billCode) > -1){ let indexBillCode = billCode;
record.fileSiez = parseFloat((size[name]/1024).toFixed(2)); this.dataMap[indexBillCode] = record;
break;
}
}
let indexBillCode=billCode;
this.dataMap[indexBillCode]=record;
this.emisTmsScanRecordList.push(record); this.emisTmsScanRecordList.push(record);
};
}, },
/** 上传按钮操作 */ /** 上传按钮操作 */
handleScanUpload(){ handleScanUpload(){
if(!this.selection){
this.$modal.msgError("请先上传图片!");
return;
}
var selData = this.selection; var selData = this.selection;
selData.forEach(item=>{ selData.forEach(item=>{
addEmisWaybillAttachment(item).then(response => { addEmisWaybillAttachment(item).then(response => {