Преглед изворни кода

[Mod 0000] 省局按修改意见进行修改

houzekong пре 2 дана
родитељ
комит
3090881865
20 измењених фајлова са 324 додато и 121 уклоњено
  1. 3 3
      src/layouts/default/feature/SimpleMap.vue
  2. 2 2
      src/layouts/default/feature/hooks/popup.ts
  3. 6 6
      src/views/analysis/warningAnalysis/airLeakStatus/airLeakStatus.data.ts
  4. 8 7
      src/views/analysis/warningAnalysis/airLeakStatus/index.vue
  5. 18 8
      src/views/analysis/warningAnalysis/autoFireAnalysis/autoFireAnalysis.data.ts
  6. 16 21
      src/views/analysis/warningAnalysis/autoFireOutAnalysis/autoFireOutAnalysis.data.ts
  7. 8 13
      src/views/analysis/warningAnalysis/overlimitAlarm/index.vue
  8. 73 5
      src/views/analysis/warningAnalysis/overlimitAlarm/overlimitAlarm.data.ts
  9. 5 13
      src/views/analysis/warningAnalysis/overlimitAlarmOut/index.vue
  10. 39 6
      src/views/analysis/warningAnalysis/overlimitAlarmOut/overlimitAlarm.data.ts
  11. 1 1
      src/views/analysis/warningAnalysis/reportAnalysis/index.vue
  12. 2 2
      src/views/analysis/warningAnalysis/sealRiskJudgeAnalysis/index.vue
  13. 51 0
      src/views/analysis/warningAnalysis/sealRiskJudgeAnalysis/sealRiskJudgeAnalysis.data.ts
  14. 15 2
      src/views/dashboard/SealedGoaf/configurable.data.sealedGoaf.ts
  15. 1 1
      src/views/dashboard/SealedGoaf/index.vue
  16. 2 2
      src/views/dashboard/basicInfo/minesInfo/minesInfo.data.ts
  17. 5 5
      src/views/monitor/sealedMonitor/components/RealtimeDetailsModal.vue
  18. 1 0
      src/views/monitor/sealedMonitor/hooks/form.ts
  19. 4 3
      src/views/monitor/sealedMonitor/index.vue
  20. 64 21
      src/views/monitor/sealedMonitor/monitor.data.ts

+ 3 - 3
src/layouts/default/feature/SimpleMap.vue

@@ -100,9 +100,9 @@
     circles.hoverFeatureState();
     circles.hoverPopup(
       (f) => {
-        if (!f.properties.isLeaf) {
-          return generateSimplePopup(f.properties);
-        }
+        // if (!f.properties.isLeaf) {
+        return generateSimplePopup(f.properties);
+        // }
       },
       {
         maxWidth: '300px',

+ 2 - 2
src/layouts/default/feature/hooks/popup.ts

@@ -1,7 +1,7 @@
 export function generateSimplePopup(data: any): string {
-  const { name } = data;
+  const { name, mineName } = data;
 
   return `
-    <div class="vjmapgis-popup-content__strong">${name}</div>
+    <div class="vjmapgis-popup-content__strong">${name || mineName}</div>
   `;
 }

+ 6 - 6
src/views/analysis/warningAnalysis/airLeakStatus/airLeakStatus.data.ts

@@ -77,12 +77,12 @@ export const columns: BasicColumn[] = [
     dataIndex: 'createTime',
     width: 100,
   },
-  {
-    title: '是否解决',
-    dataIndex: 'content',
-    customRender: () => '未解决',
-    width: 100,
-  },
+  // {
+  //   title: '是否解决',
+  //   dataIndex: 'content',
+  //   customRender: () => '未解决',
+  //   width: 100,
+  // },
 ];
 
 // 历史数据相关

+ 8 - 7
src/views/analysis/warningAnalysis/airLeakStatus/index.vue

@@ -72,7 +72,7 @@
   const boardData = ref([
     { label: '存在风险情况数量', value: '-' },
     { label: '闭内气体涌出', value: '-' },
-    { label: '闭外气体涌', value: '-' },
+    { label: '闭外气体涌', value: '-' },
   ]);
 
   const wrappedGetMineData = (params) => {
@@ -103,12 +103,13 @@
       useSearchForm: true,
       bordered: true,
       showIndexColumn: false,
-      actionColumn: {
-        width: 80,
-        title: '操作',
-        dataIndex: 'action',
-        slots: { customRender: 'action' },
-      },
+      showActionColumn: false,
+      // actionColumn: {
+      //   width: 80,
+      //   title: '操作',
+      //   dataIndex: 'action',
+      //   slots: { customRender: 'action' },
+      // },
     },
     exportConfig: {
       url: '/ventanaly-province/province/alarm/exportProvinceAlarmReal',

+ 18 - 8
src/views/analysis/warningAnalysis/autoFireAnalysis/autoFireAnalysis.data.ts

@@ -51,9 +51,19 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
   {
-    title: 'C2H4(ppm)',
-    dataIndex: 'c2h4Val',
+    title: 'CO(ppm)',
+    width: 100,
+    dataIndex: 'coVal',
+  },
+  {
+    title: 'CO2(%)',
+    width: 100,
+    dataIndex: 'co2Val',
+  },
+  {
+    title: 'CH4(%)',
     width: 100,
+    dataIndex: 'ch4Val',
   },
   {
     title: 'C2H2(ppm)',
@@ -61,18 +71,18 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
   {
-    title: 'CO浓度(ppm)',
-    dataIndex: 'coVal',
+    title: 'C2H4(ppm)',
+    dataIndex: 'c2h4Val',
     width: 100,
   },
   {
-    title: 'CO日增率(%)',
-    dataIndex: 'coRzl',
+    title: 'O2(%)',
+    dataIndex: 'o2Val',
     width: 100,
   },
   {
-    title: 'O2浓度(%)',
-    dataIndex: 'o2Val',
+    title: 'CO日增率(%)',
+    dataIndex: 'coRzl',
     width: 100,
   },
   {

+ 16 - 21
src/views/analysis/warningAnalysis/autoFireOutAnalysis/autoFireOutAnalysis.data.ts

@@ -51,40 +51,35 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
   {
-    title: 'C2H4(ppm)',
-    dataIndex: 'c2h4ValOut',
+    title: 'CH4(%)',
+    dataIndex: 'ch4Val',
     width: 100,
   },
   {
-    title: 'C2H2(ppm)',
-    dataIndex: 'c2h2ValOut',
+    title: 'CO(ppm)',
+    dataIndex: 'coVal',
     width: 100,
   },
   {
-    title: 'CO浓度(ppm)',
-    dataIndex: 'coValOut',
-    width: 100,
-  },
-  {
-    title: 'CO日增率(%)',
-    dataIndex: 'coRzlOut',
-    width: 100,
-  },
-  {
-    title: 'O2浓度(%)',
-    dataIndex: 'o2ValOut',
+    title: 'O2(%)',
+    dataIndex: 'o2Val',
     width: 100,
   },
+  // {
+  //   title: 'CO日增率(%)',
+  //   dataIndex: 'coRzlOut',
+  //   width: 100,
+  // },
   {
     title: '温度(℃)',
     dataIndex: 'temperatureOut',
     width: 100,
   },
-  {
-    title: '温差(℃)',
-    dataIndex: 'temperatureDiff',
-    width: 100,
-  },
+  // {
+  //   title: '温差(℃)',
+  //   dataIndex: 'temperatureDiff',
+  //   width: 100,
+  // },
   {
     title: '风险分析',
     dataIndex: 'alarmName',

+ 8 - 13
src/views/analysis/warningAnalysis/overlimitAlarm/index.vue

@@ -3,7 +3,7 @@
   <!-- 新增Tabs组件区分实时/历史数据 -->
   <Tabs v-model:activeKey="activeTab" type="line" class="common-page-tabs">
     <TabPane tab="实时监测" key="realtime">
-      <div class="board-info">
+      <!-- <div class="board-info">
         <MiniBoard
           v-for="(item, index) in boardData"
           :key="index"
@@ -13,7 +13,7 @@
           layout="label-top"
           class="board-item"
         />
-      </div>
+      </div> -->
       <!-- 实时数据表格 -->
       <BasicTable @register="registerRealtimeTable" :scroll="{ x: 'max-content' }" :style="{ padding: 0 }">
         <template #action="{ record }">
@@ -59,17 +59,19 @@
   import { ref } from 'vue';
   import { BasicTable } from '/@/components/Table';
   import { Tabs, TabPane, message } from 'ant-design-vue';
-  import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
+  // import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
   import { SvgIcon } from '/@/components/Icon';
   // 引入模拟数据
-  import { columns } from './overlimitAlarm.data';
+  import { columns, schemas } from './overlimitAlarm.data';
   import { getProvinceAlarm, getProvinceAlarmHistory, getProvinceAlarmNum } from './overlimit.api';
   import { useInitForm } from '../../common/analysis';
   import { BasicModal } from '/@/components/Modal/index';
   import { historicalFormSchema } from '/@/views/monitor/sealedMonitor/monitor.data';
   // import { useIntervalFn } from '@vueuse/core';
   import { useListPage } from '/@/hooks/system/useListPage';
+  import { useRoute } from 'vue-router';
 
+  const route = useRoute();
   // 激活的Tab页签
   const activeTab = ref('realtime');
 
@@ -107,16 +109,9 @@
       columns,
       api: wrappedGetMineData,
       formConfig: {
+        model: { alarmFiled: route.query.alarmFiled },
         labelWidth: 120,
-        schemas: [
-          {
-            label: '煤矿名称',
-            field: 'deptId',
-            component: 'MineCascader', // 自定义组件名
-            colProps: { span: 6 },
-            rules: [],
-          },
-        ],
+        schemas,
         showAdvancedButton: false,
         schemaGroupNames: ['常规查询'],
       },

+ 73 - 5
src/views/analysis/warningAnalysis/overlimitAlarm/overlimitAlarm.data.ts

@@ -1,4 +1,4 @@
-import { BasicColumn } from '/@/components/Table';
+import { BasicColumn, FormSchema } from '/@/components/Table';
 import { alarmCellRender } from '/@/views/monitor/sealedMonitor/monitor.data';
 
 export const boardData = [
@@ -51,17 +51,32 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
   {
-    title: 'CO浓度(ppm)',
+    title: 'CO(ppm)',
+    width: 100,
     dataIndex: 'coVal',
+  },
+  {
+    title: 'CO2(%)',
     width: 100,
+    dataIndex: 'co2Val',
   },
   {
-    title: 'CO日增率(%)',
-    dataIndex: 'coRzl',
+    title: 'CH4(%)',
     width: 100,
+    dataIndex: 'ch4Val',
   },
   {
-    title: 'O2浓度(%)',
+    title: 'C2H2(ppm)',
+    dataIndex: 'c2h2Val',
+    width: 100,
+  },
+  {
+    title: 'C2H4(ppm)',
+    dataIndex: 'c2h4Val',
+    width: 100,
+  },
+  {
+    title: 'O2(%)',
     dataIndex: 'o2Val',
     width: 100,
   },
@@ -94,3 +109,56 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
 ];
+
+export const schemas: FormSchema[] = [
+  {
+    label: '煤矿名称',
+    field: 'deptId',
+    component: 'MineCascader', // 自定义组件名
+    colProps: { span: 6 },
+    rules: [],
+  },
+  {
+    label: '超限判定条件',
+    field: 'alarmFiled',
+    component: 'Select', // 自定义组件名
+    colProps: { span: 6 },
+    componentProps: {
+      options: [
+        {
+          label: '甲烷',
+          value: 'ch4Val',
+        },
+        {
+          label: '氧气',
+          value: 'o2Val',
+        },
+        {
+          label: '一氧化碳',
+          value: 'coVal',
+        },
+        {
+          label: '二氧化碳',
+          value: 'co2Val',
+        },
+        {
+          label: '乙烯',
+          value: 'c2h4Val',
+        },
+        {
+          label: '乙炔',
+          value: 'c2h2Val',
+        },
+        {
+          label: '压差',
+          value: 'sourcePressure',
+        },
+        {
+          label: '温度',
+          value: 'temperature',
+        },
+      ],
+    },
+    rules: [],
+  },
+];

+ 5 - 13
src/views/analysis/warningAnalysis/overlimitAlarmOut/index.vue

@@ -3,7 +3,7 @@
   <!-- 新增Tabs组件区分实时/历史数据 -->
   <Tabs v-model:activeKey="activeTab" type="line" class="common-page-tabs">
     <TabPane tab="实时监测" key="realtime">
-      <div class="board-info">
+      <!-- <div class="board-info">
         <MiniBoard
           v-for="(item, index) in boardData"
           :key="index"
@@ -13,7 +13,7 @@
           layout="label-top"
           class="board-item"
         />
-      </div>
+      </div> -->
       <!-- 实时数据表格 -->
       <BasicTable @register="registerRealtimeTable" :scroll="{ x: 'max-content' }" :style="{ padding: 0 }">
         <template #action="{ record }">
@@ -59,10 +59,10 @@
   import { ref } from 'vue';
   import { BasicTable } from '/@/components/Table';
   import { Tabs, TabPane, message } from 'ant-design-vue';
-  import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
+  // import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
   import { SvgIcon } from '/@/components/Icon';
   // 引入模拟数据
-  import { columns } from './overlimitAlarm.data';
+  import { columns, schemas } from './overlimitAlarm.data';
   import { getProvinceAlarm, getProvinceAlarmHistory, getProvinceAlarmNum } from './overlimit.api';
   import { useInitForm } from '../../common/analysis';
   import { BasicModal } from '/@/components/Modal/index';
@@ -108,15 +108,7 @@
       api: wrappedGetMineData,
       formConfig: {
         labelWidth: 120,
-        schemas: [
-          {
-            label: '煤矿名称',
-            field: 'deptId',
-            component: 'MineCascader', // 自定义组件名
-            colProps: { span: 6 },
-            rules: [],
-          },
-        ],
+        schemas,
         showAdvancedButton: false,
         schemaGroupNames: ['常规查询'],
       },

+ 39 - 6
src/views/analysis/warningAnalysis/overlimitAlarmOut/overlimitAlarm.data.ts

@@ -1,4 +1,4 @@
-import { BasicColumn } from '/@/components/Table';
+import { BasicColumn, FormSchema } from '/@/components/Table';
 import { alarmCellRender } from '/@/views/monitor/sealedMonitor/monitor.data';
 
 export const boardData = [
@@ -55,11 +55,11 @@ export const columns: BasicColumn[] = [
     dataIndex: 'coVal',
     width: 100,
   },
-  {
-    title: 'CO日增率(%)',
-    dataIndex: 'coRzl',
-    width: 100,
-  },
+  // {
+  //   title: 'CO日增率(%)',
+  //   dataIndex: 'coRzl',
+  //   width: 100,
+  // },
   {
     title: 'O2浓度(%)',
     dataIndex: 'o2Val',
@@ -94,3 +94,36 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
 ];
+
+export const schemas: FormSchema[] = [
+  {
+    label: '煤矿名称',
+    field: 'deptId',
+    component: 'MineCascader', // 自定义组件名
+    colProps: { span: 6 },
+    rules: [],
+  },
+  {
+    label: '超限判定条件',
+    field: 'alarmFiled',
+    component: 'Select', // 自定义组件名
+    colProps: { span: 6 },
+    componentProps: {
+      options: [
+        {
+          label: '氧气',
+          value: 'o2Val',
+        },
+        {
+          label: '一氧化碳',
+          value: 'coVal',
+        },
+        {
+          label: '温度',
+          value: 'temperature',
+        },
+      ],
+    },
+    rules: [],
+  },
+];

+ 1 - 1
src/views/analysis/warningAnalysis/reportAnalysis/index.vue

@@ -3,7 +3,7 @@
   <div class="monitoring-page">
     <!-- 新增Tabs组件区分晚报/历史数据 -->
     <Tabs v-model:activeKey="activeTab" type="line" class="common-page-tabs">
-      <TabPane tab="晚报监测" key="realtime">
+      <TabPane tab="数据中断" key="realtime">
         <!-- 晚报数据表格 -->
         <BasicTable @register="registerRealtimeTable" :scroll="{ x: 'max-content' }" :style="{ padding: 0 }">
           <template #action="{ record }">

+ 2 - 2
src/views/analysis/warningAnalysis/sealRiskJudgeAnalysis/index.vue

@@ -49,7 +49,7 @@
     </TabPane>
   </Tabs>
   <!-- 弹窗组件 -->
-  <RealtimeDetailsModal @register="registerRealtimeModal" />
+  <RealtimeDetailsModal :width="1000" :modal-details-data="modalDetailsData" @register="registerRealtimeModal" />
 </template>
 
 <script setup lang="ts">
@@ -59,7 +59,7 @@
   import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
   import { SvgIcon } from '/@/components/Icon';
   // 引入模拟数据
-  import { columns } from './sealRiskJudgeAnalysis.data';
+  import { columns, modalDetailsData } from './sealRiskJudgeAnalysis.data';
   import { getProvinceAlarm, getProvinceAlarmHistory, getProvinceAlarmNum } from './sealRiskJudge.api';
   import RealtimeDetailsModal from '/@/views/monitor/sealedMonitor/components/RealtimeDetailsModal.vue';
   // import { useIntervalFn } from '@vueuse/core';

+ 51 - 0
src/views/analysis/warningAnalysis/sealRiskJudgeAnalysis/sealRiskJudgeAnalysis.data.ts

@@ -1,3 +1,4 @@
+import { ModuleDataChart } from '/@/components/Configurable/types';
 import { BasicColumn } from '/@/components/Table';
 import { alarmCellRender } from '/@/views/monitor/sealedMonitor/monitor.data';
 
@@ -99,3 +100,53 @@ export const columns: BasicColumn[] = [
     width: 100,
   },
 ];
+
+interface ModalDetailsData {
+  basicInfo: Record<string, any>[];
+  board: Record<string, any>[];
+  gasConcentrationConfig?: ModuleDataChart;
+  pressureConfig?: ModuleDataChart;
+  blastDeltaConfig?: Record<string, any>;
+}
+export const modalDetailsData: ModalDetailsData = {
+  basicInfo: [
+    {
+      label: '煤矿名称',
+      value: 'mineName',
+    },
+    {
+      label: '设备位置',
+      value: 'devicePos',
+    },
+    {
+      label: '爆炸预警等级',
+      value: 'alarmLevel',
+      customRender({ record }) {
+        return alarmCellRender(record.explosionAlarm);
+      },
+    },
+  ],
+  board: [
+    {
+      label: 'CO(ppm)',
+      value: 'coVal',
+    },
+    {
+      label: 'CH4(%)',
+      value: 'ch4Val',
+    },
+    {
+      label: 'C2H4(ppm)',
+      value: 'c2h4Val',
+    },
+    {
+      label: 'C2H2(ppm)',
+      value: 'c2h2Val',
+    },
+    {
+      label: 'O2(%)',
+      value: 'o2Val',
+    },
+  ],
+  blastDeltaConfig: {},
+};

+ 15 - 2
src/views/dashboard/SealedGoaf/configurable.data.sealedGoaf.ts

@@ -240,12 +240,12 @@ export const testConfigSealedGoaf: Config[] = [
             {
               label: '离线',
               value: '${lxTotal}',
-              to: '/basicinfo/mines-info?accessStatus=0',
+              to: '/basicinfo/mines-info?status=0',
             },
             {
               label: '未接入',
               value: '${wjTotal}',
-              to: '/basicinfo/mines-info?status=0',
+              to: '/basicinfo/mines-info?accessStatus=0',
             },
           ],
         },
@@ -368,34 +368,42 @@ export const testConfigSealedGoaf: Config[] = [
             {
               label: '${overLimitData[0].alarmDesc}',
               value: '${overLimitData[0].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[0].alarmFiled}',
             },
             {
               label: '${overLimitData[1].alarmDesc}',
               value: '${overLimitData[1].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[1].alarmFiled}',
             },
             {
               label: '${overLimitData[2].alarmDesc}',
               value: '${overLimitData[2].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[2].alarmFiled}',
             },
             {
               label: '${overLimitData[3].alarmDesc}',
               value: '${overLimitData[3].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[3].alarmFiled}',
             },
             {
               label: '${overLimitData[4].alarmDesc}',
               value: '${overLimitData[4].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[4].alarmFiled}',
             },
             {
               label: '${overLimitData[5].alarmDesc}',
               value: '${overLimitData[5].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[5].alarmFiled}',
             },
             {
               label: '${overLimitData[6].alarmDesc}',
               value: '${overLimitData[6].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[6].alarmFiled}',
             },
             {
               label: '${overLimitData[7].alarmDesc}',
               value: '${overLimitData[7].num}',
+              to: '/warningAnalysis/overlimit-alarm?alarmFiled=${overLimitData[7].alarmFiled}',
             },
           ],
         },
@@ -462,18 +470,22 @@ export const testConfigSealedGoaf: Config[] = [
             {
               label: '低风险',
               value: '${totalNum.alarmNum.alarm1Total}',
+              to: '/sealed?alarmLevel=1',
             },
             {
               label: '一般风险',
               value: '${totalNum.alarmNum.alarm2Total}',
+              to: '/sealed?alarmLevel=2',
             },
             {
               label: '较高风险',
               value: '${totalNum.alarmNum.alarm3Total}',
+              to: '/sealed?alarmLevel=3',
             },
             {
               label: '高风险',
               value: '${totalNum.alarmNum.alarm4Total}',
+              to: '/sealed?alarmLevel=4',
             },
           ],
         },
@@ -490,6 +502,7 @@ export const testConfigSealedGoaf: Config[] = [
             {
               name: ' ',
               prop: 'managementName',
+              path: '/sealed?deptId=${deptId}',
             },
             {
               name: '低风险',

+ 1 - 1
src/views/dashboard/SealedGoaf/index.vue

@@ -172,7 +172,7 @@
           num: arr?.length,
         };
       });
-      console.log('debug coal', coalSeamFireChartData);
+      // console.log('debug coal', coalSeamFireChartData);
 
       // 3. 把接口数据赋值给响应式变量(备用)
       mineData.value = {

+ 2 - 2
src/views/dashboard/basicInfo/minesInfo/minesInfo.data.ts

@@ -159,8 +159,8 @@ export const searchFormSchema: FormSchema[] = [
     component: 'Select',
     componentProps: {
       options: [
-        { label: '接入', value: 1 },
-        { label: '未接入', value: 0 },
+        { label: '接入', value: '1' },
+        { label: '未接入', value: '0' },
       ],
     },
     colProps: { span: 6 },

+ 5 - 5
src/views/monitor/sealedMonitor/components/RealtimeDetailsModal.vue

@@ -33,7 +33,7 @@
 
     <!-- 图表区域 -->
     <div class="chart-area">
-      <div class="chart-item">
+      <div v-if="modalDetailsData.blastDeltaConfig" class="chart-item">
         <div class="chart-title pl-20px">爆炸三角形</div>
         <div class="chart-placeholder">
           <BlastDelta
@@ -44,7 +44,7 @@
           />
         </div>
       </div>
-      <div class="chart-item">
+      <div v-if="modalDetailsData.gasConcentrationConfig" class="chart-item">
         <div class="chart-title pl-20px">气体浓度曲线</div>
         <div class="chart-placeholder">
           <CustomChart
@@ -59,7 +59,7 @@
           />
         </div>
       </div>
-      <div class="chart-item">
+      <div v-if="modalDetailsData.pressureConfig" class="chart-item">
         <div class="chart-title pl-20px">内外压力及压差曲线</div>
         <div class="chart-placeholder">
           <CustomChart
@@ -84,7 +84,6 @@
   import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
   import BlastDelta from '/@/components/Configurable/preset/BlastDelta.vue';
   import CustomChart from '/@/components/Configurable/detail/CustomChart.vue';
-  import { modalDetailsData } from '../monitor.data';
   import { concat, get, isFunction, last, takeRight } from 'lodash-es';
   import { h } from 'vue';
   import { getGoafData } from '../monitor.api';
@@ -96,6 +95,7 @@
     components: { BasicModal, MiniBoard, BlastDelta, CustomChart },
     props: {
       identifyField: propTypes.string.def('goafId'),
+      modalDetailsData: propTypes.any,
     },
     emits: ['close', 'register'],
     setup(props, { emit }) {
@@ -152,7 +152,6 @@
 
       return {
         dataRef,
-        modalDetailsData,
         dataArray,
         get,
         register,
@@ -229,6 +228,7 @@
     padding: 20px;
     border: 1px solid @border-color-base;
     border-radius: 10px;
+    justify-content: space-evenly;
     /* background: black; */
     background: @card-bg-color;
     --image-title-2: url(/@/assets/images/sealedGoaf/module/module-title-2.png);

+ 1 - 0
src/views/monitor/sealedMonitor/hooks/form.ts

@@ -44,6 +44,7 @@ export function useInitForm() {
     goafId,
     rawcode,
     hiscode,
+    route,
     initGoafOptions,
   };
 }

+ 4 - 3
src/views/monitor/sealedMonitor/index.vue

@@ -35,7 +35,7 @@
   </Tabs>
 
   <!-- 实时数据详情弹框 -->
-  <RealtimeDetailsModal @register="registerRealtimeModal" @close="resume" />
+  <RealtimeDetailsModal :modal-details-data="modalDetailsData" @register="registerRealtimeModal" @close="resume" />
   <!-- 历史数据详情弹框 -->
   <!-- <HistoricalDetailsModal @register="registerHistoryModal" @close="resume" /> -->
 </template>
@@ -54,12 +54,13 @@
   import { useModal } from '/@/components/Modal';
   import { useIntervalFn } from '@vueuse/core';
   import { useInitForm } from './hooks/form';
+  import { modalDetailsData } from './monitor.data';
   // import { getGoafList } from '../../system/algorithm/algorithm.api';
 
   // 激活的Tab页签
 
   // 处理矿名选择器相关的逻辑
-  const { departId, goafOptions, goafId, rawcode, hiscode, initGoafOptions } = useInitForm();
+  const { departId, goafOptions, goafId, rawcode, hiscode, route, initGoafOptions } = useInitForm();
   const activeTab = ref('realtime');
   const tableQueryParams = ref({}); // 存储表格查询参数的响应式变量
 
@@ -75,7 +76,7 @@
       api: wrappedGetMineData,
       columns,
       formConfig: {
-        model: { deptId: rawcode },
+        model: { deptId: rawcode, alarmLevel: route.query.alarmLevel },
         schemas: [
           {
             field: 'deptId',

+ 64 - 21
src/views/monitor/sealedMonitor/monitor.data.ts

@@ -5,6 +5,7 @@ import { TreeItem } from '/@/components/Tree/index';
 import { ModuleDataChart } from '/@/components/Configurable/types';
 import { h } from 'vue';
 import { StatusColorEnum } from '/@/enums/jeecgEnum';
+import { map } from 'lodash-es';
 // import { getDictItemsByCode } from '/@/utils/dict';
 // import { get } from 'lodash-es';
 
@@ -76,12 +77,20 @@ export const columns: BasicColumn[] = [
     //   );
     // },
   },
+  {
+    title: '预警等级',
+    dataIndex: 'alarmLevel',
+    width: 100,
+    customRender({ record }) {
+      return alarmCellRender(record, (r) => riskMap[r.alarmLevel] || r.alarmLevel);
+    },
+  },
   {
     title: '闭内自燃发火隐患等级',
     dataIndex: 'fireAlarm',
     width: 100,
     customRender({ record }) {
-      return alarmCellRender(record.fireAlarm, (r) => riskMap[r.alarmName] || r.alarmName);
+      return alarmCellRender(record.fireAlarm);
     },
   },
   {
@@ -89,7 +98,15 @@ export const columns: BasicColumn[] = [
     dataIndex: 'fireAlarmOut',
     width: 100,
     customRender({ record }) {
-      return alarmCellRender(record.fireAlarmOut, (r) => riskMap[r.alarmName] || r.alarmName);
+      return alarmCellRender(record.fireAlarmOut);
+    },
+  },
+  {
+    title: '爆炸预警等级',
+    dataIndex: 'alarmLevel',
+    width: 100,
+    customRender({ record }) {
+      return alarmCellRender(record.explosionAlarm);
     },
   },
   {
@@ -97,7 +114,7 @@ export const columns: BasicColumn[] = [
     dataIndex: 'sourcePressureAlarm',
     width: 100,
     customRender({ record }) {
-      return alarmCellRender(record.sourcePressureAlarm, (r) => riskMap[r.alarmName] || r.alarmName);
+      return alarmCellRender(record.sourcePressureAlarm);
     },
   },
   {
@@ -301,14 +318,25 @@ export const searchFormSchema: FormSchema[] = [
     },
     colProps: { span: 6 },
   },
+  {
+    field: 'alarmLevel',
+    label: '预警等级',
+    component: 'Select',
+    componentProps: {
+      options: map(riskMap, (val, key) => ({ label: val, value: key })),
+    },
+    colProps: { span: 6 },
+  },
 ];
 
-export const modalDetailsData: {
+interface ModalDetailsData {
   basicInfo: Record<string, any>[];
   board: Record<string, any>[];
-  gasConcentrationConfig: ModuleDataChart;
-  pressureConfig: ModuleDataChart;
-} = {
+  gasConcentrationConfig?: ModuleDataChart;
+  pressureConfig?: ModuleDataChart;
+  blastDeltaConfig?: Record<string, any>;
+}
+export const modalDetailsData: ModalDetailsData = {
   basicInfo: [
     {
       label: '煤矿名称',
@@ -318,33 +346,47 @@ export const modalDetailsData: {
       label: '设备位置',
       value: 'devicePos',
     },
-    // {
-    //   label: '所属煤层',
-    //   value: 'coalSeamName',
-    // },
-    // {
-    //   label: '自燃倾向性',
-    //   value: 'Ⅰ类容易自燃',
-    // },
     {
-      label: '自然发火隐患',
+      label: '预警等级',
+      value: 'alarmLevel',
+      customRender({ record }) {
+        return alarmCellRender(record, (r) => riskMap[r.alarmLevel] || r.alarmLevel);
+      },
+    },
+    {
+      label: '闭内自燃发火隐患等级',
       value: 'fireAlarm',
       customRender({ record }) {
-        return alarmCellRender(record.fireAlarm, (r) => riskMap[r.alarmName] || r.alarmName);
+        return alarmCellRender(record.fireAlarm);
       },
     },
     {
-      label: '是否漏风',
-      value: 'leakageAlarm',
+      label: '闭外自燃发火隐患等级',
+      value: 'fireAlarmOut',
       customRender({ record }) {
-        return alarmCellRender(record.leakageAlarm);
+        return alarmCellRender(record.fireAlarmOut);
+      },
+    },
+    {
+      label: '爆炸预警等级',
+      value: 'alarmLevel',
+      customRender({ record }) {
+        return alarmCellRender(record.explosionAlarm);
       },
     },
     {
       label: '压差隐患等级',
       value: 'sourcePressureAlarm',
       customRender({ record }) {
-        return alarmCellRender(record.sourcePressureAlarm, (r) => riskMap[r.alarmName] || r.alarmName);
+        return alarmCellRender(record.sourcePressureAlarm);
+      },
+    },
+    {
+      label: '是否漏风',
+      value: 'leakageAlarm',
+      customRender({ record }) {
+        // return alarmTextRender(record.leakageAlarm?.alarmLevel, record.leakageAlarm?.split('-')[0]);
+        return alarmCellRender(record.leakageAlarm, (r) => r.alarmName.split('-')[1]);
       },
     },
     {
@@ -463,6 +505,7 @@ export const modalDetailsData: {
     ],
     readFrom: '',
   },
+  blastDeltaConfig: {},
 };
 
 // 历史数据相关