设计管理优化

This commit is contained in:
2025-08-20 19:21:52 +08:00
parent 6cab291522
commit 7e4a5e17cc
21 changed files with 632 additions and 108 deletions

View File

@ -62,7 +62,7 @@
<el-table-column label="供货单位" align="center" prop="supplierUnit" />
<el-table-column label="设备材料入库/移交" align="center" prop="storageType">
<template #default="scope">
<dict-tag :options="storage_type" :value="scope.row.storageType ? scope.row.storageType.split(',') : []" />
<dict-tag :options="storage_type" :value="scope.row.storageType" />
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" />
@ -183,7 +183,7 @@
:prop="`itemList.${index}.acceptedQuantity`"
:rules="{ required: true, message: '验收数量不能为空', trigger: 'blur' }"
>
<el-input type="number" v-model="item.acceptedQuantity" placeholder="请输入验收" />
<el-input type="number" v-model="item.acceptedQuantity" placeholder="请输入验收" />
</el-form-item>
</el-col>
<el-col :span="12">
@ -235,11 +235,16 @@
</el-col>
<el-col :span="24">
<el-form-item label="设备材料入库/移交" prop="storageType">
<el-checkbox-group v-model="form.storageType">
<el-radio-group v-model="form.storageType">
<el-radio v-for="dict in storage_type" :key="dict.value" :label="dict.value">
{{ dict.label }}
</el-radio>
</el-radio-group>
<!-- <el-checkbox-group v-model="form.storageType">
<el-checkbox v-for="dict in storage_type" :key="dict.value" :label="dict.value">
{{ dict.label }}
</el-checkbox>
</el-checkbox-group>
</el-checkbox-group> -->
</el-form-item> </el-col
><el-col :span="24"
><el-form-item label="备注" prop="remark">
@ -317,7 +322,7 @@ const getInitFormData = () => {
techDocCountFileId: undefined,
licenseCount: undefined,
licenseCountFileId: undefined,
storageType: [],
storageType: '',
remark: undefined,
docId: undefined,
docCode: undefined,
@ -425,12 +430,6 @@ const handleUpdate = async (row?: MaterialReceiveVO) => {
const _id = row?.id || ids.value[0];
const res = await getMaterialReceive(_id);
Object.assign(form.value, res.data);
if (form.value.storageType && form.value.storageType.length) {
form.value.storageType = form.value.storageType.split(',');
} else {
form.value.storageType = [];
}
// 为每个条目添加监听
form.value.itemList.forEach((_, index) => {
watchItemChanges(index);
@ -445,11 +444,10 @@ const submitForm = () => {
materialReceiveFormRef.value?.validate(async (valid: boolean) => {
if (valid) {
buttonLoading.value = true;
form.value.storageType = form.value.storageType.join(',');
if (form.value.id) {
await updateMaterialReceive(form.value).finally(() => (buttonLoading.value = false));
await updateMaterialReceive({ ...form.value }).finally(() => (buttonLoading.value = false));
} else {
await addMaterialReceive(form.value).finally(() => (buttonLoading.value = false));
await addMaterialReceive({ ...form.value }).finally(() => (buttonLoading.value = false));
}
proxy?.$modal.msgSuccess('操作成功');
dialog.visible = false;