|
@@ -5,19 +5,27 @@
|
|
:rules="rules"
|
|
:rules="rules"
|
|
ref="formDom"
|
|
ref="formDom"
|
|
label-position="top"
|
|
label-position="top"
|
|
- :disabled="props.queryData.purchaseDetailList ? true : false"
|
|
|
|
|
|
+ :disabled="judgeStatus()"
|
|
>
|
|
>
|
|
<div class="_t">基础信息</div>
|
|
<div class="_t">基础信息</div>
|
|
<el-row :gutter="10">
|
|
<el-row :gutter="10">
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
<el-form-item label="采购部门" prop="deptName">
|
|
<el-form-item label="采购部门" prop="deptName">
|
|
- <el-input v-model="formData.data.deptName" placeholder="请输入">
|
|
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="formData.data.deptName"
|
|
|
|
+ placeholder="请输入"
|
|
|
|
+ disabled
|
|
|
|
+ >
|
|
</el-input>
|
|
</el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
<el-form-item label="采购人" prop="purchaseName">
|
|
<el-form-item label="采购人" prop="purchaseName">
|
|
- <el-input v-model="formData.data.purchaseName" placeholder="请输入">
|
|
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="formData.data.purchaseName"
|
|
|
|
+ placeholder="请输入"
|
|
|
|
+ disabled
|
|
|
|
+ >
|
|
</el-input>
|
|
</el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
@@ -27,6 +35,7 @@
|
|
v-model="formData.data.purchaseTime"
|
|
v-model="formData.data.purchaseTime"
|
|
type="datetime"
|
|
type="datetime"
|
|
placeholder="请选择"
|
|
placeholder="请选择"
|
|
|
|
+ disabled
|
|
/>
|
|
/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
@@ -112,7 +121,7 @@
|
|
(row) =>
|
|
(row) =>
|
|
row.productDefinition == 1
|
|
row.productDefinition == 1
|
|
? '产品'
|
|
? '产品'
|
|
- : row.productDefinition == 1
|
|
|
|
|
|
+ : row.productDefinition == 2
|
|
? '物料'
|
|
? '物料'
|
|
: ''
|
|
: ''
|
|
"
|
|
"
|
|
@@ -125,16 +134,8 @@
|
|
label="单位"
|
|
label="单位"
|
|
:formatter="(row) => dictValueLabel(row.productUnit, productUnit)"
|
|
:formatter="(row) => dictValueLabel(row.productUnit, productUnit)"
|
|
/>
|
|
/>
|
|
- <el-table-column
|
|
|
|
- prop="subscribeCount"
|
|
|
|
- label="申购数量"
|
|
|
|
- v-if="ids.length > 0"
|
|
|
|
- />
|
|
|
|
- <el-table-column
|
|
|
|
- prop="purchaseCount"
|
|
|
|
- label="已采购数量"
|
|
|
|
- v-if="ids.length > 0"
|
|
|
|
- />
|
|
|
|
|
|
+ <el-table-column prop="subscribeCount" label="申购数量" />
|
|
|
|
+ <el-table-column prop="purchaseCount" label="已采购数量" />
|
|
<el-table-column prop="count" label="本次采购" min-width="150">
|
|
<el-table-column prop="count" label="本次采购" min-width="150">
|
|
<template #default="{ row, $index }">
|
|
<template #default="{ row, $index }">
|
|
<el-form-item
|
|
<el-form-item
|
|
@@ -399,28 +400,63 @@ onMounted(() => {
|
|
if (!route.query.processType) {
|
|
if (!route.query.processType) {
|
|
ids.value = props.queryData.ids.split(",") || [];
|
|
ids.value = props.queryData.ids.split(",") || [];
|
|
getDetails();
|
|
getDetails();
|
|
- }
|
|
|
|
- setTimeout(() => {
|
|
|
|
- if (!props.queryData.purchaseDetailList) return;
|
|
|
|
- formData.data = props.queryData;
|
|
|
|
|
|
+ } else {
|
|
proxy
|
|
proxy
|
|
- .post("/subscribeDetail/detail", {
|
|
|
|
- ids: props.queryData.purchaseDetailList.map((item) => {
|
|
|
|
- return item.subscribeDetailId;
|
|
|
|
- }),
|
|
|
|
|
|
+ .post("/purchase/detail", {
|
|
|
|
+ id: route.query.businessId,
|
|
})
|
|
})
|
|
.then((res) => {
|
|
.then((res) => {
|
|
- console.log(formData.data.purchaseDetailList);
|
|
|
|
- formData.data.purchaseDetailList =
|
|
|
|
- props.queryData.purchaseDetailList.map((x, index) => ({
|
|
|
|
- ...res[index],
|
|
|
|
- subscribeCount: x.count,
|
|
|
|
- count: x.count,
|
|
|
|
- price: x.price,
|
|
|
|
- amount: x.amount,
|
|
|
|
- }));
|
|
|
|
- console.log(formData.data.purchaseDetailList);
|
|
|
|
|
|
+ let jsonData = {};
|
|
|
|
+ if (res.victoriatouristJson) {
|
|
|
|
+ jsonData = JSON.parse(res.victoriatouristJson);
|
|
|
|
+ }
|
|
|
|
+ formData.data = { ...res, ...jsonData };
|
|
|
|
+ formData.data.purchaseDetailList = formData.data.purchaseDetailList.map(
|
|
|
|
+ (x) => ({
|
|
|
|
+ ...x,
|
|
|
|
+ subscribeCount: x.subscribeQuantity,
|
|
|
|
+ purchaseCount: x.purchaseQuantity,
|
|
|
|
+ })
|
|
|
|
+ );
|
|
});
|
|
});
|
|
|
|
+ }
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ if (!props.queryData.purchaseDetailList) return;
|
|
|
|
+ // formData.data = props.queryData;
|
|
|
|
+ // proxy
|
|
|
|
+ // .post("/subscribeDetail/detail", {
|
|
|
|
+ // ids: props.queryData.purchaseDetailList.map((item) => {
|
|
|
|
+ // return item.subscribeDetailId;
|
|
|
|
+ // }),
|
|
|
|
+ // })
|
|
|
|
+ // .then((res) => {
|
|
|
|
+ // formData.data.purchaseDetailList =
|
|
|
|
+ // props.queryData.purchaseDetailList.map((x, index) => ({
|
|
|
|
+ // ...res[index],
|
|
|
|
+ // subscribeCount: x.count,
|
|
|
|
+ // count: x.count,
|
|
|
|
+ // price: x.price,
|
|
|
|
+ // amount: x.amount,
|
|
|
|
+ // }));
|
|
|
|
+ // });
|
|
|
|
+ // proxy
|
|
|
|
+ // .post("/purchase/detail", {
|
|
|
|
+ // id: route.query.businessId,
|
|
|
|
+ // })
|
|
|
|
+ // .then((res) => {
|
|
|
|
+ // let jsonData = {};
|
|
|
|
+ // if (res.victoriatouristJson) {
|
|
|
|
+ // jsonData = JSON.parse(res.victoriatouristJson);
|
|
|
|
+ // }
|
|
|
|
+ // formData.data = { ...res, ...jsonData };
|
|
|
|
+ // formData.data.purchaseDetailList = formData.data.purchaseDetailList.map(
|
|
|
|
+ // (x) => ({
|
|
|
|
+ // ...x,
|
|
|
|
+ // subscribeCount: x.subscribeQuantity,
|
|
|
|
+ // purchaseCount: x.purchaseQuantity,
|
|
|
|
+ // })
|
|
|
|
+ // );
|
|
|
|
+ // });
|
|
}, 2000);
|
|
}, 2000);
|
|
});
|
|
});
|
|
|
|
|
|
@@ -432,9 +468,9 @@ const props = defineProps({
|
|
const ids = ref([]);
|
|
const ids = ref([]);
|
|
const getDetails = () => {
|
|
const getDetails = () => {
|
|
proxy.post("/subscribeDetail/detail", { ids: ids.value }).then((res) => {
|
|
proxy.post("/subscribeDetail/detail", { ids: ids.value }).then((res) => {
|
|
- console.log(res, "123123123123123123123123");
|
|
|
|
formData.data.purchaseDetailList = res.map((x) => ({
|
|
formData.data.purchaseDetailList = res.map((x) => ({
|
|
...x,
|
|
...x,
|
|
|
|
+ subscribeDetailId: x.id,
|
|
subscribeCount: x.count,
|
|
subscribeCount: x.count,
|
|
count: Number(x.count) - Number(x.purchaseCount),
|
|
count: Number(x.count) - Number(x.purchaseCount),
|
|
price: null,
|
|
price: null,
|
|
@@ -443,7 +479,6 @@ const getDetails = () => {
|
|
});
|
|
});
|
|
};
|
|
};
|
|
// 获取用户信息并赋默认值
|
|
// 获取用户信息并赋默认值
|
|
-// const tenantId = "@福建宏星!#¥%……&*()";
|
|
|
|
const tenantId = userInfo.tenantId;
|
|
const tenantId = userInfo.tenantId;
|
|
// 获取供应商数据
|
|
// 获取供应商数据
|
|
const supplierData = ref([]);
|
|
const supplierData = ref([]);
|
|
@@ -518,9 +553,30 @@ const getDict = () => {
|
|
});
|
|
});
|
|
};
|
|
};
|
|
getDict();
|
|
getDict();
|
|
|
|
+
|
|
|
|
+const judgeStatus = () => {
|
|
|
|
+ if (route.query.processType == 20) {
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ if (props.queryData.recordList && props.queryData.recordList.length > 0) {
|
|
|
|
+ let data = props.queryData.recordList.filter(
|
|
|
|
+ (item) => item.status === 2 && item.nodeType !== 1
|
|
|
|
+ );
|
|
|
|
+ if (data && data.length > 0) {
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+const getFormData = () => {
|
|
|
|
+ return formData.data;
|
|
|
|
+};
|
|
|
|
+
|
|
// 向父组件暴露
|
|
// 向父组件暴露
|
|
defineExpose({
|
|
defineExpose({
|
|
- submitData: formData.data,
|
|
|
|
|
|
+ // submitData: formData.data,
|
|
|
|
+ getFormData,
|
|
handleSubmit,
|
|
handleSubmit,
|
|
});
|
|
});
|
|
</script>
|
|
</script>
|