|
|
@@ -1,133 +1,155 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
|
|
- <headerTitle title="发货信息"></headerTitle>
|
|
|
- <el-row>
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item
|
|
|
- label="供应商名称:"
|
|
|
- prop="supplierName"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- {{ form.supplierName }}
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="供应商联系人:"
|
|
|
- prop="linkName"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- {{ form.linkName }}
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="供应商电话:"
|
|
|
- prop="linkPhone"
|
|
|
- style="margin-bottom: 16px"
|
|
|
+ <div class="switch">
|
|
|
+ <div class="switch_left">
|
|
|
+ <ul>
|
|
|
+ <li
|
|
|
+ v-for="item in tabOptions"
|
|
|
+ :key="item.key"
|
|
|
+ :class="{ active: activeComp == item.key }"
|
|
|
+ @click="changeActive(item)"
|
|
|
>
|
|
|
- {{ form.linkPhone }}
|
|
|
- </el-form-item>
|
|
|
+ {{ item.name }}
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-show="activeComp == 'main'">
|
|
|
+ <el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
|
|
+ <headerTitle title="发货信息"></headerTitle>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item
|
|
|
+ label="供应商名称:"
|
|
|
+ prop="supplierName"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ form.supplierName }}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="供应商联系人:"
|
|
|
+ prop="linkName"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ form.linkName }}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="供应商电话:"
|
|
|
+ prop="linkPhone"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ form.linkPhone }}
|
|
|
+ </el-form-item>
|
|
|
|
|
|
- <!-- <el-form-item
|
|
|
+ <!-- <el-form-item
|
|
|
label="客户地址:"
|
|
|
prop="partaAddress"
|
|
|
style="margin-bottom: 16px"
|
|
|
>
|
|
|
{{ form.receiveAddress }}
|
|
|
</el-form-item> -->
|
|
|
- <el-form-item
|
|
|
- label="审核状态:"
|
|
|
- prop="reviewStatus"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- {{ reviewStatusEnum[form.reviewStatus]?.label }}
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="附件:"
|
|
|
- prop="receiveFiles"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- <div v-if="detailData.sendFiles && detailData.sendFiles?.length">
|
|
|
- <el-link
|
|
|
- v-for="link in detailData.sendFiles"
|
|
|
- :key="link.id"
|
|
|
- type="primary"
|
|
|
- :underline="false"
|
|
|
- @click="downloadFile(link)"
|
|
|
- >
|
|
|
- {{ link.name }}</el-link
|
|
|
- >
|
|
|
- </div>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
+ <el-form-item
|
|
|
+ label="审核状态:"
|
|
|
+ prop="reviewStatus"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ reviewStatusEnum[form.reviewStatus]?.label }}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="附件:"
|
|
|
+ prop="receiveFiles"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ <div v-if="detailData.sendFiles && detailData.sendFiles?.length">
|
|
|
+ <el-link
|
|
|
+ v-for="link in detailData.sendFiles"
|
|
|
+ :key="link.id"
|
|
|
+ type="primary"
|
|
|
+ :underline="false"
|
|
|
+ @click="downloadFile(link)"
|
|
|
+ >
|
|
|
+ {{ link.name }}</el-link
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item
|
|
|
label="采购单类型:"
|
|
|
prop="receiveTypeName"
|
|
|
style="margin-bottom: 16px"
|
|
|
>
|
|
|
{{ form.receiveTypeName }}
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="车牌号:"
|
|
|
- prop="carNo"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- {{ form.carNo }}
|
|
|
- </el-form-item>
|
|
|
-
|
|
|
- <el-form-item
|
|
|
- label="收货单编码:"
|
|
|
- prop="receiveNo"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- {{ form.receiveNo }}
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="制单人:"
|
|
|
- prop="makerName"
|
|
|
- style="margin-bottom: 16px"
|
|
|
- >
|
|
|
- {{ form.makerName }}
|
|
|
- </el-form-item>
|
|
|
- <el-form-item prop="orderNo" label="订单编码:">
|
|
|
- {{ form.orderNo }}
|
|
|
- </el-form-item>
|
|
|
- <!-- <el-form-item prop="replied" label="是否回执:">
|
|
|
+ <el-form-item
|
|
|
+ label="车牌号:"
|
|
|
+ prop="carNo"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ form.carNo }}
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item
|
|
|
+ label="收货单编码:"
|
|
|
+ prop="receiveNo"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ form.receiveNo }}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="制单人:"
|
|
|
+ prop="makerName"
|
|
|
+ style="margin-bottom: 16px"
|
|
|
+ >
|
|
|
+ {{ form.makerName }}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="orderNo" label="订单编码:">
|
|
|
+ {{ form.orderNo }}
|
|
|
+ </el-form-item>
|
|
|
+ <!-- <el-form-item prop="replied" label="是否回执:">
|
|
|
{{ form.replied == 1 ? '是' : '否' }}
|
|
|
</el-form-item> -->
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- </el-form>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-form>
|
|
|
|
|
|
- <headerTitle title="产品清单"></headerTitle>
|
|
|
- <ele-pro-table
|
|
|
- ref="table"
|
|
|
- :needPage="false"
|
|
|
- :columns="columns"
|
|
|
- :toolkit="[]"
|
|
|
- :datasource="detailData.productList"
|
|
|
- row-key="id"
|
|
|
- >
|
|
|
- <!-- <template v-slot:toolbar>
|
|
|
+ <headerTitle title="产品清单"></headerTitle>
|
|
|
+ <ele-pro-table
|
|
|
+ ref="table"
|
|
|
+ :needPage="false"
|
|
|
+ :columns="columns"
|
|
|
+ :toolkit="[]"
|
|
|
+ :datasource="detailData.productList"
|
|
|
+ row-key="id"
|
|
|
+ >
|
|
|
+ <!-- <template v-slot:toolbar>
|
|
|
<div class="headbox">
|
|
|
<span class="amount">总计:{{detailData.totalAmount}}元</span>
|
|
|
<span class="amount">应付金额:{{detailData.payAmount}}元</span>
|
|
|
</div>
|
|
|
</template> -->
|
|
|
- <template v-slot:technicalDrawings="{ row }">
|
|
|
- <div v-if="row.technicalDrawings && row.technicalDrawings?.length">
|
|
|
- <el-link
|
|
|
- v-for="link in row.technicalDrawings"
|
|
|
- :key="link.id"
|
|
|
- type="primary"
|
|
|
- :underline="false"
|
|
|
- @click="downloadFile(link)"
|
|
|
- >
|
|
|
- {{ link.name }}</el-link
|
|
|
- >
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </ele-pro-table>
|
|
|
+ <template v-slot:technicalDrawings="{ row }">
|
|
|
+ <div v-if="row.technicalDrawings && row.technicalDrawings?.length">
|
|
|
+ <el-link
|
|
|
+ v-for="link in row.technicalDrawings"
|
|
|
+ :key="link.id"
|
|
|
+ type="primary"
|
|
|
+ :underline="false"
|
|
|
+ @click="downloadFile(link)"
|
|
|
+ >
|
|
|
+ {{ link.name }}</el-link
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </ele-pro-table>
|
|
|
+ </div>
|
|
|
+ <detailDialog
|
|
|
+ v-if="activeComp == 'inoutBoundView'"
|
|
|
+ :businessId="form.orderNo"
|
|
|
+ type="sourceBizNo"
|
|
|
+ ></detailDialog>
|
|
|
+ <add ref="add" v-if="activeComp == 'inoutBound'" type="sourceBizNo" @success="success"></add>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
@@ -136,15 +158,30 @@
|
|
|
import dictMixins from '@/mixins/dictMixins';
|
|
|
import { reviewStatusEnum } from '@/enum/dict';
|
|
|
import { getReceiveSaleOrderrecordDetail } from '@/api/bpm/components/purchasingManage/purchaseorderreceive';
|
|
|
+ import detailDialog from '@/views/bpm/handleTask/components/inoutBound/detailDialog.vue';
|
|
|
+ import add from '@/views/bpm/stockManagement/add.vue';
|
|
|
+
|
|
|
export default {
|
|
|
- props:{
|
|
|
+ props: {
|
|
|
businessId: {
|
|
|
default: ''
|
|
|
+ },
|
|
|
+ taskId: {
|
|
|
+ default: ''
|
|
|
+ },
|
|
|
+ taskDefinitionKey: {
|
|
|
+ default: ''
|
|
|
}
|
|
|
},
|
|
|
+ components: {
|
|
|
+ detailDialog,
|
|
|
+ add
|
|
|
+ },
|
|
|
mixins: [dictMixins],
|
|
|
data() {
|
|
|
return {
|
|
|
+ activeComp: 'main',
|
|
|
+ tabOptions: [{ key: 'main', name: '收货单详情' }],
|
|
|
reviewStatusEnum,
|
|
|
visible: false,
|
|
|
detailId: '',
|
|
|
@@ -289,13 +326,42 @@
|
|
|
},
|
|
|
created() {
|
|
|
this.getDetailData(this.businessId);
|
|
|
+ if (
|
|
|
+ !['starter', 'deptLeaderApprove', 'storeManagerApprove'].includes(
|
|
|
+ this.taskDefinitionKey
|
|
|
+ )
|
|
|
+ ) {
|
|
|
+ this.tabOptions.push({ key: 'inoutBoundView', name: '入库单详情' });
|
|
|
+ }
|
|
|
+ if (this.taskDefinitionKey == 'storeManagerApprove') {
|
|
|
+ this.tabOptions.push({ key: 'inoutBound', name: '入库单' });
|
|
|
+ }
|
|
|
},
|
|
|
methods: {
|
|
|
+ changeActive(item) {
|
|
|
+ this.activeComp = item.key;
|
|
|
+ this.$emit('activeCompChange', item.key);
|
|
|
+ if (
|
|
|
+ this.taskDefinitionKey == 'storeManagerApprove' &&
|
|
|
+ item.key == 'inoutBound'
|
|
|
+ ) {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.add.pickerSuccess(this.form);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ save() {
|
|
|
+ this.$refs.add.handleSave();
|
|
|
+ },
|
|
|
+ success(){
|
|
|
+ console.log(this.$parent)
|
|
|
+ this.$parent.handleClose()
|
|
|
+ },
|
|
|
downloadFile(file) {
|
|
|
getFile({ objectName: file.storePath }, file.name);
|
|
|
},
|
|
|
getTableValue() {
|
|
|
- return this.form
|
|
|
+ return this.form;
|
|
|
},
|
|
|
async getDetailData(id) {
|
|
|
this.loading = true;
|