diff --git a/src/api/simulation.js b/src/api/simulation.js
index 15147e856..b051f6e4b 100644
--- a/src/api/simulation.js
+++ b/src/api/simulation.js
@@ -451,6 +451,27 @@ export function getSimulationDestinationList(group) {
method: 'get'
});
}
+/** 获取PSL盘状态 */
+export function getPslStatus(group, standCode) {
+ return request({
+ url: `/simulation/${group}/${standCode}/psl/status`,
+ method: 'get'
+ });
+}
+/** 按下IBP盘按钮
+ * @param {String} button
+ * YXJZ-允许/禁止;
+ * HSJC-互锁解除;
+ * KM-开门;
+ * GM-关门;
+ * SD-试灯;
+ */
+export function pressPslButton(group, standCode, button) {
+ return request({
+ url: `/simulation/${group}/${standCode}/psl/${button}`,
+ method: 'put'
+ });
+}
/** 查询运行线或者列车经过的站台 */
export function getStandListByRunLineOrTrainCode(group, params) {
return request({
diff --git a/src/assets/psl_images/green_btn.png b/src/assets/psl_images/green_btn.png
new file mode 100644
index 000000000..bcb222510
Binary files /dev/null and b/src/assets/psl_images/green_btn.png differ
diff --git a/src/assets/psl_images/green_off.png b/src/assets/psl_images/green_off.png
new file mode 100644
index 000000000..326a55235
Binary files /dev/null and b/src/assets/psl_images/green_off.png differ
diff --git a/src/assets/psl_images/green_on.png b/src/assets/psl_images/green_on.png
new file mode 100644
index 000000000..a27f2d5d0
Binary files /dev/null and b/src/assets/psl_images/green_on.png differ
diff --git a/src/assets/psl_images/key.png b/src/assets/psl_images/key.png
new file mode 100644
index 000000000..ac7f4cf76
Binary files /dev/null and b/src/assets/psl_images/key.png differ
diff --git a/src/assets/psl_images/psl_icons.js b/src/assets/psl_images/psl_icons.js
new file mode 100644
index 000000000..426dbde01
--- /dev/null
+++ b/src/assets/psl_images/psl_icons.js
@@ -0,0 +1,22 @@
+import red_on from "@/assets/psl_images/red_on.png";
+import red_off from "@/assets/psl_images/red_off.png";
+import red_btn from "@/assets/psl_images/red_btn.png";
+import green_on from "@/assets/psl_images/green_on.png";
+import green_off from "@/assets/psl_images/green_off.png";
+import green_btn from "@/assets/psl_images/green_btn.png";
+import top_on from "@/assets/psl_images/top_on.png";
+import top_off from "@/assets/psl_images/top_off.png";
+import key from "@/assets/psl_images/key.png";
+const icons = {
+ red_on,
+ red_off,
+ red_btn,
+ green_on,
+ green_off,
+ green_btn,
+ top_on,
+ top_off,
+ key
+};
+
+export default icons;
diff --git a/src/assets/psl_images/red_btn.png b/src/assets/psl_images/red_btn.png
new file mode 100644
index 000000000..ce02c53df
Binary files /dev/null and b/src/assets/psl_images/red_btn.png differ
diff --git a/src/assets/psl_images/red_off.png b/src/assets/psl_images/red_off.png
new file mode 100644
index 000000000..049e4e47d
Binary files /dev/null and b/src/assets/psl_images/red_off.png differ
diff --git a/src/assets/psl_images/red_on.png b/src/assets/psl_images/red_on.png
new file mode 100644
index 000000000..86305639d
Binary files /dev/null and b/src/assets/psl_images/red_on.png differ
diff --git a/src/assets/psl_images/top_off.png b/src/assets/psl_images/top_off.png
new file mode 100644
index 000000000..8cb06b5e8
Binary files /dev/null and b/src/assets/psl_images/top_off.png differ
diff --git a/src/assets/psl_images/top_on.png b/src/assets/psl_images/top_on.png
new file mode 100644
index 000000000..5ee4f41c9
Binary files /dev/null and b/src/assets/psl_images/top_on.png differ
diff --git a/src/jmapNew/theme/components/menus/dialog/psl.vue b/src/jmapNew/theme/components/menus/dialog/psl.vue
new file mode 100644
index 000000000..519388dfc
--- /dev/null
+++ b/src/jmapNew/theme/components/menus/dialog/psl.vue
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
PSL操作指示灯
+
+
+
+
互锁解除指示灯
+
+
+
+
+
+
开门状态指示灯
+
+
+
+
关门状态指示灯
+
+
+
+
+
+
禁止
+
+
允许
+
+
+
禁止
+
+
互锁解除
+
+
+
+
+
开门按钮
+
+
+
+
关门按钮
+
+
+
+
+
+
试灯按钮
+
+
+
+
+
+
+
+
+
+
diff --git a/src/jmapNew/theme/xian_01/menus/menuStationStand.vue b/src/jmapNew/theme/xian_01/menus/menuStationStand.vue
index 68799e87d..a12cce1e8 100644
--- a/src/jmapNew/theme/xian_01/menus/menuStationStand.vue
+++ b/src/jmapNew/theme/xian_01/menus/menuStationStand.vue
@@ -9,6 +9,7 @@
+
@@ -22,6 +23,7 @@ import StandStopTime from './dialog/standStopTime';
import StandDetainTrainAll from './dialog/standDetainTrainAll';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
import SetFault from '@/jmapNew/theme/components/menus/dialog/setFault';
+import Psl from '@/jmapNew/theme/components/menus/dialog/psl';
import { mapGetters } from 'vuex';
import { DeviceMenu, OperateMode } from '@/scripts/ConstDic';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
@@ -39,7 +41,8 @@ export default {
StandBackStrategy,
StandStopTime,
StandDetainTrainAll,
- SetFault
+ SetFault,
+ Psl
},
props: {
selected: {
@@ -173,9 +176,16 @@ export default {
// 故障模式菜单列表
if (this.operatemode === OperateMode.FAULT) {
this.menu = this.menuForce;
- console.log(this.menu);
+ if (this.$store.state.training.prdType === '01') { //角色为车站值班员
+ this.menu = [
+ ...this.menu,
+ {
+ label: 'PSL',
+ handler: this.openPsl
+ }
+ ]
+ }
}
-
},
doShow(point) {
this.initMenu();
@@ -295,9 +305,11 @@ export default {
// 触发故障管理
triggerFaultManagement() {
this.$store.dispatch('training/setTriggerFaultCount', this.selected);
+ },
+ // 打开PSL面板
+ openPsl(){
+ this.$refs.psl.doShow(this.selected)
}
- // PSL
-
}
};
diff --git a/src/store/modules/socket.js b/src/store/modules/socket.js
index 60cbfbd70..b625af25c 100644
--- a/src/store/modules/socket.js
+++ b/src/store/modules/socket.js
@@ -189,6 +189,9 @@ function handle(state, data) {
store.dispatch('training/over');
}
break;
+ case 'Simulation_PslStatus':
+ state.simulationPslStatus = msg;
+ break;
}
}