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

[Mod 0000]系统首页联网状态统计接口对接

wangkeyi пре 1 месец
родитељ
комит
a262fce146

+ 48 - 76
src/views/dashboard/SealedGoaf/configurable.data.sealedGoaf.ts

@@ -376,7 +376,7 @@ export const testConfigSealedGoaf: Config[] = [
     pageType: 'sealed_goaf',
     moduleData: {
       header: {
-        show: true,
+        show: false,
         readFrom: '',
         selector: {
           show: true,
@@ -410,24 +410,24 @@ export const testConfigSealedGoaf: Config[] = [
       board: [
         {
           type: 'B',
-          readFrom: '',
+          readFrom: 'goafAccessCount.totalNum',
           layout: 'val-top',
           items: [
             {
               label: '应接入',
-              value: '243',
+              value: '${yjTotal}',
             },
             {
               label: '在线',
-              value: '242',
+              value: '${zxTotal}',
             },
             {
-              label: '中断',
-              value: '1',
+              label: '离线',
+              value: '${lxTotal}',
             },
             {
               label: '未接入',
-              value: '0',
+              value: '${wjTotal}',
             },
           ],
         },
@@ -439,27 +439,27 @@ export const testConfigSealedGoaf: Config[] = [
         {
           type: 'B',
           // parser: 'json',
-          readFrom: 'tableArray',
+          readFrom: 'goafAccessCount.accessDetails',
           columns: [
             {
               name: ' ',
-              prop: 'index',
+              prop: 'name',
             },
             {
               name: '应接入',
-              prop: 'yjr',
+              prop: 'yjNum',
             },
             {
               name: '在线',
-              prop: 'zx',
+              prop: 'zxNum',
             },
             {
-              name: '中断',
-              prop: 'zd',
+              name: '离线',
+              prop: 'lxNum',
             },
             {
               name: '未接入',
-              prop: 'wjr',
+              prop: 'wjNum',
             },
           ],
         },
@@ -467,68 +467,40 @@ export const testConfigSealedGoaf: Config[] = [
       list: [],
       complex_list: [],
       preset: [],
-      mock: {
-        isOnline: [
-          {
-            pos: '生成矿井',
-            boardArray: [
-              {
-                label: '低风险',
-                value: '243',
-              },
-              {
-                label: '一般风险',
-                value: '242',
-              },
-              {
-                label: '较高风险',
-                value: '1',
-              },
-              {
-                label: '高风险',
-                value: '0',
-              },
-            ],
-            tableArray: [
-              {
-                index: '执法一处',
-                yjr: '84',
-                zx: '84',
-                zd: '0',
-                wjr: '0',
-              },
-              {
-                index: '执法二处',
-                yjr: '65',
-                zx: '65',
-                zd: '0',
-                wjr: '0',
-              },
-              {
-                index: '执法三处',
-                yjr: '35',
-                zx: '35',
-                zd: '0',
-                wjr: '0',
-              },
-              {
-                index: '执法四处',
-                yjr: '25',
-                zx: '25',
-                zd: '0',
-                wjr: '0',
-              },
-              {
-                index: '执法五处',
-                yjr: '34',
-                zx: '33',
-                zd: '1',
-                wjr: '0',
-              },
-            ],
-          },
-        ],
-      },
+      // mock: {
+      //   isOnline: [
+      //     {
+      //       pos: '生成矿井',
+      //       boardArray: [
+      //         {
+      //           label: '低风险',
+      //           value: '243',
+      //         },
+      //         {
+      //           label: '一般风险',
+      //           value: '242',
+      //         },
+      //         {
+      //           label: '较高风险',
+      //           value: '1',
+      //         },
+      //         {
+      //           label: '高风险',
+      //           value: '0',
+      //         },
+      //       ],
+      //       tableArray: [
+      //         {
+      //           name: '执法一处',
+      //           yjNum: '84',
+      //           zxNum: '84',
+      //           lxNum: '0',
+      //           wjNum: '0',
+      //         },
+      //       ],
+      //     },
+      //   ],
+      // },
     },
     showStyle: {
       size: 'width:440px;height:560px;',

+ 33 - 4
src/views/dashboard/SealedGoaf/index.vue

@@ -18,7 +18,7 @@
   import { computed, onMounted, onUnmounted, ref, watch } from 'vue';
   import { useInitConfigs, useInitPage } from '@/components/Configurable/hooks/useInit';
   import { testConfigSealedGoaf } from './configurable.data.sealedGoaf';
-  import { getCoalSeamFireNum, getMineProductionStatusNum, getOverLimitNum, getGoafAlarmNum } from './sealedGoaf.api';
+  import { getCoalSeamFireNum, getMineProductionStatusNum, getOverLimitNum, getGoafAlarmNum, getGoafAccessCount } from './sealedGoaf.api';
   import ModulePrimary from '/@/components/Configurable/ModulePrimary.vue';
   import { useGlobSetting } from '/@/hooks/setting';
   import { useAppStore } from '/@/store/modules/app';
@@ -45,16 +45,28 @@
         alarmTotal: 0, // 所有alarm总计
       },
     },
+    goafAccessCount: {
+      accessDetails: null,
+      totalNum:  {
+        yjTotal: 0, // 应接入总计
+        zxTotal: 0, // 在线总计
+        lxTotal: 0, // 离线总计
+        wjTotal: 0, // 未接入总计
+
+      }
+    },
   }); // 所有数据汇总
 
   async function fetchHomeData() {
     try {
       // 2. 异步获取所有接口数据(并行请求提升性能)
-      const [coalSeamFireData, productionStatusData, overLimitData, goafAlarmData] = await Promise.all([
+      const [coalSeamFireData, productionStatusData, overLimitData, goafAlarmData, accessDetails] = await Promise.all([
         getCoalSeamFireNum(appStore.simpleMapParams), // 煤层自燃倾向数据
         getMineProductionStatusNum(appStore.simpleMapParams), // 当日生产状态数据
         getOverLimitNum(appStore.simpleMapParams), // 超限数据(可按需处理)
         getGoafAlarmNum(appStore.simpleMapParams), // 执法处风险统计
+        getGoafAccessCount({}), //联网状态接入统计
+
         // getGoafAlarmLevel(appStore.simpleMapParams),
         // getGoafAlarmLevel({ mineCode: '100008' }),
       ]);
@@ -81,9 +93,26 @@
       // console.log('所有alarm的总合计:', alarmTotal);
       const totalNum = { productionNum: totalProductionNum, alarmNum: { alarm1Total, alarm2Total, alarm3Total, alarm4Total, alarmTotal } };
 
+      // 联网状态模块数据处理:遍历 accessDetails 数组,累加所有项的 yjNum、zxNum、lxNum、wjNum
+      let yjTotal = 0;
+      let zxTotal = 0;
+      let lxTotal = 0;
+      let wjTotal = 0;
+
+      if (Array.isArray(accessDetails)) {
+        accessDetails.forEach(item => {
+          yjTotal += Number(item.yjNum) || 0;
+          zxTotal += Number(item.zxNum) || 0;
+          lxTotal += Number(item.lxNum) || 0;
+          wjTotal += Number(item.wjNum) || 0;
+        });
+      }
+      const goafAccessCount = {
+        accessDetails,
+        totalNum: { yjTotal, zxTotal, lxTotal, wjTotal }
+      };
       // 3. 把接口数据赋值给响应式变量(备用)
-      mineData.value = { coalSeamFireData, productionStatusData, overLimitData, goafAlarmData, totalNum };
-
+      mineData.value = { coalSeamFireData, productionStatusData, overLimitData, goafAlarmData, totalNum, goafAccessCount};
       // 5. 更新页面数据
       updateData(mineData.value);
     } catch (error) {

+ 8 - 0
src/views/dashboard/SealedGoaf/sealedGoaf.api.ts

@@ -6,6 +6,7 @@ enum Api {
   getOverLimitNum = '/province/homeData/getOverLimitNum',
   getGoafAlarmNum = '/province/homeData/getGoafAlarmNum',
   getGoafAlarmLevel = '/province/homeData/getGoafAlarmLevel',
+  getGoafAccessCount = '/province/mineData/getGoafAccessCount',
 }
 
 // 查询煤层自燃倾向数量统计
@@ -43,3 +44,10 @@ export const getGoafAlarmLevel = (params) =>
     url: Api.getGoafAlarmLevel,
     params,
   });
+
+  // 接入统计
+  export const getGoafAccessCount = (params) =>
+    defHttp.get({
+      url: Api.getGoafAccessCount,
+    });
+