From 74448f9a9f1f8cb779023db3ea9eda762fc6ad0a Mon Sep 17 00:00:00 2001 From: zhuguifei <zhuguifei@zhuguifeideiMac.local> Date: 星期五, 28 二月 2025 14:29:42 +0800 Subject: [PATCH] 维修工接单、维修 --- eims-ui/apps/web-antd/src/views/eims/repair-res/repair-res-drawer.vue | 132 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 132 insertions(+), 0 deletions(-) diff --git a/eims-ui/apps/web-antd/src/views/eims/repair-res/repair-res-drawer.vue b/eims-ui/apps/web-antd/src/views/eims/repair-res/repair-res-drawer.vue index a38953a..2313d88 100644 --- a/eims-ui/apps/web-antd/src/views/eims/repair-res/repair-res-drawer.vue +++ b/eims-ui/apps/web-antd/src/views/eims/repair-res/repair-res-drawer.vue @@ -10,6 +10,7 @@ import { useVbenForm } from '#/adapter/form'; import { addRepairRes, getRepairRes, updateRepairRes } from '#/api/eims/repair-res'; import { getDeptTree, userList } from '#/api/system/user'; +import { REPAIR_RES_STATUS } from '#/constants/dict'; import reqModal from '#/views/eims/components/repair-req-modal.vue'; import { drawerSchema } from './data'; @@ -44,6 +45,7 @@ drawerApi.drawerLoading(true); const { id } = drawerApi.getData() as { id?: number | string }; + const { action } = drawerApi.getData() as { action?: string }; const { resUser } = drawerApi.getData() as { resUser?: number | string }; const { resDept } = drawerApi.getData() as { resDept?: number | string }; isUpdate.value = !!id; @@ -70,11 +72,141 @@ await setupUserOptions(record.resDept); } } + showAllColumns(); + // 鏍规嵁action 鏄剧ず闅愯棌鍒� + if (action && action === REPAIR_RES_STATUS.WEIXIU) { + await formApi.setValues({ 'status': REPAIR_RES_STATUS.WEIXIU }); + showWeixiuColumns(); + } else if (action && action === REPAIR_RES_STATUS.WANCHENG) { + await formApi.setValues({ 'status': REPAIR_RES_STATUS.WANCHENG }); + showWanchengColumns(); + } drawerApi.drawerLoading(false); } }); +function showAllColumns() { + const show = true; + formApi.updateSchema([ + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resReason' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resHandle' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resPrevent' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'status' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'endTime' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resDept' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resUser' + } + ]); +} +function showWeixiuColumns() { + const show = false; + formApi.updateSchema([ + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resReason' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resHandle' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resPrevent' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'status' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'endTime' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resDept' + }, + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'resUser' + } + ]); +} +function showWanchengColumns() { + const show = false; + formApi.updateSchema([ + { + dependencies: { + show: () => show, + triggerFields: [''] + }, + fieldName: 'status' + } + ]); +} + const [ReqModal, reqModalApi] = useVbenModal({ connectedComponent: reqModal, draggable: true, -- Gitblit v1.9.3