2024-05-13 12:15:58 +00:00
|
|
|
|
<template>
|
|
|
|
|
|
<div class="app-container">
|
|
|
|
|
|
<el-row :gutter="0">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-form ref="form" size="mini" :model="form" :rules="rules" label-width="70px">
|
|
|
|
|
|
<el-col :span=16>
|
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
|
<el-form-item :label="$t('派件员')" prop="dispatchManCode">
|
|
|
|
|
|
<EmisUserSimplePicker v-model="form.dispatchManCode" postCode="RSD" @onChange="onSendStaffSelect" ></EmisUserSimplePicker>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-col :span="12">
|
2024-05-20 11:42:06 +00:00
|
|
|
|
<el-form-item label="签收人" prop="signMan" label-width="70px">
|
|
|
|
|
|
<!-- <EmisUserSimplePicker v-model="form.signMan" postCode="RSD" @onChange="onSignStaffSelect" ></EmisUserSimplePicker> -->
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<!-- <el-input v-model="form.signMan" clearable="" placeholder="" /> -->
|
|
|
|
|
|
<span slot="label">
|
|
|
|
|
|
<span style="color: red">{{ $t('签收人') }}</span>
|
|
|
|
|
|
</span>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
style="width:100%"
|
|
|
|
|
|
filterable
|
|
|
|
|
|
allow-create
|
|
|
|
|
|
clearable
|
|
|
|
|
|
v-model="form.signMan"
|
|
|
|
|
|
default-first-option
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option v-for="item in dict.type.emis_signs_remark" :key="item.value" :label="item.label" :value="item.label" />
|
|
|
|
|
|
</el-select>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
2024-05-27 07:34:14 +00:00
|
|
|
|
<!-- <el-col :span="12">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-form-item :label="$t('客户名称')" prop="customerCode" label-width="70px">
|
|
|
|
|
|
<CustomerSimplePicker v-model="form.customerCode" postCode="RSD" @onChange="onCustomerSelect" ></CustomerSimplePicker>
|
|
|
|
|
|
</el-form-item>
|
2024-05-27 07:34:14 +00:00
|
|
|
|
</el-col> -->
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-col :span="24">
|
2024-05-13 12:15:58 +00:00
|
|
|
|
<el-form-item label="扫描单号" prop="billCode" label-width="70px">
|
|
|
|
|
|
<span slot="label">
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<span style="color: red">{{ $t('扫描单号') }}</span>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</span>
|
|
|
|
|
|
<el-input v-model="form.billCode" clearable="" placeholder="单号输入后按回车" @keyup.enter.native="handleScanInput" >
|
|
|
|
|
|
<i slot="suffix" class="iconfont"></i>
|
|
|
|
|
|
</el-input>
|
|
|
|
|
|
<span style="color: gray">提示:回车保存本地</span>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
2024-05-15 12:07:16 +00:00
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
|
<el-form-item label="图片签收" prop="xxx">
|
2024-06-19 05:41:45 +00:00
|
|
|
|
<ImageUpload v-model="form.picUrl" @input="handleInput" :fileSize="1" :limit="50"></ImageUpload>
|
2024-05-15 12:07:16 +00:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
2024-05-19 12:52:46 +00:00
|
|
|
|
</el-form>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-row>
|
|
|
|
|
|
<el-row>
|
|
|
|
|
|
<el-col class="line" :span="24">
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<span >运单信息</span>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-col>
|
|
|
|
|
|
</el-row>
|
|
|
|
|
|
<el-row :gutter="0">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-form ref="form" size="mini" :model="record" :rules="rules" label-width="80px">
|
2024-05-13 12:15:58 +00:00
|
|
|
|
<el-col :span="6">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-form-item label="寄件日期" prop="registerDate" label-width="80px">
|
|
|
|
|
|
<el-input v-model="record.registerDate" :value="parseTime(record.registerDate)" placeholder="" disabled >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="6">
|
2024-06-01 14:24:10 +00:00
|
|
|
|
<el-form-item label="寄件网点" prop="sendSiteName" label-width="80px">
|
|
|
|
|
|
<el-input v-model="record.sendSiteName" placeholder="" disabled >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="6">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-form-item label="录单重量" prop="volumeWeight" label-width="80px">
|
|
|
|
|
|
<el-input v-model="record.volumeWeight" placeholder="" disabled >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
<span slot="suffix">KG</span>
|
|
|
|
|
|
</el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="6">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-form-item label="派件日期" prop="dispatchDate" label-width="80px">
|
|
|
|
|
|
<el-input v-model="record.dispatchDate" :value="parseTime(record.dispatchDate)" placeholder="" disabled >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="6">
|
2024-06-01 14:24:10 +00:00
|
|
|
|
<el-form-item label="派件网点" prop="dispatchSiteName" label-width="80px">
|
|
|
|
|
|
<el-input v-model="record.dispatchSiteName" placeholder="" disabled >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="6">
|
2024-06-01 14:24:10 +00:00
|
|
|
|
<el-form-item label="客户名称" prop="custName" label-width="80px">
|
|
|
|
|
|
<el-input v-model="record.custName" placeholder="" disabled >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
|
<el-form-item label="备注" prop="remark">
|
2024-05-15 12:07:16 +00:00
|
|
|
|
<el-input v-model="record.remark" placeholder="" disabled/>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
</el-form>
|
|
|
|
|
|
</el-row>
|
|
|
|
|
|
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<div slot="toolbar">
|
|
|
|
|
|
<el-row :gutter="10" class="mb8">
|
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
type="primary"
|
|
|
|
|
|
plain
|
|
|
|
|
|
size="mini"
|
|
|
|
|
|
:disabled="multiple"
|
|
|
|
|
|
@click="handleScanUpload"
|
|
|
|
|
|
v-hasPermi="['emis:emisTmsScanRecord:add']"
|
|
|
|
|
|
>上传</el-button>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
type="danger"
|
|
|
|
|
|
plain
|
|
|
|
|
|
icon="el-icon-delete"
|
|
|
|
|
|
size="mini"
|
|
|
|
|
|
:disabled="multiple"
|
|
|
|
|
|
@click="clearSelectionBatch"
|
|
|
|
|
|
v-hasPermi="['emis:emisTmsScanRecord:remove']"
|
|
|
|
|
|
>删除</el-button>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
type="primary"
|
|
|
|
|
|
plain
|
|
|
|
|
|
size="mini"
|
|
|
|
|
|
@click="handleBatchScan"
|
2024-05-24 06:49:26 +00:00
|
|
|
|
v-hasPermi="['emis:emisTmsScanRecord:batchScan']"
|
2024-05-16 03:47:55 +00:00
|
|
|
|
>批量扫描</el-button>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
</el-row>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<el-table ref="multipleTable" border stripe v-loading="loading" :data="emisTmsScanRecordList" @selection-change="handleSelectionChange">
|
|
|
|
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
|
|
|
|
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="150" />
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<el-table-column :label="$t('派件员')" align="center" prop="dispatchMan" min-width="100" />
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<el-table-column :label="$t('签收人')" align="center" prop="signMan" min-width="100" />
|
|
|
|
|
|
<el-table-column :label="$t('签收网点')" align="center" prop="signSiteCode" min-width="100" />
|
|
|
|
|
|
<el-table-column :label="$t('签收时间')" align="center" prop="signDate" min-width="170" >
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<span>{{ parseTime(scope.row.scanDate) }}</span>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column :label="$t('寄件日期')" align="center" prop="registerDate" min-width="170" >
|
2024-05-13 12:15:58 +00:00
|
|
|
|
<template slot-scope="scope">
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<span>{{ parseTime(scope.row.registerDate) }}</span>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</template>
|
2024-05-16 03:47:55 +00:00
|
|
|
|
</el-table-column>
|
2024-06-01 14:24:10 +00:00
|
|
|
|
<el-table-column :label="$t('寄件网点')" align="center" prop="sendSiteName" min-width="100" />
|
|
|
|
|
|
<!-- <el-table-column :label="$t('到付转月结用户编号')" align="center" prop="customerCode" min-width="100" />
|
|
|
|
|
|
<el-table-column :label="$t('到付转月结用户名称')" align="center" prop="customerName" min-width="100" /> -->
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<el-table-column :label="$t('派件日期')" align="center" prop="dispatchDate" min-width="170" >
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
|
<span>{{ parseTime(scope.row.dispatchDate) }}</span>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-table-column>
|
2024-06-01 14:24:10 +00:00
|
|
|
|
<el-table-column :label="$t('派件网点')" align="center" prop="dispatchSiteName" min-width="100" />
|
|
|
|
|
|
<el-table-column :label="$t('录件重量')" align="center" prop="billWeight" min-width="100" />
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<el-table-column :label="$t('备注')" align="center" prop="remark" min-width="100" />
|
2024-06-08 07:20:21 +00:00
|
|
|
|
<el-table-column :label="$t('签收图片')" align="center" min-width="100">
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<el-table-column :label="$t('上传图片')" align="center" prop="picUrls" width="200" >
|
2024-05-16 03:47:55 +00:00
|
|
|
|
<template slot-scope="scope">
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<!-- <span class="ellipsis">{{scope.row.picUrl}}</span> -->
|
2024-06-03 07:28:25 +00:00
|
|
|
|
<ImagePreview height="50px" v-for="pic in scope.row.picUrls" :key="pic" :src="pic" ></ImagePreview>
|
2024-05-16 03:47:55 +00:00
|
|
|
|
</template>
|
2024-06-08 07:20:21 +00:00
|
|
|
|
</el-table-column>
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<el-table-column :label="$t('上传网点')" align="center" prop="scanSite" min-width="100" >
|
2024-06-08 07:20:21 +00:00
|
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column :label="$t('上传人')" align="center" prop="scanMan" min-width="100" />
|
2024-06-03 04:06:42 +00:00
|
|
|
|
<!-- <el-table-column :label="$t('文件大小(KB)')" align="center" prop="xxxx" min-width="120" /> -->
|
2024-05-16 03:47:55 +00:00
|
|
|
|
</el-table-column>
|
|
|
|
|
|
</el-table>
|
|
|
|
|
|
<el-dialog :title="titleBatch" :visible.sync="openBatch" width="50%" v-dialogDrag :close-on-click-modal="false" append-to-body>
|
|
|
|
|
|
<el-form ref="formBatch" :model="formBatch" :rules="rulesBatch" size="mini" label-width="60px">
|
|
|
|
|
|
<el-row>
|
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
|
<el-form-item :label="$t('运单号')" prop="billCode">
|
|
|
|
|
|
<el-input v-model="formBatch.billCode" type="textarea" :rows="8" placeholder="运单号" />
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
</el-row>
|
|
|
|
|
|
</el-form>
|
|
|
|
|
|
<div slot="footer" class="dialog-footer" style="text-align:center">
|
|
|
|
|
|
<el-button type="primary" @click="submitFormBatch">确 定</el-button>
|
|
|
|
|
|
<el-button @click="cancelBatch">取 消</el-button>
|
|
|
|
|
|
</div>
|
2024-05-13 12:15:58 +00:00
|
|
|
|
</el-dialog>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2024-05-16 03:47:55 +00:00
|
|
|
|
import { getWaybillDetail } from "@/api/emis/emisWaybill";
|
|
|
|
|
|
import { doScan } from "@/api/emis/emisTmsScanRecord";
|
2024-05-15 12:07:16 +00:00
|
|
|
|
import CustomerSimplePicker from '@/views/emis/EmisBaseTools/CustomerSimplePicker.vue';
|
2024-05-13 12:15:58 +00:00
|
|
|
|
import EmisUserSimplePicker from '@/views/emis/EmisBaseTools/EmisUserSimplePicker.vue';
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
name: "SignAndRecord",
|
|
|
|
|
|
props:{
|
|
|
|
|
|
id:undefined
|
|
|
|
|
|
},
|
2024-05-16 03:47:55 +00:00
|
|
|
|
components: { EmisUserSimplePicker, CustomerSimplePicker },
|
2024-06-03 04:06:42 +00:00
|
|
|
|
dicts: ['emis_scan_type', 'emis_signs_remark'],
|
2024-05-13 12:15:58 +00:00
|
|
|
|
data() {
|
|
|
|
|
|
return {
|
|
|
|
|
|
// 选中数组
|
|
|
|
|
|
ids: [],
|
|
|
|
|
|
// 非单个禁用
|
|
|
|
|
|
single: true,
|
|
|
|
|
|
// 非多个禁用
|
|
|
|
|
|
multiple: true,
|
|
|
|
|
|
checkedDetail:[],
|
|
|
|
|
|
// 遮罩层
|
|
|
|
|
|
loading: false,
|
|
|
|
|
|
// 表单参数
|
|
|
|
|
|
form: {},
|
|
|
|
|
|
titleBatch: "",
|
|
|
|
|
|
formBatch: {},
|
|
|
|
|
|
openBatch:false,
|
|
|
|
|
|
dataMap:new Map(),
|
|
|
|
|
|
emisTmsScanRecordList: [],
|
2024-06-08 07:20:21 +00:00
|
|
|
|
|
2024-05-13 12:15:58 +00:00
|
|
|
|
|
|
|
|
|
|
// 是否显示弹出层
|
|
|
|
|
|
open: false,
|
|
|
|
|
|
// 表单校验
|
|
|
|
|
|
rules: {
|
2024-05-16 03:47:55 +00:00
|
|
|
|
|
2024-05-13 12:15:58 +00:00
|
|
|
|
},
|
|
|
|
|
|
rulesBatch: {
|
2024-05-16 03:47:55 +00:00
|
|
|
|
|
2024-05-13 12:15:58 +00:00
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
//查询信息展示
|
2024-05-15 12:07:16 +00:00
|
|
|
|
record:{}
|
2024-05-13 12:15:58 +00:00
|
|
|
|
};
|
|
|
|
|
|
},
|
|
|
|
|
|
watch: {
|
|
|
|
|
|
"id": {
|
|
|
|
|
|
handler (newValue, oldValue) {
|
|
|
|
|
|
this.id = newValue;
|
|
|
|
|
|
this.initData();
|
|
|
|
|
|
},
|
|
|
|
|
|
deep: true
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
created() {
|
|
|
|
|
|
this.reset();
|
|
|
|
|
|
this.form.scanSiteCode=this.$store.getters.ownerSiteCode;
|
|
|
|
|
|
this.form.scanSite=this.$store.getters.ownerSiteName;
|
|
|
|
|
|
|
|
|
|
|
|
this.form.scanMan=this.$store.getters.empName;
|
|
|
|
|
|
this.form.scanManCode=this.$store.getters.empCode;
|
|
|
|
|
|
|
|
|
|
|
|
this.form.recordMan=this.$store.getters.empName;
|
|
|
|
|
|
this.form.recordManCode=this.$store.getters.empCode;
|
|
|
|
|
|
|
|
|
|
|
|
this.form.dispatchOrSendMan=this.$store.getters.empName;
|
|
|
|
|
|
this.form.dispatchOrSendManCode=this.$store.getters.empCode;
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
handleInput(item){
|
2024-05-15 12:07:16 +00:00
|
|
|
|
this.form.picUrl = item;
|
2024-05-13 12:15:58 +00:00
|
|
|
|
},
|
2024-06-03 04:06:42 +00:00
|
|
|
|
// onCustomerSelect(item){
|
|
|
|
|
|
// if(item != null){
|
|
|
|
|
|
// this.form.customerCode=item.customerCode;
|
|
|
|
|
|
// this.form.customerName=item.customerName;
|
|
|
|
|
|
// }else{
|
|
|
|
|
|
// this.form.customerCode=null;
|
|
|
|
|
|
// this.form.customerName=null;
|
|
|
|
|
|
// }
|
|
|
|
|
|
// },
|
2024-05-13 12:15:58 +00:00
|
|
|
|
onSendStaffSelect(item){
|
2024-06-03 04:06:42 +00:00
|
|
|
|
this.form.dispatchMan=item.empName;
|
2024-05-15 12:07:16 +00:00
|
|
|
|
this.form.dispatchManCode=item.empCode;
|
2024-05-13 12:15:58 +00:00
|
|
|
|
},
|
|
|
|
|
|
onSignStaffSelect(item){
|
2024-05-15 12:07:16 +00:00
|
|
|
|
this.form.signMan=item.empName || this.$store.getters.empName;
|
|
|
|
|
|
this.form.signManCode=item.empCode || this.$store.getters.empCode;
|
2024-05-13 12:15:58 +00:00
|
|
|
|
},
|
|
|
|
|
|
handleBatchScan(){
|
|
|
|
|
|
this.formBatch = {
|
|
|
|
|
|
billCode: null,
|
|
|
|
|
|
}
|
|
|
|
|
|
this.titleBatch="批量扫描";
|
|
|
|
|
|
this.openBatch=true;
|
|
|
|
|
|
},
|
|
|
|
|
|
clearSelectionBatch(){
|
|
|
|
|
|
let newList =[];
|
|
|
|
|
|
console.log(this.ids)
|
|
|
|
|
|
this.emisTmsScanRecordList.forEach(item=>{
|
|
|
|
|
|
if(this.ids.indexOf(item.billCode) == -1){
|
|
|
|
|
|
newList.push(item);
|
|
|
|
|
|
}else{
|
|
|
|
|
|
this.dataMap[item.billCode]=null;
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
this.emisTmsScanRecordList = newList;
|
|
|
|
|
|
},
|
|
|
|
|
|
cancelBatch(){
|
|
|
|
|
|
this.openBatch=false;
|
|
|
|
|
|
},
|
|
|
|
|
|
submitFormBatch(){
|
|
|
|
|
|
if(this.formBatch.billCode==null || this.formBatch.billCode==''){
|
|
|
|
|
|
this.$message.error("输入单号后回车");
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
2024-06-08 07:20:21 +00:00
|
|
|
|
let bcList=this.formBatch.billCode.split(/[;\;\,\,\n]/)||[];
|
2024-05-16 03:47:55 +00:00
|
|
|
|
bcList.forEach((code) => {
|
|
|
|
|
|
this.getDetail(code, true)
|
|
|
|
|
|
})
|
2024-05-13 12:15:58 +00:00
|
|
|
|
this.openBatch=false;
|
|
|
|
|
|
},
|
|
|
|
|
|
// 表单重置
|
|
|
|
|
|
reset() {
|
|
|
|
|
|
this.form = {
|
|
|
|
|
|
id: null,
|
2024-05-15 12:07:16 +00:00
|
|
|
|
orderSn: null,
|
|
|
|
|
|
custOrderId: null,
|
2024-05-13 12:15:58 +00:00
|
|
|
|
billCode: null,
|
2024-05-15 12:07:16 +00:00
|
|
|
|
billCodeSub: null,
|
|
|
|
|
|
orderStatus: null,
|
|
|
|
|
|
waybillStatus: null,
|
|
|
|
|
|
orderType: null,
|
|
|
|
|
|
orderDate: null,
|
|
|
|
|
|
userId: null,
|
|
|
|
|
|
customerCode: null,
|
|
|
|
|
|
customerName: null,
|
|
|
|
|
|
receiveCustomerCode: null,
|
|
|
|
|
|
receiveCustomerName: null,
|
|
|
|
|
|
thirdCustomerCode: null,
|
|
|
|
|
|
thirdCustomerName: null,
|
|
|
|
|
|
openId: null,
|
|
|
|
|
|
receiveName: null,
|
|
|
|
|
|
receiveCompany: null,
|
|
|
|
|
|
receiveMobile: null,
|
|
|
|
|
|
receiveTel: null,
|
|
|
|
|
|
receiveCountry: null,
|
|
|
|
|
|
receiveProvince: null,
|
|
|
|
|
|
receiveCity: null,
|
|
|
|
|
|
receiveCounty: null,
|
|
|
|
|
|
receiveTown: null,
|
|
|
|
|
|
receiveAddress: null,
|
|
|
|
|
|
receivePostcode: null,
|
|
|
|
|
|
receivePcd: null,
|
|
|
|
|
|
sendName: null,
|
|
|
|
|
|
sendCompany: null,
|
|
|
|
|
|
sendMobile: null,
|
|
|
|
|
|
sendTel: null,
|
|
|
|
|
|
sendCountry: null,
|
|
|
|
|
|
sendProvince: null,
|
|
|
|
|
|
sendCity: null,
|
|
|
|
|
|
sendCounty: null,
|
|
|
|
|
|
sendTown: null,
|
|
|
|
|
|
sendAddress: null,
|
|
|
|
|
|
sendPostcode: null,
|
|
|
|
|
|
sendPcd: null,
|
|
|
|
|
|
paymentType: null,
|
|
|
|
|
|
calcFeeType: null,
|
|
|
|
|
|
custNo: null,
|
|
|
|
|
|
transLineType: null,
|
|
|
|
|
|
productType: null,
|
|
|
|
|
|
timeType: null,
|
|
|
|
|
|
meterType: null,
|
|
|
|
|
|
customsClear: null,
|
|
|
|
|
|
customsEclaration: null,
|
|
|
|
|
|
estimateDate: null,
|
|
|
|
|
|
packType: null,
|
|
|
|
|
|
dispatchMethod: null,
|
|
|
|
|
|
pickupMethod: null,
|
|
|
|
|
|
pickStartDate: null,
|
|
|
|
|
|
pickFinishDate: null,
|
|
|
|
|
|
pickFailReason: null,
|
|
|
|
|
|
intoWarehouseCode: null,
|
|
|
|
|
|
intoWarehouseName: null,
|
|
|
|
|
|
intoWarehouseAddress: null,
|
|
|
|
|
|
intoWarehouseContact: null,
|
|
|
|
|
|
intoWarehousePhone: null,
|
|
|
|
|
|
intoWarehouseBillCode: null,
|
|
|
|
|
|
warehouseInNo: null,
|
|
|
|
|
|
customerDeliveryBeginTime: null,
|
|
|
|
|
|
customerDeliveryEndTime: null,
|
|
|
|
|
|
goodsType: null,
|
|
|
|
|
|
goodsInfo: null,
|
|
|
|
|
|
goodsPics: null,
|
|
|
|
|
|
blPrepareInFreight: null,
|
|
|
|
|
|
prepareInEstFee: null,
|
|
|
|
|
|
prepareInRealFee: null,
|
|
|
|
|
|
prepareInExpress: null,
|
|
|
|
|
|
prepareInBillCode: null,
|
|
|
|
|
|
prepareInRemark: null,
|
|
|
|
|
|
prepareInSupplier: null,
|
|
|
|
|
|
totalWeight: null,
|
|
|
|
|
|
totalVolume: null,
|
|
|
|
|
|
parcelQty: null,
|
|
|
|
|
|
billWeight: null,
|
|
|
|
|
|
volumeWeight: null,
|
|
|
|
|
|
currency: null,
|
|
|
|
|
|
settlementWeight: null,
|
|
|
|
|
|
feeWeight: null,
|
|
|
|
|
|
freight: null,
|
|
|
|
|
|
blOverLong: null,
|
|
|
|
|
|
blBill: null,
|
|
|
|
|
|
blBillText: null,
|
|
|
|
|
|
blOverWeight: null,
|
|
|
|
|
|
overWeightNumber: null,
|
2024-06-08 07:20:21 +00:00
|
|
|
|
feeRemark: null,
|
2024-05-15 12:07:16 +00:00
|
|
|
|
thirdCode: null,
|
|
|
|
|
|
realValue: null,
|
|
|
|
|
|
blInsure: null,
|
|
|
|
|
|
insureValue: null,
|
|
|
|
|
|
insureValueCurrency: null,
|
|
|
|
|
|
insureFeeCurrency: null,
|
|
|
|
|
|
insureFee: null,
|
|
|
|
|
|
insureRemark: null,
|
|
|
|
|
|
insureSiteCode: null,
|
|
|
|
|
|
insureDate: null,
|
|
|
|
|
|
blPrint: null,
|
|
|
|
|
|
printManCode: null,
|
|
|
|
|
|
printSite: null,
|
|
|
|
|
|
printDate: null,
|
|
|
|
|
|
printCount: null,
|
|
|
|
|
|
blDispFd: null,
|
|
|
|
|
|
transferCode: null,
|
|
|
|
|
|
transferBillcode: null,
|
|
|
|
|
|
dispFdDate: null,
|
|
|
|
|
|
dispFdReason: null,
|
|
|
|
|
|
currentSiteCode: null,
|
|
|
|
|
|
nextSiteCode: null,
|
|
|
|
|
|
lastSiteCode: null,
|
|
|
|
|
|
registerSiteCode: null,
|
|
|
|
|
|
registerDate: null,
|
|
|
|
|
|
registerManCode: null,
|
|
|
|
|
|
takePieceEmployeeCode: null,
|
|
|
|
|
|
sendSiteCode: null,
|
|
|
|
|
|
sendDate: null,
|
|
|
|
|
|
dispatchManCode: null,
|
|
|
|
|
|
dispatchDate: null,
|
|
|
|
|
|
dispatchSiteCode: null,
|
|
|
|
|
|
produceBillDate: null,
|
|
|
|
|
|
produceBillSiteCode: null,
|
|
|
|
|
|
produceBillManCode: null,
|
|
|
|
|
|
destinationCode: null,
|
|
|
|
|
|
destinationProvince: null,
|
|
|
|
|
|
destinationCity: null,
|
|
|
|
|
|
destinationCounty: null,
|
|
|
|
|
|
dispatchUnderlingSiteCode: null,
|
|
|
|
|
|
destinationCenterCode: null,
|
|
|
|
|
|
marketManCode: null,
|
|
|
|
|
|
payee: null,
|
|
|
|
|
|
salesmen: null,
|
|
|
|
|
|
operateEmployeeCode: null,
|
|
|
|
|
|
blIsQuestion: null,
|
|
|
|
|
|
problemType: null,
|
|
|
|
|
|
problemCause: null,
|
|
|
|
|
|
problemDelayDays: null,
|
|
|
|
|
|
blMessage: null,
|
|
|
|
|
|
blAcceptMessage: null,
|
|
|
|
|
|
blGenSubbill: null,
|
2024-05-13 12:15:58 +00:00
|
|
|
|
signMan: null,
|
2024-05-15 12:07:16 +00:00
|
|
|
|
signManCode: null,
|
2024-05-13 12:15:58 +00:00
|
|
|
|
signSiteCode: null,
|
2024-05-15 12:07:16 +00:00
|
|
|
|
signDate: null,
|
|
|
|
|
|
billPicSendRmk: null,
|
|
|
|
|
|
billPicDispatchRmk: null,
|
|
|
|
|
|
timezoneOffset: null,
|
2024-05-13 12:15:58 +00:00
|
|
|
|
delFlag: null,
|
|
|
|
|
|
createBy: null,
|
|
|
|
|
|
createTime: null,
|
|
|
|
|
|
updateBy: null,
|
|
|
|
|
|
updateTime: null,
|
|
|
|
|
|
remark: null,
|
|
|
|
|
|
createSite: null,
|
2024-05-15 12:07:16 +00:00
|
|
|
|
updateSite: null
|
2024-05-13 12:15:58 +00:00
|
|
|
|
};
|
|
|
|
|
|
this.resetForm("form");
|
|
|
|
|
|
},
|
|
|
|
|
|
// 多选框选中数据
|
|
|
|
|
|
handleSelectionChange(selection) {
|
|
|
|
|
|
this.ids = selection.map(item => item.billCode)
|
|
|
|
|
|
this.single = selection.length!==1
|
|
|
|
|
|
this.multiple = !selection.length
|
|
|
|
|
|
},
|
|
|
|
|
|
// 扫描上传
|
|
|
|
|
|
handleScanUpload(){
|
|
|
|
|
|
var selData = this.$refs.multipleTable.selection;
|
|
|
|
|
|
console.log(selData);
|
2024-06-03 04:06:42 +00:00
|
|
|
|
let newList = [];
|
2024-05-13 12:15:58 +00:00
|
|
|
|
let scanData=[];
|
|
|
|
|
|
selData.forEach(item=>{
|
|
|
|
|
|
scanData.push(
|
|
|
|
|
|
{
|
|
|
|
|
|
billCode:item.billCode,
|
2024-05-16 03:47:55 +00:00
|
|
|
|
signMan:item.signMan,
|
2024-06-03 04:06:42 +00:00
|
|
|
|
// signManCode:item.signManCode,
|
2024-05-16 03:47:55 +00:00
|
|
|
|
picUrl:item.picUrl,
|
|
|
|
|
|
remark:item.remark,
|
2024-05-13 12:15:58 +00:00
|
|
|
|
scanWeight:item.scanWeight,
|
2024-05-16 03:47:55 +00:00
|
|
|
|
dispatchManCode:item.dispatchManCode,
|
2024-06-03 04:06:42 +00:00
|
|
|
|
// customerCode:item.customerCode,
|
|
|
|
|
|
// customerName:item.customerName,
|
2024-05-16 03:47:55 +00:00
|
|
|
|
// dispatchOrSendManCode:item.dispatchOrSendManCode,
|
2024-06-01 11:50:45 +00:00
|
|
|
|
// scanDate:item.scanDate
|
|
|
|
|
|
scanDate:item.scanDate || new Date()
|
2024-05-13 12:15:58 +00:00
|
|
|
|
}
|
|
|
|
|
|
);
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
// 检查
|
|
|
|
|
|
let scanInfo = {scanType:"50",opType:2,scanData:scanData}
|
|
|
|
|
|
console.log(scanInfo)
|
|
|
|
|
|
|
|
|
|
|
|
doScan(scanInfo).then(response => {
|
|
|
|
|
|
console.log(response);
|
|
|
|
|
|
let scanRstItem = response.data.scanResult[0];
|
|
|
|
|
|
console.log(scanRstItem);
|
|
|
|
|
|
if(scanRstItem.result != 'success'){
|
|
|
|
|
|
this.$modal.msgError(scanRstItem.message);
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-06-03 04:06:42 +00:00
|
|
|
|
// 删除上传记录
|
|
|
|
|
|
for(let sd=0;sd<this.emisTmsScanRecordList.length;sd++){
|
|
|
|
|
|
if( selData.filter(item => {
|
|
|
|
|
|
return this.emisTmsScanRecordList[sd].billCode == item.billCode
|
|
|
|
|
|
}).length == 0){
|
|
|
|
|
|
newList.push(this.emisTmsScanRecordList[sd])
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.emisTmsScanRecordList = newList
|
|
|
|
|
|
// 清空数据
|
|
|
|
|
|
this.record={};
|
2024-05-13 12:15:58 +00:00
|
|
|
|
this.$modal.msgSuccess(scanRstItem.message);
|
|
|
|
|
|
});
|
|
|
|
|
|
},
|
|
|
|
|
|
handleScanInput(){
|
|
|
|
|
|
if(this.form.billCode==null || this.form.billCode==''){
|
|
|
|
|
|
this.$message.error("输入单号后回车");
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
2024-06-03 04:06:42 +00:00
|
|
|
|
if(!this.form.signMan){
|
|
|
|
|
|
this.$message.error("请先选择签收人");
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
2024-05-13 12:15:58 +00:00
|
|
|
|
if(this.dataMap[this.form.billCode]){
|
|
|
|
|
|
this.$message.error("重复扫描");
|
|
|
|
|
|
this.playNoticeTone(1);
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
2024-05-16 03:47:55 +00:00
|
|
|
|
this.getDetail(this.form.billCode)
|
|
|
|
|
|
this.form.billCode =null;
|
|
|
|
|
|
},
|
|
|
|
|
|
getDetail(billCode, isBatch){
|
|
|
|
|
|
getWaybillDetail(billCode).then(response => {
|
2024-05-15 12:07:16 +00:00
|
|
|
|
let scanRstItem = response.data;
|
2024-05-13 12:15:58 +00:00
|
|
|
|
console.log(scanRstItem);
|
2024-05-15 12:07:16 +00:00
|
|
|
|
if(response.code != 200){
|
|
|
|
|
|
this.$modal.msgError(scanRstItem.msg);
|
2024-05-13 12:15:58 +00:00
|
|
|
|
return;
|
|
|
|
|
|
}
|
2024-06-01 14:24:10 +00:00
|
|
|
|
if(scanRstItem.waybillStatus == "50"){
|
|
|
|
|
|
this.$modal.msgError("已扫描");
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
2024-06-03 04:06:42 +00:00
|
|
|
|
let record =Object.assign({}, scanRstItem);
|
|
|
|
|
|
record.dispatchMan = this.form.dispatchMan;
|
2024-05-15 12:07:16 +00:00
|
|
|
|
record.dispatchManCode=this.form.dispatchManCode;
|
|
|
|
|
|
record.signManCode=this.form.signManCode;
|
|
|
|
|
|
record.signMan=this.form.signMan;
|
2024-06-03 04:06:42 +00:00
|
|
|
|
// record.customerCode=this.form.customerCode;
|
|
|
|
|
|
// record.customerName=this.form.customerName;
|
|
|
|
|
|
record.picUrl=this.form.picUrl || "";
|
|
|
|
|
|
record.picUrls=record.picUrl.split(",");
|
|
|
|
|
|
record.scanSite=this.form.scanSite;
|
|
|
|
|
|
record.scanMan=this.form.scanMan;
|
2024-05-13 12:15:58 +00:00
|
|
|
|
let indexBillCode=record.billCode;
|
|
|
|
|
|
this.dataMap[indexBillCode]=record;
|
|
|
|
|
|
this.emisTmsScanRecordList.push(record);
|
2024-05-16 03:47:55 +00:00
|
|
|
|
isBatch || this.emisTmsScanRecordList.length > 1 ? this.record = {} : this.record = record;
|
2024-06-03 04:06:42 +00:00
|
|
|
|
this.form.picUrl = "";
|
2024-05-13 12:15:58 +00:00
|
|
|
|
});
|
2024-05-16 03:47:55 +00:00
|
|
|
|
}
|
2024-05-13 12:15:58 +00:00
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style rel="stylesheet/scss" lang="scss">
|
|
|
|
|
|
.line{
|
|
|
|
|
|
line-height: 28px;
|
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
|
color: black;
|
|
|
|
|
|
font-weight: 700;
|
|
|
|
|
|
margin-left: 10px;
|
|
|
|
|
|
margin-bottom: 20px;
|
|
|
|
|
|
border-bottom-color: gray;
|
|
|
|
|
|
border-bottom-style: solid;
|
|
|
|
|
|
border-bottom-width: 0.5px;
|
|
|
|
|
|
}
|
2024-05-15 12:07:16 +00:00
|
|
|
|
|
|
|
|
|
|
.ellipsis {
|
|
|
|
|
|
width:200px;
|
|
|
|
|
|
overflow: hidden; /* 确保超出容器的内容被裁剪 */
|
|
|
|
|
|
white-space: nowrap; /* 确保文本在一行内显示 */
|
|
|
|
|
|
text-overflow: ellipsis; /* 超出部分显示省略号 */
|
|
|
|
|
|
}
|
2024-06-08 07:20:21 +00:00
|
|
|
|
</style>
|