Kaynağa Gözat

上报管理调整

xy 2 gün önce
ebeveyn
işleme
5f8f3c54d9

+ 26 - 0
yudao-ui-admin-vue3/src/utils/dict.ts

@@ -74,6 +74,30 @@ export const getBoolDictOptions = (dictType: string) => {
   return dictOption
 }
 
+/**
+ * 合并多个字典选项数组,去除重复的 label,并将 value 设置为 label 的值
+ * 
+ * @param dictOptionsArrays 多个字典选项数组
+ * @returns 合并后的字典选项数组,value 和 label 相同
+ */
+export const mergeDictOptionsWithValueAsLabel = (...dictOptionsArrays: DictDataType[][]) => {
+  // 合并所有数组
+  const combined = dictOptionsArrays.flat()
+  // 使用 Set 跟踪已出现的 label
+  const seenLabels = new Set<string>()
+  // 过滤重复 label 并将 value 设置为 label
+  return combined.filter(item => {
+    if (seenLabels.has(item.label)) {
+      return false
+    }
+    seenLabels.add(item.label)
+    return true
+  }).map(item => ({
+    ...item,
+    value: item.label
+  }))
+}
+
 /**
  * 获取指定字典类型的指定值对应的字典对象
  * @param dictType 字典类型
@@ -267,4 +291,6 @@ export enum DICT_TYPE {
   SYSTEM_EQUIP_BOILER_TYPE = 'system_equip_boiler_type',
   SYSTEM_EQUIP_BOILER_STATUS = 'system_equip_boiler_status',
   PIPE_USE_STATUS = 'PIPE_USE_STATUS',
+  BOILER_CHECK_TYPE = 'pressure_inspection_nature_boiler',
+  PIPE_CHECK_TYPE = 'pressure_inspection_nature_pipe',
 }

+ 14 - 22
yudao-ui-admin-vue3/src/views/pressure2/appointmentconfirmorderCityBureau/ReportCityRecordCity.vue

@@ -46,6 +46,7 @@ import { formatArrayDate, formatDate } from '@/utils/formatTime'
 import { PressureCheckerMyTaskStatusMap, PressureTaskOrderTaskStatus } from '@/utils/constants'
 import { usePageLoading } from '@/hooks/web/usePageLoading'
 import unitContainerForm from '@/components/unitContainerForm/index.vue'
+import {DICT_TYPE, getStrDictOptions, mergeDictOptionsWithValueAsLabel} from "@/utils/dict";
 
 defineOptions({
   name: 'ReportCityRecordCity'
@@ -62,13 +63,13 @@ const searchFormData = ref<Record<string, any>>({})
 const selectRow = ref<AppointmentConfirmOrderRefuseItemVO[]>([]) // table选中的checked
 const equipCategoryList = ref([])
 
-const checkTypeMap = {
-  '100': '定期检验',
-  '200': '年度检查',
-  '300': '超年限检验'
-}
-
-const equipStatusList = dictStore.getDictMap[DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS]
+const boilerStatusTypeOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS)
+const pipeStatusTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_USE_STATUS)
+const boilerCheckTypeOptions = getStrDictOptions(DICT_TYPE.BOILER_CHECK_TYPE)
+const pipeCheckTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_CHECK_TYPE)
+// 合并字典选项并去除重复 label 项,同时将 value 改为 label
+const allEquipTypeOptions = mergeDictOptionsWithValueAsLabel(boilerStatusTypeOptions, pipeStatusTypeOptions)
+const allCheckTypeOptions = mergeDictOptionsWithValueAsLabel(boilerCheckTypeOptions, pipeCheckTypeOptions)
 
 const columns = ref<SmartTableColumn[]>([
   {
@@ -221,19 +222,17 @@ const columns = ref<SmartTableColumn[]>([
   },
   {
     label: '运行状态',
-    prop: 'equipStatus',
+    prop: 'equipStatusName',
     search: {
       sort: 7,
       type: 'select',
-      options: equipStatusList
+      prop: 'equipStatusName',
+      options: allEquipTypeOptions
     },
     fieldProps: {
       headerAlign: 'center',
       align: 'center',
       minWidth: 100
-    },
-    render: (row, value) => {
-      return equipStatusList.find((x) => x.value == value)?.label || '-'
     }
   },
   {
@@ -249,22 +248,15 @@ const columns = ref<SmartTableColumn[]>([
   {
     label: '检验性质',
     width: 120,
-    prop: 'checkType',
+    prop: 'checkTypeName',
     fieldProps: {
       align: 'center'
     },
     search: {
       sort: 7,
       type: 'select',
-      prop: 'checkType',
-      options: [
-        { label: '定期检验', value: '100' },
-        { label: '年度检查', value: '200' },
-        { label: '超年限检验', value: '300' }
-      ]
-    },
-    render: (_row, value) => {
-      return checkTypeMap[value]
+      prop: 'checkTypeName',
+      options: allCheckTypeOptions
     }
   },
   {

+ 19 - 14
yudao-ui-admin-vue3/src/views/pressure2/appointmentconfirmorderCityBureau/audit.vue

@@ -83,7 +83,7 @@ import SmartTable from '@/components/SmartTable/SmartTable'
 import CustomDialog from '@/components/CustomDialog/index.vue'
 import { useRoute } from 'vue-router'
 import unitContainerForm from '@/components/unitContainerForm/index.vue'
-import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
+import {DICT_TYPE, getStrDictOptions, mergeDictOptionsWithValueAsLabel} from '@/utils/dict'
 import { AppointmentConfirmOrderRefuseItemApi } from '@/api/pressure2/appointmentconfirmorderrefuseitem'
 import RejectDialog from '@/views/pressure/components/RejectDialog.vue'
 import { has, get, cloneDeep } from 'lodash'
@@ -96,14 +96,17 @@ const tableLoading = ref<boolean>(false)
 const unitContainerFormRef = ref<InstanceType<typeof unitContainerForm>>()
 const getReasonDictStatus = computed(() => dictStore.getDictMap['refuseInspectedCategory'])
 const route = useRoute()
-// 检验性质映射
-const checkTypeMap = {
-  100: '定期检验',
-  200: '年度检查'
-}
-const equipStatusList = dictStore.getDictMap[DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS]
+
 const equipMainTypeList = dictStore.getDictMap[DICT_TYPE.PRESSURE2_EQUIP_MAIN_TYPE]
 const auditStatusOptions = getStrDictOptions(DICT_TYPE.BPM_AUDIT_STATUS)
+const boilerStatusTypeOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS)
+const pipeStatusTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_USE_STATUS)
+const boilerCheckTypeOptions = getStrDictOptions(DICT_TYPE.BOILER_CHECK_TYPE)
+const pipeCheckTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_CHECK_TYPE)
+// 合并字典选项并去除重复 label 项,同时将 value 改为 label
+const allEquipTypeOptions = mergeDictOptionsWithValueAsLabel(boilerStatusTypeOptions, pipeStatusTypeOptions)
+const allCheckTypeOptions = mergeDictOptionsWithValueAsLabel(boilerCheckTypeOptions, pipeCheckTypeOptions)
+
 const statusMap = {
   '100': 'primary',
   '200': 'success',
@@ -230,28 +233,30 @@ const columns = ref<SmartTableColumn[]>([
   },
   {
     label: '检验性质',
-    prop: 'checkType',
+    prop: 'checkTypeName',
     width: 100,
     fieldProps: {
       align: 'center'
     },
-    render: (_row, value) => checkTypeMap[value]
+    search: {
+      sort: 7,
+      type: 'select',
+      prop: 'checkTypeName',
+      options: allCheckTypeOptions
+    }
   },
   {
     label: '运行状态',
-    prop: 'equipStatus',
+    prop: 'equipStatusName',
     search: {
       sort: 7,
       type: 'select',
-      options: equipStatusList
+      options: allEquipTypeOptions
     },
     fieldProps: {
       headerAlign: 'center',
       align: 'center',
       minWidth: 100
-    },
-    render: (row, value) => {
-      return equipStatusList.find((x) => x.value == value)?.label || '-'
     }
   },
   {

+ 1 - 1
yudao-ui-admin-vue3/src/views/pressure2/appointmentconfirmorderCityBureau/components/RefuseAnnualInspectionRemarkForm.vue

@@ -22,7 +22,7 @@
   </Dialog>
 </template>
 <script setup lang="ts">
-import { AppointmentConfirmOrderRefuseItemApi } from '@/api/pressure/appointmentconfirmorderrefuseitem'
+import { AppointmentConfirmOrderRefuseItemApi } from '@/api/pressure2/appointmentconfirmorderrefuseitem'
 
 /** 约检确认单拒绝设备项目 表单 */
 defineOptions({ name: 'RefuseAnnualInspectionRemarkForm' })

+ 15 - 13
yudao-ui-admin-vue3/src/views/pressure2/appointmentconfirmorderCityBureau/index.vue

@@ -65,6 +65,7 @@ import {
   PressureTaskOrderTaskStatus
 } from '@/utils/constants'
 import { usePageLoading } from '@/hooks/web/usePageLoading'
+import {DICT_TYPE, getStrDictOptions, mergeDictOptionsWithValueAsLabel} from "@/utils/dict";
 
 const unitContainerFormRef = ref<InstanceType<typeof unitContainerForm>>()
 const { loadStart, loadDone } = usePageLoading()
@@ -86,9 +87,16 @@ const checkTypeMap = {
   '200': '年度检查'
 }
 
-const equipStatusList = dictStore.getDictMap[DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS]
 const equipMainTypeList = dictStore.getDictMap[DICT_TYPE.PRESSURE2_EQUIP_MAIN_TYPE]
 
+const boilerStatusTypeOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS)
+const pipeStatusTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_USE_STATUS)
+const boilerCheckTypeOptions = getStrDictOptions(DICT_TYPE.BOILER_CHECK_TYPE)
+const pipeCheckTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_CHECK_TYPE)
+// 合并字典选项并去除重复 label 项,同时将 value 改为 label
+const allEquipTypeOptions = mergeDictOptionsWithValueAsLabel(boilerStatusTypeOptions, pipeStatusTypeOptions)
+const allCheckTypeOptions = mergeDictOptionsWithValueAsLabel(boilerCheckTypeOptions, pipeCheckTypeOptions)
+
 const columns = ref<SmartTableColumn[]>([
   {
     type: 'selection',
@@ -293,11 +301,11 @@ const columns = ref<SmartTableColumn[]>([
   },
   {
     label: '运行状态',
-    prop: 'equipStatus',
+    prop: 'equipStatusName',
     search: {
       sort: 7,
       type: 'select',
-      options: equipStatusList
+      options: allEquipTypeOptions
     },
     fieldProps: {
       headerAlign: 'center',
@@ -305,7 +313,7 @@ const columns = ref<SmartTableColumn[]>([
       minWidth: 100
     },
     render: (row, value) => {
-      return equipStatusList.find((x) => x.value == value)?.label || '-'
+      return value || '-'
     }
   },
   {
@@ -321,21 +329,15 @@ const columns = ref<SmartTableColumn[]>([
   {
     label: '检验性质',
     width: 120,
-    prop: 'checkType',
+    prop: 'checkTypeName',
     fieldProps: {
       align: 'center'
     },
     search: {
       sort: 7,
       type: 'select',
-      prop: 'checkType',
-      options: [
-        { label: '定期检验', value: '100' },
-        { label: '年度检查', value: '200' }
-      ]
-    },
-    render: (_row, value) => {
-      return checkTypeMap[value]
+      prop: 'checkTypeName',
+      options: allCheckTypeOptions
     }
   },
   {

+ 18 - 18
yudao-ui-admin-vue3/src/views/pressure2/appointmentconfirmorderrefuseitem/index.vue

@@ -34,18 +34,18 @@
               </el-form-item>
             </el-col>
             <el-col v-bind="ElColSpanConfig">
-              <el-form-item class="w-full" label="检验性质" prop="checkType">
+              <el-form-item class="w-full" label="检验性质" prop="checkTypeName">
                 <el-select
                   class="w-full"
-                  v-model="queryParams.checkType"
+                  v-model="queryParams.checkTypeName"
                   placeholder="请选择"
                   clearable
                 >
                   <el-option
-                    v-for="(item, key) in checkTypeMap"
-                    :key="key"
-                    :label="item"
-                    :value="key"
+                    v-for="(item) in allEquipTypeOptions"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
                   />
                 </el-select>
               </el-form-item>
@@ -234,9 +234,9 @@
         </el-table-column>
         <el-table-column label="使用证编号" align="center" prop="useRegisterNo" min-width="130" />
         <!-- 检验性质 -->
-        <el-table-column label="检验性质" align="center" prop="checkType" min-width="120">
+        <el-table-column label="检验性质" align="center" prop="checkTypeName" min-width="120">
           <template #default="{ row }">
-            {{ checkTypeMap[row.checkType] }}
+            {{ row.checkTypeName }}
           </template>
         </el-table-column>
         <el-table-column label="状态" align="center" prop="processStatus" min-width="120">
@@ -244,9 +244,9 @@
             {{ processStatusMap[row.processStatus] || '-' }}
           </template>
         </el-table-column>
-         <el-table-column label="运行状态" align="center" prop="equipStatus" min-width="120">
+         <el-table-column label="运行状态" align="center" prop="equipStatusName" min-width="120">
         <template #default="{ row }">
-          {{ row.equipStatus ? equipStatusList.find(item => item.value == row.equipStatus)?.label : '-' }}
+          {{ row.equipStatusName || '-' }}
         </template>
       </el-table-column>
         <el-table-column label="下次检查日期" align="center" prop="nextCheckDate" width="120">
@@ -332,7 +332,7 @@ import {
 } from '@/api/pressure2/appointmentconfirmorderrefuseitem'
 import AppointmentConfirmOrderRefuseItemForm from './AppointmentConfirmOrderRefuseItemForm.vue'
 import EquipmentReportModel from './components/EquipmentReportModel.vue'
-import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
+import {DICT_TYPE, getStrDictOptions, mergeDictOptionsWithValueAsLabel} from '@/utils/dict'
 import { ElMessageBox, ElTable } from 'element-plus'
 import AreaSelect from './components/AreaSelect.vue'
 import { ArrowDown, ArrowUp } from '@element-plus/icons-vue'
@@ -369,17 +369,17 @@ const queryParams = reactive<Recordable>({
 const queryFormRef = ref() // 搜索的表单
 const exportLoading = ref(false) // 导出的加载中
 
-const checkTypeMap = {
-  '100': '定期检验',
-  '200': '年度检查'
-}
-
 const processStatusMap = {
   '0': '待处理',
   '1': '无需处理'
 }
-const equipStatusList = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS)
-const equipCategoryOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_CONTAINER_EQUIP_CATEGORY)
+const boilerStatusTypeOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS)
+const pipeStatusTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_USE_STATUS)
+const boilerCheckTypeOptions = getStrDictOptions(DICT_TYPE.BOILER_CHECK_TYPE)
+const pipeCheckTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_CHECK_TYPE)
+// 合并字典选项并去除重复 label 项,同时将 value 改为 label
+const allEquipTypeOptions = mergeDictOptionsWithValueAsLabel(boilerStatusTypeOptions, pipeStatusTypeOptions)
+const allCheckTypeOptions = mergeDictOptionsWithValueAsLabel(boilerCheckTypeOptions, pipeCheckTypeOptions)
 
 /** 查询列表 */
 const getList = async () => {

+ 36 - 41
yudao-ui-admin-vue3/src/views/pressure2/refuseAnnualInspection/index.vue

@@ -51,31 +51,43 @@
               />
             </el-form-item>
           </el-col>
+          <el-col v-bind="ElColSpanConfig">
+            <el-form-item class="w-full" label="设备种类" prop="equipType">
+              <el-select v-model="queryParams.equipType" placeholder="请选择设备种类" clearable>
+                <el-option
+                  v-for="dict in equipPipeTypeOptions"
+                  :key="dict.value"
+                  :label="dict.label"
+                  :value="dict.value"
+                />
+              </el-select>
+            </el-form-item>
+          </el-col>
 <!--          <el-col v-bind="ElColSpanConfig">-->
-<!--            <el-form-item label="检验性质" prop="checkType" class="w-full">-->
-<!--              <el-select v-model="queryParams.checkType" placeholder="请选择" clearable>-->
+<!--            <el-form-item label="检验性质" prop="checkTypeName" class="w-full">-->
+<!--              <el-select v-model="queryParams.checkTypeName" placeholder="请选择" clearable>-->
 <!--                <el-option-->
-<!--                  v-for="(item, key) in checkTypeMap"-->
-<!--                  :key="key"-->
-<!--                  :label="item"-->
-<!--                  :value="key"-->
+<!--                  v-for="(item) in allCheckTypeOptions"-->
+<!--                  :key="item.value"-->
+<!--                  :label="item.label"-->
+<!--                  :value="item.value"-->
 <!--                />-->
 <!--              </el-select>-->
 <!--            </el-form-item>-->
 <!--          </el-col>-->
-          <el-col v-bind="ElColSpanConfig">
-            <el-form-item class="w-full" label="单位名称" prop="unitName">
-              <el-input
-                class="w-full"
-                v-model="queryParams.unitName"
-                placeholder="请输入单位名称"
-                clearable
-              />
-            </el-form-item>
-          </el-col>
         </el-row>
         <el-collapse-transition>
           <el-row getter="24" v-show="isSearchExpanded">
+            <el-col v-bind="ElColSpanConfig">
+              <el-form-item class="w-full" label="单位名称" prop="unitName">
+                <el-input
+                  class="w-full"
+                  v-model="queryParams.unitName"
+                  placeholder="请输入单位名称"
+                  clearable
+                />
+              </el-form-item>
+            </el-col>
             <el-col v-bind="ElColSpanConfig">
               <el-form-item class="w-full" label="区域" prop="equipDistrict">
                 <AreaSelect
@@ -87,18 +99,6 @@
                 />
               </el-form-item>
             </el-col>
-            <el-col v-bind="ElColSpanConfig">
-              <el-form-item class="w-full" label="设备类型" prop="equipMainType">
-                <el-select v-model="queryParams.equipMainType" placeholder="请选择设备类型" clearable>
-                  <el-option
-                    v-for="dict in equipMainTypeList"
-                    :key="dict.value"
-                    :label="dict.label"
-                    :value="dict.value"
-                  />
-                </el-select>
-              </el-form-item>
-            </el-col>
           </el-row>
         </el-collapse-transition>
       </el-form>
@@ -165,14 +165,14 @@
       </el-table-column>
       <el-table-column label="区域" align="center" prop="equipDistrictName" min-width="130" />
       <el-table-column label="使用证编号" align="center" prop="useRegisterNo" min-width="130" />
-      <el-table-column label="检验性质" align="center" prop="checkType" min-width="120">
+      <el-table-column label="检验性质" align="center" prop="checkTypeName" min-width="120">
         <template #default="{ row }">
-          {{ checkTypeMap[row.checkType] }}
+          {{ row.checkTypeName || '-'}}
         </template>
       </el-table-column>
-      <el-table-column label="运行状态" align="center" prop="equipStatus" min-width="120">
+      <el-table-column label="运行状态" align="center" prop="equipStatusName" min-width="120">
         <template #default="{ row }">
-           {{ row.equipStatus ? equipStatusList.find(item => item.value == row.equipStatus)?.label : '-' }}
+           {{ row.equipStatusName || '-' }}
         </template>
       </el-table-column>
       <el-table-column label="下次检验日期" align="center" prop="nextCheckDate" width="120">
@@ -239,7 +239,7 @@
 import { formatArrayDate } from '@/utils/formatTime'
 import fetchAPis, { ListItemVo } from './index.api'
 import RefuseAnnualInspectionRemarkForm from './RefuseAnnualInspectionRemarkForm.vue'
-import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
+import { DICT_TYPE, getStrDictOptions, mergeDictOptionsWithValueAsLabel } from '@/utils/dict'
 import { ElMessageBox, ElTable } from 'element-plus'
 import unitContainerForm from '@/components/unitContainerForm/index.vue'
 import { ArrowDown, ArrowUp } from '@element-plus/icons-vue'
@@ -251,7 +251,6 @@ defineOptions({ name: 'RefuseAnnualInspection' })
 const router = useRouter()
 const dictStore = useDictStore()
 
-const equipStatusList = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_CONTAINER_STATUS)
 const equipBoilerTypeOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_TYPE)
 const equipMainTypeList = dictStore.getDictMap[DICT_TYPE.PRESSURE2_EQUIP_MAIN_TYPE]
 const equipPipeTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_TYPE)
@@ -293,18 +292,14 @@ const queryParams = reactive<Recordable>({
 const queryFormRef = ref() // 搜索的表单
 const exportLoading = ref(false) // 导出的加载中
 
-const checkTypeMap = {
-  100: '法定',
-  200: '年检',
-  300: '超年限'
-}
-
 import { useDictStore } from '@/store/modules/dict'
 import {
   AppointmentConfirmOrderRefuseItemApi,
   AppointmentConfirmOrderRefuseItemVO
 } from '@/api/pressure2/appointmentconfirmorderrefuseitem'
-import {PressureEquipMainType, PressureEquipMainTypeMap} from "@/utils/constants";
+import {
+  PressureEquipMainType,
+} from "@/utils/constants";
 import download from "@/utils/download";
 const getReasonDictStatus = computed(() => dictStore.getDictMap['refuseInspectedCategory'])
 const getRowReason = (row) => {

+ 19 - 32
yudao-ui-admin-vue3/src/views/pressure2/terminationInspectionReturnRecord/TerminationInspectionReturnRecord.vue

@@ -38,6 +38,7 @@ import { cloneDeep } from 'lodash-es'
 import dayjs from 'dayjs'
 import { useDictStore } from '@/store/modules/dict'
 import {PressureEquipMainTypeMap} from "@/utils/constants";
+import {DICT_TYPE, getStrDictOptions, mergeDictOptionsWithValueAsLabel} from "@/utils/dict";
 const unitContainerFormRef = ref<InstanceType<typeof unitContainerForm>>()
 
 const props = defineProps({
@@ -48,15 +49,19 @@ const props = defineProps({
 })
 const dictStore = useDictStore()
 const equipStatusList = dictStore.getDictMap[DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS]
-
+const equipMainTypeList = dictStore.getDictMap[DICT_TYPE.PRESSURE2_EQUIP_MAIN_TYPE]
 const loading = ref(false)
-const checkTypeMap = {
-  '100': '定期检验',
-  '200': '年度检查',
-  '300': '超年限检验'
-}
 const getReasonDictStatus = computed(() => dictStore.getDictMap['refuseInspectedCategory'])
 
+const boilerStatusTypeOptions = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_STATUS)
+const pipeStatusTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_USE_STATUS)
+const boilerCheckTypeOptions = getStrDictOptions(DICT_TYPE.BOILER_CHECK_TYPE)
+const pipeCheckTypeOptions = getStrDictOptions(DICT_TYPE.PIPE_CHECK_TYPE)
+// 合并字典选项并去除重复 label 项,同时将 value 改为 label
+const allEquipTypeOptions = mergeDictOptionsWithValueAsLabel(boilerStatusTypeOptions, pipeStatusTypeOptions)
+const allCheckTypeOptions = mergeDictOptionsWithValueAsLabel(boilerCheckTypeOptions, pipeCheckTypeOptions)
+
+
 const searchParams = ref<Recordable>({
   businessType: props.businessType
 })
@@ -149,14 +154,14 @@ const tableColumns = ref<SmartTableColumn[]>([
   //   }
   // },
   {
-    label: '设备类',
+    label: '设备类',
     prop: 'equipMainType',
     fieldProps: {
       align: 'center',
       minWidth: 180
     },
     render: (_row: Recordable, value) => {
-      return <>{value ? PressureEquipMainTypeMap[value] : '-'}</>
+      return <>{equipMainTypeList.find((x) => x.value == value)?.label || '-'}</>
     },
   },
   {
@@ -176,50 +181,32 @@ const tableColumns = ref<SmartTableColumn[]>([
   },
   {
     label: '检验性质',
-    prop: 'checkType',
+    prop: 'checkTypeName',
     fieldProps: {
       align: 'center',
       minWidth: 180
     },
-    render: (_row: Recordable, value) => {
-      return <>{value ? checkTypeMap[value] : '-'}</>
-    },
     search: {
       type: 'select',
-      prop: 'checkType',
+      prop: 'checkTypeName',
       sort: 3,
-      options: [
-        {
-          label: '定期检验',
-          value: '100'
-        },
-        {
-          label: '年度检查',
-          value: '200'
-        },
-        {
-          label: '超年限检验',
-          value: '300'
-        }
-      ],
+      options: allCheckTypeOptions,
       fieldProps: {}
     }
   },
   {
     label: '运行状态',
-    prop: 'equipStatus',
+    prop: 'equipStatusName',
     search: {
       sort: 7,
       type: 'select',
-      options: equipStatusList
+      prop: 'equipStatusName',
+      options: allEquipTypeOptions
     },
     fieldProps: {
       headerAlign: 'center',
       align: 'center',
       minWidth: 100
-    },
-    render: (row, value) => {
-      return equipStatusList.find((x) => x.value == value)?.label || '-'
     }
   },
   {