From 271f99fb16f220f06ee07266ec458b1149f5270c Mon Sep 17 00:00:00 2001 From: taoge1020 Date: Tue, 19 Aug 2025 20:01:29 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/design/designChange/index.ts | 20 + src/api/design/drawing/index.ts | 11 + src/api/design/volumeCatalog/index.ts | 2 +- src/components/Process/submitVerify.vue | 2 +- src/views/design/Professional/indexEdit.vue | 429 ++++++++++-------- src/views/design/appointment/index.vue | 5 +- src/views/design/designChange/index.vue | 10 +- src/views/design/designChange/indexEdit.vue | 50 +- src/views/design/drawing/index.vue | 267 +++++++---- .../volumeCatalog/comm/TableContent.vue | 19 +- src/views/design/volumeCatalog/index.vue | 82 +++- .../materialReceive/index.vue | 32 +- 12 files changed, 599 insertions(+), 330 deletions(-) diff --git a/src/api/design/designChange/index.ts b/src/api/design/designChange/index.ts index 41e1e39..b3a1229 100644 --- a/src/api/design/designChange/index.ts +++ b/src/api/design/designChange/index.ts @@ -61,3 +61,23 @@ export const delDesignChange = (id: string | number | Array) => method: 'delete' }); }; +/** + * 获取卷册号 + * @param id + */ +export const blueprintList = (id) => { + return request({ + url: '/design/designChange/blueprint/' + id, + method: 'get' + }); +}; +/** + * 获取卷册列表 + * @param id + */ +export const catalogList = (id) => { + return request({ + url: '/design/designChange/catalogList/' + id, + method: 'get' + }); +}; diff --git a/src/api/design/drawing/index.ts b/src/api/design/drawing/index.ts index 279df5d..cb4852b 100644 --- a/src/api/design/drawing/index.ts +++ b/src/api/design/drawing/index.ts @@ -82,3 +82,14 @@ export const volumeFileViewerList = (id) => { method: 'get' }); }; +/** + * 查阅图纸列表 + * @param id + */ +export const joinList = (params) => { + return request({ + url: '/design/volumeFile/joinList', + method: 'get', + params + }); +}; diff --git a/src/api/design/volumeCatalog/index.ts b/src/api/design/volumeCatalog/index.ts index ed38967..955d78c 100644 --- a/src/api/design/volumeCatalog/index.ts +++ b/src/api/design/volumeCatalog/index.ts @@ -65,7 +65,7 @@ export const addVolumeCatalog = (data: VolumeCatalogForm) => { * 修改卷册目录 * @param data */ -export const updateVolumeCatalog = (data: VolumeCatalogForm) => { +export const updateVolumeCatalog = (data) => { return request({ url: '/design/volumeCatalog', method: 'put', diff --git a/src/components/Process/submitVerify.vue b/src/components/Process/submitVerify.vue index 1484570..f3c3948 100644 --- a/src/components/Process/submitVerify.vue +++ b/src/components/Process/submitVerify.vue @@ -34,7 +34,7 @@ - + + + + - + diff --git a/src/views/design/volumeCatalog/index.vue b/src/views/design/volumeCatalog/index.vue index 7594c60..a627908 100644 --- a/src/views/design/volumeCatalog/index.vue +++ b/src/views/design/volumeCatalog/index.vue @@ -63,23 +63,17 @@ 查看文件 - + @@ -156,21 +151,28 @@ - + - - - @@ -220,6 +215,18 @@ + + + + + + + 注意:请上传pdf格式文件 +
+ 确定 + 取消 +
+
@@ -253,9 +260,14 @@ const TableContentRef = ref>(); const single = ref(true); const multiple = ref(true); const activeName = ref('3'); +const uploadOpinionVisible = ref(false); const design = ref(''); const total = ref(0); const dialogHistory = ref(false); +const opinion = ref(''); +const updateRow = ref({ + opinion: [] +}); // 获取用户 store const userStore = useUserStoreHook(); // 从 store 中获取项目列表和当前选中的项目 @@ -422,7 +434,31 @@ const handleView = (row?: any) => { /** 上传文件按钮操作 */ const uploadVisible = ref(false); const viewVisible = ref(false); +// 上传外部意见 +const handleOpinion = (row) => { + uploadOpinionVisible.value = true; + updateRow.value = row; + opinion.value = ''; +}; +const onSubmitOpinion = async () => { + // 提交外部意见 + if (opinion.value.length == 0) { + proxy.$modal.msgError('请上传外部意见'); + return; + } + await updateVolumeCatalog({ ...updateRow.value }); +}; +const onUploadSuccess = (fileList, res) => { + if (res.code == 200) { + updateRow.value.opinion = res.data.url; + } +}; const handleUpload = async (row?: any) => { + // 判断是否有专业和设计人员 + if (!row?.principalName || !row?.specialtyName) { + proxy?.$modal.warning('请先选择专业和设计人员'); + return; + } resetUploadForm(); uploadForm.volumeCatalogId = row.design; userList.value = row.noViewerList; diff --git a/src/views/materials/materialsEquipment/materialReceive/index.vue b/src/views/materials/materialsEquipment/materialReceive/index.vue index da5e7ce..7e975bf 100644 --- a/src/views/materials/materialsEquipment/materialReceive/index.vue +++ b/src/views/materials/materialsEquipment/materialReceive/index.vue @@ -145,8 +145,13 @@
- - + + @@ -155,12 +160,12 @@ :prop="`itemList.${index}.specification`" :rules="{ required: true, message: '规格不能为空', trigger: 'blur' }" > - + - + @@ -169,7 +174,7 @@ :prop="`itemList.${index}.quantity`" :rules="{ required: true, message: '数量不能为空', trigger: 'blur' }" > - + @@ -178,7 +183,7 @@ :prop="`itemList.${index}.acceptedQuantity`" :rules="{ required: true, message: '验收数量不能为空', trigger: 'blur' }" > - + @@ -345,7 +350,20 @@ const data = reactive({ supplierUnit: undefined, params: {} }, - rules: {} + rules: { + // 物资采购单 + docId: [{ required: true, message: '请选择物资采购单', trigger: 'change' }], + // 材料来源 + materialSource: [{ required: true, message: '请选择材料来源', trigger: 'change' }], + // 表单编号 + formCode: [{ required: true, message: '请输入表单编号', trigger: 'blur' }], + // 采购单编号 + docCode: [{ required: true, message: '请输入采购单编号', trigger: 'blur' }], + // 供货单位 + supplierUnit: [{ required: true, message: '请输入供货单位', trigger: 'blur' }], + // 订货单位 + orderingUnit: [{ required: true, message: '请输入订货单位', trigger: 'blur' }] + } }); const { queryParams, form, rules } = toRefs(data);