|
|
@@ -1,16 +1,20 @@
|
|
|
<template>
|
|
|
- <el-dialog v-model="visible" title="工艺路线详情" fullscreen :close-on-click-modal="false" @closed="$emit('closed')">
|
|
|
+ <el-dialog v-model="visible" title="销售订单详情" fullscreen :close-on-click-modal="false" @closed="$emit('closed')">
|
|
|
<el-main>
|
|
|
<el-collapse v-model="activeNames">
|
|
|
<el-collapse-item title="基本信息" name="basic">
|
|
|
<el-descriptions :column="3" label-width="140" border>
|
|
|
- <el-descriptions-item label="工艺路线名称" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.name }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="工艺路线编号" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.code }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="单据编号" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.code }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="合同编号" :span="ismobile ? 3 : 1" label-align="right">{{ descData.contractNo }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="单据日期" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.orderDate }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="单据状态" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ XEUtils.get(salesDic.orderStatus, descData.status, descData.status) }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="客户" :span="ismobile ? 3 : 1" label-align="right">{{ descData.customerName }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="添加时间" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.createTime }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="工艺路线状态" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ XEUtils.get(statusDic, descData.status, descData.status) }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="时间单位" :span="ismobile ? 3 : 1" label-align="right">{{ XEUtils.get(workmanshipDic.timeUnit, descData.timeUnit, descData.timeUnit) }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="版本号" :span="ismobile ? 3 : 1" label-align="right">{{ descData.version }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="适用产品" :span="3" label-align="right">所有产品</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="预计交期" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.planReceiveDate }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="实际交期" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.deliveryDate }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="业务员" :span="ismobile ? 3 : 1" label-align="right">{{ descData.managerName }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="收货日期" :span="ismobile ? 3 : 1" label-align="right" min-width="120">{{ descData.actualReceiveDate }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="客户收货地址" :span="3" label-align="right">{{ descData.deliveryAddress }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="概要" :span="3" label-align="right">{{ descData.remark }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="附件" :span="3" label-align="right">
|
|
|
<sc-upload-file v-model="descData.fileList" hideAdd disabled></sc-upload-file>
|
|
|
@@ -18,11 +22,15 @@
|
|
|
</el-descriptions>
|
|
|
</el-collapse-item>
|
|
|
|
|
|
- <el-collapse-item title="加工路线" name="route">
|
|
|
- <sc-form-table v-model="descData.detailList" v-bind="options" ></sc-form-table>
|
|
|
+ <el-collapse-item title="产品信息" name="material">
|
|
|
+ <sc-form-table v-model="descData.childrenList" v-bind="tableOptions" disabled></sc-form-table>
|
|
|
</el-collapse-item>
|
|
|
|
|
|
- <el-collapse-item title="质检方案" name="plan">
|
|
|
+ <el-collapse-item title="金额信息" name="amount">
|
|
|
+ <el-descriptions :column="2" label-width="140" border>
|
|
|
+ <el-descriptions-item label="整单折扣额" label-align="right" min-width="120">{{ descData.freePrice }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="成交金额" label-align="right" min-width="120">{{ descData.actualPrice }}</el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</el-collapse-item>
|
|
|
</el-collapse>
|
|
|
</el-main>
|
|
|
@@ -31,7 +39,7 @@
|
|
|
|
|
|
<script setup>
|
|
|
import XEUtils from "xe-utils";
|
|
|
-import { statusDic, workmanshipDic } from "@/utils/basicDic";
|
|
|
+import { salesDic } from "@/utils/basicDic";
|
|
|
import { tableOptions } from "./main";
|
|
|
import scUploadFile from "@/components/scUpload/file";
|
|
|
|
|
|
@@ -41,25 +49,24 @@ const visible = ref(false);
|
|
|
const store = useStore();
|
|
|
const ismobile = computed(() => store.state.global.ismobile);
|
|
|
|
|
|
-const options = reactive({
|
|
|
- disabled: true,
|
|
|
- ...tableOptions,
|
|
|
- columns: tableOptions.columns.slice(1),
|
|
|
- mergeFooterItems: [{ row: 0, col: 0, rowspan: 1, colspan: 4 }]
|
|
|
-});
|
|
|
-
|
|
|
-const activeNames = ref(["basic", "route", "plan"]);
|
|
|
+const activeNames = ref(["basic", "material", "amount"]);
|
|
|
const descData = ref({
|
|
|
id: null,
|
|
|
- parentId: null,
|
|
|
- name: null,
|
|
|
code: null,
|
|
|
- timeUnit: "minute",
|
|
|
- version: "v1.0.0",
|
|
|
- detailList: [],
|
|
|
+ orderDate: null,
|
|
|
+ customerName: null,
|
|
|
+ contractNo: null,
|
|
|
+ planReceiveDate: null,
|
|
|
+ actualReceiveDate: null,
|
|
|
+ deliveryDate: null,
|
|
|
+ managerName: null,
|
|
|
+ deliveryAddress: null,
|
|
|
+ childrenList: [],
|
|
|
+ freePrice: null,
|
|
|
+ actualPrice: null,
|
|
|
remark: null,
|
|
|
fileList: [],
|
|
|
- status: "enable",
|
|
|
+ status: "pending",
|
|
|
createTime: null
|
|
|
});
|
|
|
|
|
|
@@ -67,7 +74,7 @@ const setData = data => {
|
|
|
visible.value = true;
|
|
|
XEUtils.objectEach(descData.value, (_, key) => {
|
|
|
if (key == "fileList") XEUtils.set(descData.value, key, XEUtils.map(XEUtils.get(data, key), item => ({ ...item, name: item.fileName })));
|
|
|
- else if (key == "detailList") XEUtils.set(descData.value, key, XEUtils.map(XEUtils.get(data, key), item => ({ ...item.stage, ...XEUtils.omit(item, "id", "stage") })));
|
|
|
+ else if (key == "childrenList") XEUtils.set(descData.value, key, XEUtils.map(XEUtils.get(data, key), item => ({ ...item.material, quantity: item.materialQuantity, price: item.materialPrice })));
|
|
|
else XEUtils.set(descData.value, key, XEUtils.get(data, key));
|
|
|
});
|
|
|
}
|