Browse Source

校核功能优化:批量提交校核弹窗改为勾选框+全选+查询,记录校核和校核详情页部件名称前缀显示

xzc 1 ngày trước cách đây
mục cha
commit
0e20455542

+ 13 - 3
yudao-ui-admin-vue3/src/views/pressure2/boilerchecker/AuditCheckRecord.vue

@@ -9,7 +9,7 @@
           :key="report.reportId"
           @click="() => handleSelectedReport(report)"
           plain
-        >{{ report.reportName }}</el-button>
+        >{{ getReportDisplayName(report) }}</el-button>
       </div>
       <div class="right">
         <template v-if="pageType === 'check'">
@@ -78,7 +78,7 @@
                     multiple
                     clearable
                   >
-                    <el-option v-for="item in getRecheckList" :key="item.reportId" :value="item.reportId" :label="item.reportName"/>
+                    <el-option v-for="item in getRecheckList" :key="item.reportId" :value="item.reportId" :label="getReportDisplayName(item)"/>
                   </el-select>
                 </el-form-item>
                 <el-form-item label="退回阶段" v-if="showRollbackStage">
@@ -148,7 +148,7 @@
           multiple
           clearable
         >
-          <el-option v-for="item in getRecheckList" :key="item.reportId" :value="item.reportId" :label="item.reportName"/>
+          <el-option v-for="item in getRecheckList" :key="item.reportId" :value="item.reportId" :label="getReportDisplayName(item)"/>
         </el-select>
         <template #footer>
           <el-button type="primary" @click="handlePassConfirm">确 定</el-button>
@@ -230,6 +230,16 @@ import ReportListUploadModal from '@/views/pressure2/boilerchecker/components/re
     'majorIssueCluesNotice': '重大线索通知审核'
   }
   const getRouteName = computed(() => route.name)
+  // 获取检验项目显示名称(电站锅炉内检有部件的项目,名称前加"部件名-")
+  const getReportDisplayName = (report: any): string => {
+    if (!report) return ''
+    const partName = report.partName
+    const reportName = report.reportName || ''
+    if (partName) {
+      return `${partName}-${reportName}`
+    }
+    return reportName
+  }
   // 校核人选择对话框状态
   const isShowAuditDialog = ref(false)
 

+ 19 - 2
yudao-ui-admin-vue3/src/views/pressure2/boilerchecker/recordCheck.vue

@@ -203,10 +203,10 @@
       <el-table-column label="检验项目" align="center" prop="reportName" min-width="150px">
         <template #default="{row}">
           <template v-if="!row.recheckList || !row.recheckList?.length">
-            <el-row style="justify-content: center;">{{ row.reportName }}</el-row>
+            <el-row style="justify-content: center;">{{ getReportDisplayName(row, row.reportId, row.reportName) }}</el-row>
           </template>
           <template v-else>
-            <el-row style="justify-content: center;" v-for="item in row.recheckList" :key="JSON.stringify(item)">{{ item.reportName }}</el-row>
+            <el-row style="justify-content: center;" v-for="item in row.recheckList" :key="JSON.stringify(item)">{{ getReportDisplayName(row, item.reportId, item.reportName) }}</el-row>
           </template>
         </template>
       </el-table-column>
@@ -655,6 +655,23 @@ const getReportTypeIcon = (reportType) => {
   }
 }
 
+// 获取检验项目显示名称(电站锅炉内检有部件的项目,名称前加"部件名-")
+const getReportDisplayName = (row: any, reportId: string, reportName: string): string => {
+  // 优先使用子报告自身的 partName,其次使用 row 的 partName
+  let partName = ''
+  if (row?.recheckList && row.recheckList.length) {
+    const item = row.recheckList.find((r: any) => r.reportId === reportId)
+    partName = item?.partName || ''
+  }
+  if (!partName) {
+    partName = row?.partName || ''
+  }
+  if (partName) {
+    return `${partName}-${reportName || ''}`
+  }
+  return reportName || ''
+}
+
 watch(() => route.path, async () => {
   if (route.path === '/gljy/record-check/boiler') {
     await getList()