调整角色切换bug&通号界面添加成员管理&仿真按钮offset位置修复

This commit is contained in:
fan 2020-07-28 14:11:17 +08:00
parent 41aadd30cb
commit 594087489a
3 changed files with 92 additions and 75 deletions

View File

@ -157,6 +157,9 @@ export default {
mounted() {
this.version = this.$store.state.map.version;
this.initMenu();
if (this.$store.state.socket.simulationRoleList && this.$store.state.socket.simulationRoleList.length) {
this.checkRoleChange(this.$store.state.socket.simulationRoleList);
}
},
methods: {
initMenu() {
@ -234,13 +237,13 @@ export default {
this.$nextTick(() => {
EventBus.$emit('closeMenu');
});
},
checkRoleChange(list) {
list.forEach(item => {
if (item.messageType === 'PLAY_CHANGE' && item.userId == this.userId && item.type === 'STATION_SUPERVISOR') {
this.switchShowStation(this.centralizedMap[item.deviceCode]);
}
});
},
checkRoleChange(list) {
list.forEach(item => {
if (item.messageType === 'PLAY_CHANGE' && item.userId == this.userId && item.type === 'STATION_SUPERVISOR') {
this.switchShowStation(this.centralizedMap[item.deviceCode]);
}
});
}
}
};

View File

@ -4,7 +4,7 @@
<div class="display-draft">
<el-button-group>
<el-button v-if="isAdmin" @click="memberManage">成员管理</el-button>
<el-button type="primary" @click="back">{{ $t('global.back') }}</el-button>
</el-button-group>
@ -14,26 +14,24 @@
v-show="faultlistshow"
:devicelist="devicelist"
@selectdevice="selectdevice"
>
</Devicefault-List>
/>
<Fault-Device
v-show="deviceShow"
ref = "faultdevice"
@closedevice3dview ="devicemodel"
ref="faultdevice"
@closedevice3dview="devicemodel"
/>
<div id="testjlmap3d" class="jlmap3ddraw">
<canvas id="canvastexture" />
</div>
<div class="msg" v-show ="msgshow">
<div v-show="msgshow" class="msg">
<div class="msgtext">
{{controlmsg}}
{{ controlmsg }}
</div>
</div>
<div id="jl3droom" class="roombutton" @click="showroom"></div>
<div id="jl3droom" class="roombutton" @click="showroom" />
</div>
@ -55,7 +53,6 @@ import { JLmap3dMaintainer } from '@/jlmap3d/jl3dmaintainer/jlmap3dmaintainer.js
import DevicefaultList from '@/views/jlmap3d/maintainer/component/devicefaultlist';
import FaultDevice from '@/views/jlmap3d/maintainer/component/faultdevice';
import Jlmap3dConfig from '@/views/jlmap3d/simulation/show/configmenu';
import { ProjectIcon } from '@/scripts/ProjectConfig';
@ -66,11 +63,19 @@ export default {
name: 'Jl3dMaintainer',
components: {
DevicefaultList,
FaultDevice,
FaultDevice
// Jlmap3dMsg
// ShowProperty
},
props: {
isAdmin: {
type: Boolean,
default() {
return false;
}
}
},
data() {
return {
training: {
@ -89,7 +94,7 @@ export default {
devicelist:[],
deviceShow:true,
msgshow:false,
controlmsg:"",
controlmsg:''
};
},
@ -98,7 +103,7 @@ export default {
if (this.jlmap3d) {
this.jlmap3d.webwork.postMessage('off');
this.jlmap3d.webwork.terminate();
console.log("www");
console.log('www');
this.jlmap3d.jsonwebworknew.terminate();
this.jlmap3d.dispose();
this.jlmap3d = null;
@ -137,19 +142,19 @@ export default {
}
},
init: function (skinCode, group) {
const mapdata = this.$store.getters['map/map'];
const dom = document.getElementById('app');
const project = this.$route.query.project;
// console.log(project);
this.deviceShow = false;
if (project) {
const mapdata = this.$store.getters['map/map'];
const dom = document.getElementById('app');
const project = this.$route.query.project;
// console.log(project);
this.deviceShow = false;
if (project) {
this.jlmap3d = new JLmap3dMaintainer(dom, mapdata, skinCode, this.$store, group, project);
} else {
} else {
this.jlmap3d = new JLmap3dMaintainer(dom, mapdata, skinCode, this.$store, group, '');
}
this.jlmap3d.eventon();
this.jlmap3d = new JLmap3dMaintainer(dom, mapdata, skinCode, this.$store, group, '');
}
this.jlmap3d.eventon();
},
raystand() {
this.jlmap3d.rayswitch('stand');
@ -175,53 +180,55 @@ export default {
showtrainmsg(showtype) {
this.jlmap3d.showtrainmsg(showtype);
},
resetfaultlist(){
this.devicelist = [];
resetfaultlist() {
this.devicelist = [];
},
updatefault(fault) {
this.devicelist.push(fault);
this.devicelist.push(fault);
},
deletefault(code){
console.log(code);
console.log(this.devicelist);
for(let i=0,leni=this.devicelist.length;i<leni;i++){
if(code == this.devicelist[i].code){
this.devicelist.splice(i,1);
break;
deletefault(code) {
console.log(code);
console.log(this.devicelist);
for (let i = 0, leni = this.devicelist.length; i < leni; i++) {
if (code == this.devicelist[i].code) {
this.devicelist.splice(i, 1);
break;
}
}
}
},
devicemodel(){
if (this.deviceShow == false) {
this.deviceShow = true;
} else {
this.deviceShow = false;
}
devicemodel() {
if (this.deviceShow == false) {
this.deviceShow = true;
} else {
this.deviceShow = false;
}
},
selectdevice(divicedata){
this.deviceShow = true;
// console.log(divicedata);
this.$refs.faultdevice.showmodel(divicedata);
selectdevice(divicedata) {
this.deviceShow = true;
// console.log(divicedata);
this.$refs.faultdevice.showmodel(divicedata);
},
warningmsg(nowmsg){
console.log(nowmsg);
this.controlmsg = nowmsg;
this.msgshow = true;
setTimeout(this.warningmsgoff,3000);
warningmsg(nowmsg) {
console.log(nowmsg);
this.controlmsg = nowmsg;
this.msgshow = true;
setTimeout(this.warningmsgoff, 3000);
},
warningmsgoff(){
this.msgshow = false;
warningmsgoff() {
this.msgshow = false;
},
showroom(){
this.deviceShow = true;
this.$refs.faultdevice.showroom();
showroom() {
this.deviceShow = true;
this.$refs.faultdevice.showroom();
},
back() {
this.$emit('back');
this.isswitch = false;
},
memberManage() {
this.$emit('handlerMemberManage');
}
}
};
</script>
@ -324,5 +331,4 @@ export default {
z-index: -12;
}
</style>

View File

@ -1,7 +1,7 @@
<template>
<div class="main" :style="{width: canvasWidth+'px'}">
<Jl3d-Drive v-show="drivingShow" ref="Jl3dDrive" :panel-show="drivingShow" @showdriving="showdriving" />
<Jl3d-Maintainer v-if="jl3dmaintainershow" @back="back" />
<Jl3d-Maintainer v-if="jl3dmaintainershow" :is-admin="isAdmin" @back="back" @handlerMemberManage="handlerMemberManage" />
<ibp-plate v-show="ibpShow" ref="ibpPlate" @hideIbp="hideIbp" />
<template v-show="panelShow" :panelShow="panelShow">
<transition name="el-zoom-in-bottom">
@ -247,6 +247,8 @@ export default {
//
setPosition() {
this.$nextTick(() => {
this.offset = 10;
this.offsetBottom = 15;
const menuBar = document.getElementById('menuBar');
const menuTool = document.getElementById('menuTool');
const menuBottom = document.getElementById('menuButton');
@ -289,12 +291,12 @@ export default {
}
},
initMemberUserInfo() {
// 仿
// 仿
getSimulationMemberList(this.$route.query.group).then(resp => {
this.$store.dispatch('training/setMemberList', { memberList: resp.data, userId: this.$store.state.user.id });
}).catch(() => {
this.$messageBox('获取仿真成员列表失败!');
});
});
getAllSimulationUser(this.$route.query.group).then(resp => {
this.$store.dispatch('training/setSimulationUserList', resp.data);
}).catch(() => {
@ -394,9 +396,10 @@ export default {
this.$store.dispatch('training/setRoles', 'DISPATCHER');
this.hideIbp();
this.drivingShow = false;
if ((this.lineCode === '07' || this.lineCode === '06') && deviceCode) {
if (this.lineCode === '07' || this.lineCode === '06') {
this.mapViewLoadedOver && this.setShowStation('');
}
this.jl3dmaintainershow = false;
break;
case 'STATION_SUPERVISOR':
this.$store.dispatch('training/setPrdType', '01');
@ -406,22 +409,27 @@ export default {
this.$refs.menuSchema.chiShowStation = deviceCode;
this.mapViewLoadedOver && this.switchStationMode(deviceCode);
}
this.jl3dmaintainershow = false;
this.drivingShow = false;
break;
case 'AUDIENCE':
this.$store.dispatch('training/setPrdType', '');
this.$store.dispatch('training/setRoles', 'AUDIENCE');
this.jl3dmaintainershow = false;
this.drivingShow = false;
this.hideIbp();
break;
case 'DRIVER':
this.$store.dispatch('training/setPrdType', '');
this.$store.dispatch('training/setRoles', 'DRIVER');
this.jl3dmaintainershow = false;
break;
case 'MAINTAINER':
this.$store.dispatch('training/setPrdType', '');
this.$store.dispatch('training/setRoles', 'MAINTAINER');
this.hideIbp();
this.jl3dmaintainershow = true;
this.drivingShow = false;
break;
}
},
@ -515,13 +523,13 @@ export default {
});
},
setWindowSize() {
this.$store.dispatch('config/resize', { width: this.width, height: this.height });
if (this.prdType == '07') {
this.setBigScreenMode();
}
this.$store.dispatch('config/resize', { width: this.width, height: this.height });
if (this.prdType == '07') {
this.setBigScreenMode();
}
},
switchStationMode(stationCode) {
this.showStation = stationCode;
this.showStation = stationCode;
this.setShowStation(this.showStation);
},
setShowStation(stationCode) {
@ -536,7 +544,7 @@ export default {
this.$jlmap.setCenter(stationCode);
},
setStationList(map) {
this.stationList = [];
this.stationList = [];
(map.stationList || []).forEach(item => {
if (item.centralized) {
this.stationList.push({value: item.code, name: item.name});
@ -545,9 +553,9 @@ export default {
this.centralizedStationMap[ele] = item.code;
});
}
});
});
if (this.stationList.length) {
this.showStation = this.stationList[0].value;
this.showStation = this.stationList[0].value;
}
},
setBigScreenMode() {