|
@@ -107,8 +107,11 @@
|
|
|
<div class="title-text" style="position: absolute; z-index: 9999; width: 100%; text-align: center">{{
|
|
|
selectData.supplyAirAddr || selectData.strinstallpos || selectData.stationname
|
|
|
}}</div>
|
|
|
- <div class="top-box control-group" v-if="globalConfig?.simulatedPassword">
|
|
|
- <div class="button-box" v-for="(item, index) in modalTypeArr.centerBtnArr" :key="index" @click="showModal(item)">{{ item.value }}</div>
|
|
|
+
|
|
|
+ <div v-if="hasPermission('btn:show')" class="top-box control-group">
|
|
|
+ <template v-for="(item, index) in modalTypeArr.centerBtnArr" :key="index">
|
|
|
+ <div v-if="hasPermission(item.permission)" class="button-box" @click="showModal(item)">{{ item.value }}</div>
|
|
|
+ </template>
|
|
|
<!-- <div class="button-box" v-for="(item, index) in modalTypeArr.centerBtnArr" :key="index" @click="showModal(item)">{{ item.value }}</div> -->
|
|
|
</div>
|
|
|
<div class="data-show-box">
|
|
@@ -323,7 +326,15 @@
|
|
|
style="z-index: 999; position: absolute; top: 100px; right: 15px; width: 100%; height: 100%; margin: auto; pointer-events: none"
|
|
|
>
|
|
|
</div>
|
|
|
- <a-modal v-model:visible="modalIsShow" :centered="true" :title="modalTitle" @ok="handleOk" @cancel="handleCancel" :destroyOnClose="true">
|
|
|
+ <a-modal
|
|
|
+ v-model:visible="modalIsShow"
|
|
|
+ :centered="true"
|
|
|
+ :maskClosable="false"
|
|
|
+ :title="modalTitle"
|
|
|
+ @ok="handleOk"
|
|
|
+ @cancel="handleCancel"
|
|
|
+ :destroyOnClose="true"
|
|
|
+ >
|
|
|
<template #footer v-if="modalType == 'fbm'">
|
|
|
<a-button key="back" @click="handleCancel">取消</a-button>
|
|
|
</template>
|
|
@@ -358,6 +369,21 @@
|
|
|
</a-radio-group>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="" v-if="modalType == 'startFan'">
|
|
|
+ <!-- 不互斥控制 -->
|
|
|
+ <div class="startSmoke-select">
|
|
|
+ <div class="label">主机:</div>
|
|
|
+ <div :class="{ 'button-box': true, 'button-disable': false }" @click="handleOk('Fan1Open')">开启</div>
|
|
|
+ <div :class="{ 'button-box': true, 'button-disable': false }" @click="handleOk('Fan1Stop')">停止</div>
|
|
|
+ <!-- <div :class="{ 'button-box': true, 'button-disable': false }" @click="handleOk('Fan1Reset')">复位</div> -->
|
|
|
+ </div>
|
|
|
+ <div class="startSmoke-select">
|
|
|
+ <div class="label">备机:</div>
|
|
|
+ <div :class="{ 'button-box': true, 'button-disable': false }" @click="handleOk('Fan2Open')">开启</div>
|
|
|
+ <div :class="{ 'button-box': true, 'button-disable': false }" @click="handleOk('Fan2Stop')">停止</div>
|
|
|
+ <!-- <div :class="{ 'button-box': true, 'button-disable': false }" @click="handleOk('Fan2Reset')">复位</div> -->
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<!-- 防爆门控制 -->
|
|
|
<div class="" v-if="modalType == 'fbm'">
|
|
|
<div class="vent-margin-t-20">
|
|
@@ -795,6 +821,7 @@
|
|
|
}
|
|
|
} else if (selectData['Fan2StartStatus'] == 0 && selectData['Fan1StartStatus'] == 0) {
|
|
|
} else if (modalType.value == 'changeSmoke') {
|
|
|
+ //182模拟
|
|
|
// 不听风倒机
|
|
|
if (selectData['Fan1StartStatus'] == 1 && selectData['Fan2StartStatus'] == 0) {
|
|
|
// 由主到备
|
|
@@ -849,6 +876,61 @@
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
+ } else if (modalType.value == 'changeSmoke1') {
|
|
|
+ // 矿上实际
|
|
|
+ if (selectData['Fan1StartStatus'] == 1 && selectData['Fan2StartStatus'] == 0) {
|
|
|
+ // 由主到备
|
|
|
+ // 正启动
|
|
|
+ if (selectData['Fan1FreqForwardRun'] && selectData['Fan1FreqForwardRun'] == 1) {
|
|
|
+ console.log('一键1倒2正启动控制 ');
|
|
|
+ start('CtrlFan1ToFan2')
|
|
|
+ .then(() => {
|
|
|
+ frontMonitorIsShow.value = false;
|
|
|
+ backMonitorIsShow.value = true;
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ createMessage.error('操作失败,请联系管理员');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ // 反启动
|
|
|
+ if (selectData['Fan1FreqReverseRun'] && selectData['Fan1FreqReverseRun'] == 1) {
|
|
|
+ console.log('一键1倒2反启动控制');
|
|
|
+ start('CtrlFan1ToFan2')
|
|
|
+ .then(() => {
|
|
|
+ frontMonitorIsShow.value = false;
|
|
|
+ backMonitorIsShow.value = true;
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ createMessage.error('操作失败,请联系管理员');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else if (selectData['Fan2StartStatus'] == 1 && selectData['Fan1StartStatus'] == 0) {
|
|
|
+ // 由备到主
|
|
|
+ // 正启动
|
|
|
+ if (selectData['Fan2FreqForwardRun'] && selectData['Fan2FreqForwardRun'] == 1) {
|
|
|
+ console.log('一键2倒1正启动控制');
|
|
|
+ start('CtrlFan2ToFan1')
|
|
|
+ .then(() => {
|
|
|
+ frontMonitorIsShow.value = true;
|
|
|
+ backMonitorIsShow.value = false;
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ createMessage.error('操作失败,请联系管理员');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ // 反启动
|
|
|
+ if (selectData['Fan2FreqReverseRun'] && selectData['Fan2FreqReverseRun'] == 1) {
|
|
|
+ console.log('一键2倒1反启动控制');
|
|
|
+ start('CtrlFan2ToFan1')
|
|
|
+ .then(() => {
|
|
|
+ frontMonitorIsShow.value = true;
|
|
|
+ backMonitorIsShow.value = false;
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ createMessage.error('操作失败,请联系管理员');
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
} else if (modalType.value == 'frequency') {
|
|
|
if (selectData['Fan1StartStatus'] == 1 && selectData['Fan2StartStatus'] == 0) {
|
|
|
start('CtrlFan1FreqSet', frequencyVal.value).catch(() => {
|
|
@@ -891,10 +973,41 @@
|
|
|
createMessage.success('关门成功');
|
|
|
});
|
|
|
}
|
|
|
- }
|
|
|
+ } else if (modalType.value === 'startFan') {
|
|
|
+ let paramcode = '';
|
|
|
+ if (flag === 'Fan1Open') {
|
|
|
+ paramcode = 'CtrlFan1Start';
|
|
|
+ } else if (flag === 'Fan2Open') {
|
|
|
+ paramcode = 'CtrlFan2Start';
|
|
|
+ } else if (flag === 'Fan1Stop') {
|
|
|
+ paramcode = 'CtrlFan1Stop';
|
|
|
+ } else if (flag === 'Fan2Stop') {
|
|
|
+ paramcode = 'CtrlFan2Stop';
|
|
|
+ } else if (flag === 'Fan1Reset') {
|
|
|
+ paramcode = 'CtrlFan1Reset';
|
|
|
+ } else if (flag === 'Fan2Reset') {
|
|
|
+ paramcode = 'CtrlFan2Reset';
|
|
|
+ }
|
|
|
|
|
|
- modalTitle.value = '';
|
|
|
- modalIsShow.value = false;
|
|
|
+ start(paramcode)
|
|
|
+ .then(() => {
|
|
|
+ if (globalConfig.History_Type == 'remote') {
|
|
|
+ createMessage.success('指令已下发至生产管控平台成功!');
|
|
|
+ } else {
|
|
|
+ createMessage.success('指令已下发成功!');
|
|
|
+ }
|
|
|
+ frontMonitorIsShow.value = false;
|
|
|
+ backMonitorIsShow.value = true;
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ createMessage.error('操作失败,请联系管理员');
|
|
|
+ });
|
|
|
+ } else if (modalType.value == 'resetFan') {
|
|
|
+ // 一键复位
|
|
|
+ start('CtrlFanReset').catch(() => {
|
|
|
+ createMessage.error('操作失败,请联系管理员');
|
|
|
+ });
|
|
|
+ }
|
|
|
};
|
|
|
|
|
|
// 取消
|
|
@@ -1333,6 +1446,55 @@
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ :deep(.button-box) {
|
|
|
+ position: relative;
|
|
|
+ padding: 5px;
|
|
|
+ // border: 1px transparent solid;
|
|
|
+ border-radius: 5px;
|
|
|
+ margin-left: 8px;
|
|
|
+ margin-right: 8px;
|
|
|
+ width: auto;
|
|
|
+ // height: 40px;
|
|
|
+ // border: 1px solid #65dbea;
|
|
|
+ height: 35px !important;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ color: #fff;
|
|
|
+ padding: 0 15px 5px 15px;
|
|
|
+ cursor: pointer;
|
|
|
+ &:hover {
|
|
|
+ background: linear-gradient(#2cd1ff55, #1eb0ff55);
|
|
|
+ }
|
|
|
+ &::before {
|
|
|
+ width: calc(100% - 6px);
|
|
|
+ height: 27px;
|
|
|
+ content: '';
|
|
|
+ position: absolute;
|
|
|
+ top: 3px;
|
|
|
+ right: 0;
|
|
|
+ left: 3px;
|
|
|
+ bottom: 0;
|
|
|
+ z-index: -1;
|
|
|
+ border-radius: inherit; /*important*/
|
|
|
+ background: linear-gradient(#1fa6cb, #127cb5);
|
|
|
+ }
|
|
|
+ &::after {
|
|
|
+ width: calc(100% + 32px);
|
|
|
+ height: 10px;
|
|
|
+ content: '';
|
|
|
+ position: absolute;
|
|
|
+ top: 28px;
|
|
|
+ right: 0;
|
|
|
+ left: -16px;
|
|
|
+ bottom: 0;
|
|
|
+ z-index: -1;
|
|
|
+ border-radius: inherit; /*important*/
|
|
|
+ background-position: center;
|
|
|
+ background-size: 100%;
|
|
|
+ z-index: 999;
|
|
|
+ }
|
|
|
+ }
|
|
|
::v-deep(#LivePlayerBox) {
|
|
|
display: flex;
|
|
|
flex-direction: row;
|