From 6648e74a007254e167c5508de5d25402cd4bb63b Mon Sep 17 00:00:00 2001
From: zhuguifei <zhuguifei@zhuguifeideiMac.local>
Date: 星期一, 10 三月 2025 16:39:50 +0800
Subject: [PATCH] 完成保养工单明细

---
 eims-ui/apps/web-antd/src/views/eims/repair-res/index.vue |   32 ++++++++++++++++++--------------
 1 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/eims-ui/apps/web-antd/src/views/eims/repair-res/index.vue b/eims-ui/apps/web-antd/src/views/eims/repair-res/index.vue
index 5a7d45b..226fdcf 100644
--- a/eims-ui/apps/web-antd/src/views/eims/repair-res/index.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/repair-res/index.vue
@@ -12,17 +12,18 @@
 import { Modal, Popconfirm, Space } from 'ant-design-vue';
 
 import { useVbenVxeGrid, vxeCheckboxChecked, type VxeGridProps, vxeSortEvent } from '#/adapter/vxe-table';
+import { listRepairRecord } from '#/api/eims/repair-record';
 import { delRepairRes, listRepairRes, repairResExport } from '#/api/eims/repair-res';
 import { getDeptTree, userList } from '#/api/system/user';
 import { REPAIR_RES_STATUS } from '#/constants/dict';
 import { commonDownloadExcel } from '#/utils/file/download';
+import BasisSubTable from '#/views/eims/components/basis-sub-table.vue';
 
-import RepairRecord from '../repair-record/index.vue';
+import fbPreviewDrawer from '../repair-fb/fb-preview-drawer.vue';
+import repairFbDrawer from '../repair-fb/repair-fb-drawer.vue';
+import { columns as repairRecordCol } from '../repair-record/data';
 import { columns, querySchema } from './data';
 import repairResDrawer from './repair-res-drawer.vue';
-
-import repairFbDrawer from '../repair-fb/repair-fb-drawer.vue'
-import fbPreviewDrawer from '../repair-fb/fb-preview-drawer.vue'
 
 const userStore = useUserStore();
 const userId = userStore.userInfo?.userId;
@@ -106,7 +107,7 @@
 });
 
 function handleAddFb(record: Recordable<any>) {
-  repairFbDrawerApi.setData({ resId: record.id, resCode: record.resCode, fbUser: userId, fbDept: deptId});
+  repairFbDrawerApi.setData({ resId: record.id, resCode: record.resCode, fbUser: userId, fbDept: deptId });
   repairFbDrawerApi.open();
 }
 
@@ -114,7 +115,6 @@
   fbPreviewDrawerApi.setData({ id: record.fbId });
   fbPreviewDrawerApi.open();
 }
-
 
 function handleAdd() {
   repairResDrawerApi.setData({ resUser: userId, resDept: deptId });
@@ -133,22 +133,22 @@
 
 const { hasAccessByRoles } = useAccess();
 const isSuperAdmin = computed(() => hasAccessByRoles(['superadmin']));
-
+const isLeader = computed(() => hasAccessByRoles(['leader']));
 
 function pingjiaAdd(row: any) {
-  return (isSuperAdmin.value || row.reqUser === userId) && row.status === REPAIR_RES_STATUS.WANCHENG && !row.fbId;
+  return (isSuperAdmin.value || isLeader.value || row.reqUser === userId) && row.status === REPAIR_RES_STATUS.WANCHENG && !row.fbId;
 }
 
 function pingjiaDetail(row: any) {
-  return (isSuperAdmin.value || row.reqUser === userId) && row.status === REPAIR_RES_STATUS.WANCHENG && row.fbId;
+  return (isSuperAdmin.value || isLeader.value || row.reqUser === userId) && row.status === REPAIR_RES_STATUS.WANCHENG && row.fbId;
 }
 
 function weixiu(row: any) {
-  return (isSuperAdmin.value || row.resUser === userId) && row.status === REPAIR_RES_STATUS.YIJIEDAN;
+  return (isSuperAdmin.value || isLeader.value || row.resUser === userId) && row.status === REPAIR_RES_STATUS.YIJIEDAN;
 }
 
 function wancheng(row: any) {
-  return (isSuperAdmin.value || row.resUser === userId) && row.status === REPAIR_RES_STATUS.WEIXIU;
+  return (isSuperAdmin.value || isLeader.value || row.resUser === userId) && row.status === REPAIR_RES_STATUS.WEIXIU;
 }
 
 async function handleDelete(row: Recordable<any>) {
@@ -272,8 +272,12 @@
 
         <template #action="{ row }">
           <Space>
-            <ghost-button v-if="pingjiaAdd(row)" class="btn-success" v-access:code="['eims:repairRes:edit']" @click.stop="handleAddFb(row)"> 璇勪环 </ghost-button>
-            <ghost-button v-if="pingjiaDetail(row)" class="btn-success" v-access:code="['eims:repairRes:edit']" @click.stop="handleDetailFb(row)"> 闃呰瘎 </ghost-button>
+            <ghost-button v-if="pingjiaAdd(row)" class="btn-success" v-access:code="['eims:repairRes:edit']" @click.stop="handleAddFb(row)">
+              璇勪环
+            </ghost-button>
+            <ghost-button v-if="pingjiaDetail(row)" class="btn-success" v-access:code="['eims:repairRes:edit']" @click.stop="handleDetailFb(row)">
+              闃呰瘎
+            </ghost-button>
             <ghost-button
               v-if="weixiu(row)"
               class="btn-success"
@@ -303,7 +307,7 @@
           </Space>
         </template>
       </BasicTable>
-      <RepairRecord :res-id="resId" class="h-1/3" table-title="缁翠慨璁板綍" />
+      <BasisSubTable :columns="repairRecordCol" :list-api="listRepairRecord" :req-value="resId" class="h-1/3" req-key="resId" title="鎿嶄綔璁板綍" />
     </div>
     <RepairResDrawer @reload="tableApi.query()" />
     <RepairFbDrawer @reload="tableApi.query()" />

--
Gitblit v1.9.3