Просмотр исходного кода

[Mod 0000] 关联分析全系页面进行了对接细则优化

houzekong 1 неделя назад
Родитель
Сommit
46326ced95

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

@@ -52,7 +52,7 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  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';
@@ -74,13 +74,12 @@
     { label: '闭内气体涌出', value: '-' },
     { label: '闭外气体涌出', value: '-' },
   ]);
-  const tableQueryParams = ref({}); // 存储表格查询参数的响应式变量
-  const wrappedGetMineData = async (params) => {
-    // 缓存参数(这就是getMineData实际请求的参数)
-    tableQueryParams.value = { ...params };
+
+  const wrappedGetMineData = (params) => {
     // 调用原接口
-    return await getProvinceAlarm(params);
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
   };
+
   // 注册实时数据表格
   const { tableContext: ctxRealtime, onExportXls: onExportXlsTime } = useListPage({
     tableProps: {
@@ -205,8 +204,9 @@
 
   const [registerHistoryTable, historyTable] = tableContext;
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
+      ...p,
       alarmType: 'leakageAlarm',
     };
     const result = await getProvinceAlarmNum(params);
@@ -214,11 +214,6 @@
     boardData.value[2].value = result.alarmLevel2;
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2;
   }
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
 </script>
 
 <style lang="less" scoped>

+ 10 - 9
src/views/analysis/warningAnalysis/autoFireAnalysis/index.vue

@@ -58,7 +58,7 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  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';
@@ -98,11 +98,16 @@
     },
   ]);
 
+  const wrappedGetMineData = (params) => {
+    // 调用原接口
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
+  };
+
   // 注册实时数据表格
   const { tableContext: ctxRealtime, onExportXls: onExportXlsTime } = useListPage({
     tableProps: {
       columns,
-      api: getProvinceAlarm,
+      api: wrappedGetMineData,
       formConfig: {
         labelWidth: 120,
         schemas: [
@@ -225,9 +230,10 @@
 
   const [registerHistoryTable, historyTable] = tableContext;
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
-      alarmType: 'fireAlarm',
+      ...p,
+      alarmType: 'leakageAlarm',
     };
     const result = await getProvinceAlarmNum(params);
     boardData.value[1].value = result.alarmLevel1;
@@ -236,11 +242,6 @@
     boardData.value[4].value = result.alarmLevel4;
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4;
   }
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
 </script>
 
 <style lang="less" scoped>

+ 9 - 8
src/views/analysis/warningAnalysis/autoFireOutAnalysis/index.vue

@@ -58,7 +58,7 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  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';
@@ -98,11 +98,16 @@
     },
   ]);
 
+  const wrappedGetMineData = (params) => {
+    // 调用原接口
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
+  };
+
   // 注册实时数据表格
   const { tableContext: ctxRealtime, onExportXls: onExportXlsTime } = useListPage({
     tableProps: {
       columns,
-      api: getProvinceAlarm,
+      api: wrappedGetMineData,
       formConfig: {
         labelWidth: 120,
         schemas: [
@@ -225,8 +230,9 @@
 
   const [registerHistoryTable, historyTable] = tableContext;
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
+      ...p,
       alarmType: 'fireAlarmOut',
     };
     const result = await getProvinceAlarmNum(params);
@@ -236,11 +242,6 @@
     boardData.value[4].value = result.alarmLevel4;
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4;
   }
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
 </script>
 
 <style lang="less" scoped>

+ 9 - 8
src/views/analysis/warningAnalysis/fireAreaJudgeAnalysis/index.vue

@@ -56,7 +56,7 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  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';
@@ -88,11 +88,16 @@
     },
   ]);
 
+  const wrappedGetMineData = (params) => {
+    // 调用原接口
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
+  };
+
   // 注册实时数据表格
   const { tableContext: ctxRealtime, onExportXls: onExportXlsTime } = useListPage({
     tableProps: {
       columns,
-      api: getProvinceAlarm,
+      api: wrappedGetMineData,
       formConfig: {
         labelWidth: 120,
         schemas: [
@@ -216,8 +221,9 @@
 
   const [registerHistoryTable, historyTable] = tableContext;
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
+      ...p,
       alarmType: 'unsealAlarm',
     };
     const result = await getProvinceAlarmNum(params);
@@ -225,11 +231,6 @@
     boardData.value[2].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4;
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4 + result.alarmLevel5;
   }
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
 </script>
 
 <style lang="less" scoped>

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

@@ -56,7 +56,7 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  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';
@@ -96,11 +96,16 @@
     },
   ]);
 
+  const wrappedGetMineData = (params) => {
+    // 调用原接口
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
+  };
+
   // 注册实时数据表格
   const { tableContext: ctxRealtime, onExportXls: onExportXlsTime } = useListPage({
     tableProps: {
       columns,
-      api: getProvinceAlarm,
+      api: wrappedGetMineData,
       formConfig: {
         labelWidth: 120,
         schemas: [
@@ -224,8 +229,9 @@
 
   const [registerHistoryTable, historyTable] = tableContext;
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
+      ...p,
       alarmType: 'overLimitAlarm',
     };
     const result = await getProvinceAlarmNum(params);
@@ -235,11 +241,6 @@
     boardData.value[4].value = result.alarmLevel4;
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4;
   }
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
 </script>
 
 <style lang="less" scoped>

+ 9 - 8
src/views/analysis/warningAnalysis/pressureDiffAnalysis/index.vue

@@ -71,7 +71,7 @@
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  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';
@@ -111,11 +111,16 @@
     },
   ]);
 
+  const wrappedGetMineData = (params) => {
+    // 调用原接口
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
+  };
+
   // 注册实时数据表格
   const { tableContext: ctxRealtime, onExportXls: onExportXlsTime } = useListPage({
     tableProps: {
       columns,
-      api: getProvinceAlarm,
+      api: wrappedGetMineData,
       formConfig: {
         labelWidth: 120,
         schemas: [
@@ -239,8 +244,9 @@
 
   const [registerHistoryTable, historyTable] = tableContext;
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
+      ...p,
       alarmType: 'sourcePressureAlarm',
     };
     const result = await getProvinceAlarmNum(params);
@@ -250,11 +256,6 @@
     boardData.value[4].value = result.alarmLevel4;
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4;
   }
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
 </script>
 
 <style lang="less" scoped>

+ 14 - 13
src/views/analysis/warningAnalysis/sealRiskJudgeAnalysis/index.vue

@@ -49,11 +49,11 @@
     </TabPane>
   </Tabs>
   <!-- 弹窗组件 -->
-  <RealtimeDetailsModal @register="registerRealtimeModal" @close="resume" />
+  <RealtimeDetailsModal @register="registerRealtimeModal" />
 </template>
 
 <script setup lang="ts">
-  import { ref, onMounted } from 'vue';
+  import { ref } from 'vue';
   import { BasicTable, useTable } from '/@/components/Table';
   import { Tabs, TabPane, message } from 'ant-design-vue';
   import MiniBoard from '/@/components/Configurable/detail/MiniBoard.vue';
@@ -62,7 +62,7 @@
   import { columns } from './sealRiskJudgeAnalysis.data';
   import { getProvinceAlarm, getProvinceAlarmHistory, getProvinceAlarmNum } from './sealRiskJudge.api';
   import RealtimeDetailsModal from '/@/views/monitor/sealedMonitor/components/RealtimeDetailsModal.vue';
-  import { useIntervalFn } from '@vueuse/core';
+  // import { useIntervalFn } from '@vueuse/core';
   import { useModal } from '/@/components/Modal';
   import { useInitForm } from '../../common/analysis';
   import { historicalFormSchema } from '/@/views/monitor/sealedMonitor/monitor.data';
@@ -96,10 +96,15 @@
     },
   ]);
 
+  const wrappedGetMineData = (params) => {
+    // 调用原接口
+    return Promise.all([getAlarmTotalData(params), getProvinceAlarm(params)]).then(([__, res]) => res);
+  };
+
   // 注册实时数据表格
-  const [registerTable, { reload }] = useTable({
+  const [registerTable] = useTable({
     columns,
-    api: getProvinceAlarm,
+    api: wrappedGetMineData,
     formConfig: {
       labelWidth: 120,
       schemas: [
@@ -219,11 +224,12 @@
   // 打开弹窗方法(区分实时/历史)
   const openModal = (record) => {
     openRealtimeModal(true, record);
-    pause();
+    // pause();
   };
 
-  async function getAlarmTotalData() {
+  async function getAlarmTotalData(p) {
     const params = {
+      ...p,
       alarmType: 'explosionAlarm',
     };
     const result = await getProvinceAlarmNum(params);
@@ -234,12 +240,7 @@
     boardData.value[0].value = result.alarmLevel1 + result.alarmLevel2 + result.alarmLevel3 + result.alarmLevel4;
   }
 
-  const { pause, resume } = useIntervalFn(() => reload({ silence: true }), 60000);
-
-  onMounted(() => {
-    // 页面挂载时的逻辑
-    getAlarmTotalData();
-  });
+  // const { pause, resume } = useIntervalFn(() => reload({ silence: true }), 60000);
 </script>
 
 <style lang="less" scoped>

+ 7 - 1
src/views/monitor/sealedMonitor/components/RealtimeDetailsModal.vue

@@ -4,9 +4,12 @@
     title="密闭监测详情"
     width="1400px"
     :bodyStyle="{ padding: `0 20px 0 20px` }"
+    :showOkBtn="false"
+    cancelText="返回"
     @register="register"
     @close="okHandler"
     @ok="okHandler"
+    @cancel="okHandler"
   >
     <!-- 基础信息栏(修改布局:每行4列,共两行) -->
     <div class="base-info">
@@ -124,7 +127,10 @@
       function fetchDetailData() {
         const { deptId, goafId } = dataRef.value;
         getGoafData({ deptId, goafId }).then(({ records }) => {
-          dataRef.value = last(records);
+          dataRef.value = {
+            ...dataRef.value,
+            ...last(records),
+          };
           push(dataRef.value);
         });
       }