|
|
@@ -2,26 +2,29 @@
|
|
|
<div class="page">
|
|
|
<HeaderComponent title="换热流程"></HeaderComponent>
|
|
|
<div class="content_page">
|
|
|
- <M1Tank title="M1" :valveArr="valveArr_M1" :waterLevelValue="30" :pressureValue="0.444"
|
|
|
- :temperatureValue="110" :iconSize="400" :weightValue="100" class="hr_m1Tank"></M1Tank>
|
|
|
- <Z1Tank title="Z1" :valveArr="valveArr_Z1" :iconSize="300" class="hr_z1Tank"></Z1Tank>
|
|
|
-
|
|
|
- <J1Tank title="J1" :valveArr="valveArr_J1" :iconSize="300" class="hr_j1Tank"></J1Tank>
|
|
|
- <J1Tank title="J2" :valveArr="valveArr_J2" :iconSize="300" class="hr_j2Tank"></J1Tank>
|
|
|
- <M1Tank title="M2" valvePosition="right" :valveArr="valveArr_M2" :waterLevelValue="30"
|
|
|
- :pressureValue="0.444" :temperatureValue="110" :iconSize="400" :weightValue="100" class="hr_m2Tank">
|
|
|
+ <M1Tank title="M1" :valveArr="valveMap.M1" :iconSize="400" :waterLevelValue="30"
|
|
|
+ :pressureValue="sensorHelper.getDataArrByCode('M1yl')[0]" :temperatureValue="30" :weightValue="300"
|
|
|
+ class="hr_m1Tank">
|
|
|
+ </M1Tank>
|
|
|
+ <Z1Tank title="Z1" :valveArr="valveMap.Z1" :iconSize="300" class="hr_z1Tank"></Z1Tank>
|
|
|
+
|
|
|
+ <J1Tank title="J1" :valveArr="valveMap.J1" :iconSize="300" class="hr_j1Tank"></J1Tank>
|
|
|
+ <J1Tank title="J2" :valveArr="valveMap.J2" :iconSize="300" class="hr_j2Tank"></J1Tank>
|
|
|
+ <M1Tank title="M2" valvePosition="right" :valveArr="valveMap.M2" :waterLevelValue="30"
|
|
|
+ :pressureValue="sensorHelper.getDataArrByCode('M2yl')[0]" :temperatureValue="110" :iconSize="400"
|
|
|
+ :weightValue="100" class="hr_m2Tank">
|
|
|
</M1Tank>
|
|
|
<!-- 泵 -->
|
|
|
<div class="pumps">
|
|
|
<!-- lb3 -->
|
|
|
<div class="lb3_pos">
|
|
|
- <Pump title="换热出液泵" :hz="5000" :pumpStatus="正转" :iconSize="100"></Pump>
|
|
|
+ <Pump title="换热出液泵" :pumpDataArr="pumpHelper.getDataArrByCode('LB3')" :iconSize="100"></Pump>
|
|
|
</div>
|
|
|
<div class="lb4_pos">
|
|
|
- <Pump title="LB4" :hz="5000" :pumpStatus="正转" pumpDirection="R"></Pump>
|
|
|
+ <Pump title="LB4" :pumpDataArr="pumpHelper.getDataArrByCode('LB4')" pumpDirection="R"></Pump>
|
|
|
</div>
|
|
|
<div class="lb7_pos">
|
|
|
- <Pump title="换热进液泵" :hz="5000" :pumpStatus="正转" pumpDirection="R"></Pump>
|
|
|
+ <Pump title="换热进液泵" :pumpDataArr="pumpHelper.getDataArrByCode('LB7')" pumpDirection="R"></Pump>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="icon_others">
|
|
|
@@ -181,9 +184,22 @@ import Z1Tank from '@/components/DCS/Z1TankComponent.vue';
|
|
|
import Pump from '@/components/DCS/PumpComponent.vue';
|
|
|
import { useValveHelper } from '@/hooks/useValveHelper'
|
|
|
import { useRouter } from 'vue-router'
|
|
|
-import { computed } from 'vue';
|
|
|
+import { computed, onMounted, onBeforeUnmount } from 'vue';
|
|
|
|
|
|
+import { stompClient } from '@/utils/ws/stompClient';
|
|
|
+import { updateZTPageConfig } from '@/api/dcs/configurePage';
|
|
|
const router = useRouter()
|
|
|
+
|
|
|
+const pageCode = 'heatExchange';
|
|
|
+const pageParams = {
|
|
|
+ "M1": ['N1', 'N2', 'N4', 'N6', 'N7', 'N8', 'N9', 'N10', 'N11'],
|
|
|
+ "M2": ['N12', 'N14', 'N15', 'N16', 'N17', 'N18', 'N20'],
|
|
|
+ "J1": ['D1', 'D2'],
|
|
|
+ "J2": ['D3', 'D4'],
|
|
|
+ "Z1": ['N21'],
|
|
|
+ "PUMP": ['LB3', 'LB4', 'LB7'],
|
|
|
+ "SENSORS": ['M1yl', 'M1cz', 'M1wd', 'M2yl', 'M2cz', 'M2wd'],
|
|
|
+}
|
|
|
//M1罐阀门状态
|
|
|
const valveArr_M1 = [
|
|
|
{
|
|
|
@@ -302,17 +318,91 @@ const valveArr_Z1 = [
|
|
|
},
|
|
|
]
|
|
|
|
|
|
+//传感器状态
|
|
|
+const sensorArr = [
|
|
|
+ {
|
|
|
+ code: 'M1yl',
|
|
|
+ value: [0.5],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'M1cz',
|
|
|
+ value: [100],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'M1wd',
|
|
|
+ value: [30],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'M2yl',
|
|
|
+ value: [0.5],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'M2cz',
|
|
|
+ value: [100],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'M2wd',
|
|
|
+ value: [30],
|
|
|
+ },
|
|
|
+]
|
|
|
+const pumpArr = [
|
|
|
+ {
|
|
|
+ code: 'LB3',
|
|
|
+ value: [0, 3],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'LB4',
|
|
|
+ value: [0, 3],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ code: 'LB7',
|
|
|
+ value: [0, 3],
|
|
|
+ },
|
|
|
+]
|
|
|
+const valveMap = reactive({
|
|
|
+ M1: valveArr_M1,
|
|
|
+ M2: valveArr_M2,
|
|
|
+ J1: valveArr_J1,
|
|
|
+ J2: valveArr_J2,
|
|
|
+ Z1: valveArr_Z1,
|
|
|
+ PUMP: pumpArr,
|
|
|
+ SENSORS: sensorArr,
|
|
|
+})
|
|
|
+onMounted(() => {
|
|
|
+ updateZTPageConfig(pageCode, pageParams).then(res => {
|
|
|
+ // console.log('页面配置成功:', res);
|
|
|
+ }).catch(err => {
|
|
|
+ console.log('页面配置失败:', err);
|
|
|
+ });
|
|
|
+ stompClient.subscribeToPage(pageCode, (data) => {
|
|
|
+ valveMap.M1 = Object.values(data.M1)
|
|
|
+ valveMap.M2 = Object.values(data.M2)
|
|
|
+ valveMap.J1 = Object.values(data.J1)
|
|
|
+ valveMap.J2 = Object.values(data.J2)
|
|
|
+ valveMap.Z1 = Object.values(data.Z1)
|
|
|
+ valveMap.PUMP = Object.values(data.PUMP)
|
|
|
+ valveMap.SENSORS = Object.values(data.SENSORS)
|
|
|
+ // console.log('页面数据更新:', data.SENSORS);
|
|
|
+ });
|
|
|
+});
|
|
|
+
|
|
|
+onBeforeUnmount(() => {
|
|
|
+ // 页面销毁时取消订阅
|
|
|
+ stompClient.unsubscribeFromPage(pageCode);
|
|
|
+});
|
|
|
+
|
|
|
//所有阀门状态
|
|
|
-const valveArr = [...new Set([
|
|
|
- ...valveArr_M1,
|
|
|
- ...valveArr_M2,
|
|
|
- ...valveArr_J1,
|
|
|
- ...valveArr_J2,
|
|
|
- ...valveArr_Z1,
|
|
|
-])];
|
|
|
+const valveArr = computed(() => [...new Set([
|
|
|
+ ...valveMap.M1,
|
|
|
+ ...valveMap.M2,
|
|
|
+ ...valveMap.J1,
|
|
|
+ ...valveMap.J2,
|
|
|
+ ...valveMap.Z1,
|
|
|
+])]);
|
|
|
|
|
|
const { getValveAndStatus, getValveOrStatus } = useValveHelper(valveArr)
|
|
|
-
|
|
|
+const pumpHelper = useValveHelper(computed(() => valveMap.PUMP))
|
|
|
+const sensorHelper = useValveHelper(computed(() => valveMap.SENSORS))
|
|
|
//n18处管道流通状态
|
|
|
const N18_status = computed(() => {
|
|
|
return getValveAndStatus('N18') && getValveOrStatus('N16', 'N17')
|