This commit is contained in:
joylink_cuiweidong 2020-11-04 10:47:15 +08:00
commit ad572fdcc9
9 changed files with 109 additions and 27 deletions

View File

@ -97,7 +97,8 @@ export default {
{label: '车辆段调度', value: 'DEPOT_DISPATCHER', enLabel: 'Depot dispatcher '}, {label: '车辆段调度', value: 'DEPOT_DISPATCHER', enLabel: 'Depot dispatcher '},
{label: '电力调度', value: 'ELECTRIC_DISPATCHER', enLabel: 'Electric dispatcher'}, {label: '电力调度', value: 'ELECTRIC_DISPATCHER', enLabel: 'Electric dispatcher'},
{label: '行调', value: 'DISPATCHER', enLabel: 'Dispatcher '}, {label: '行调', value: 'DISPATCHER', enLabel: 'Dispatcher '},
{label: '上级部门', value: 'PARENT_DEPARTMENT', enLabel: 'Parent department'} {label: '上级部门', value: 'PARENT_DEPARTMENT', enLabel: 'Parent department'},
{label: '停车场信号楼', value: 'PARKING_LOT_SIGNAL_BUILDING', enLabel: 'Parking Signal Building'}
], ],
SimulationType: [ SimulationType: [

View File

@ -1,6 +1,10 @@
<template> <template>
<div> <div v-dialogDrag>
<el-dialog <div
v-show="show"
class="iscs_fuzhou-01__systerm route-detail el-dialog"
>
<!-- <el-dialog
v-dialogDrag v-dialogDrag
class="iscs_fuzhou-01__systerm route-detail" class="iscs_fuzhou-01__systerm route-detail"
title="报警浏览" title="报警浏览"
@ -10,19 +14,28 @@
:z-index="2000" :z-index="2000"
:modal="false" :modal="false"
:close-on-click-modal="false" :close-on-click-modal="false"
> > -->
<div style="height: 300px;overflow: auto; margin-bottom: 15px;"> <div class="el-dialog__header">
<div v-for="(item, index) in alarmList" :key="index"> <span class="el-dialog__title">报警浏览</span>
<div v-if="item.key == 'frame'">{{ item.station }} {{ item.name }}</div> <button type="button" aria-label="Close" class="el-dialog__headerbtn" @click="doClose">
<div v-if="item.key != 'frame'">{{ item.station }} {{ item.name }} 执行了 {{ item[item.key] ? 'XX保护动作' : '' }} {{ item[item.key] ? list[item.key][0] : list[item.key][1] }}操作</div> <i class="el-dialog__close el-icon el-icon-close" />
</div> </button>
</div> </div>
<el-row justify="center" class="button-group"> <div class="el-dialog__body">
<el-col :span="4" :offset="10"> <div style="height: 300px;overflow: auto; margin-bottom: 15px;">
<el-button type="primary" @click="commit">确定</el-button> <div v-for="(item, index) in alarmList" :key="index">
</el-col> <div v-if="item.key == 'frame'">{{ item.station }} {{ item.name }}</div>
</el-row> <div v-if="item.key != 'frame'">{{ item.station }} {{ item.name }} 执行了 {{ item[item.key] ? 'XX保护动作' : '' }} {{ item[item.key] ? list[item.key][0] : list[item.key][1] }}操作</div>
</el-dialog> </div>
</div>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="10">
<el-button type="primary" @click="commit">确定</el-button>
</el-col>
</el-row>
</div>
<!-- </el-dialog> -->
</div>
</div> </div>
</template> </template>
@ -65,5 +78,41 @@ export default {
</script> </script>
<style rel="stylesheet/scss" lang="scss" scoped> <style rel="stylesheet/scss" lang="scss" scoped>
.route-detail{
position: absolute;
// top: 300px;
left: calc(50% - 250px);
margin-top: 15vh;
width: 500px;
z-index: 2000;
box-sizing: border-box;
background: rgba(100, 100, 100, 0.3);
border: 2px solid rgba(144, 144, 144, 0.8);
border-radius: 6px;
color: #000;
font-size: 14px;
.el-dialog__header{
padding: 0px 8px;
height: 26px;
.el-dialog__headerbtn{
background: linear-gradient(#CD98A0, #C27D6E, #B63022, #C68770);
border: 1px solid #fff;
border-radius: 4px;
top: 4px;
right: 12px;
line-height: 16px;
color: #fff;
.el-icon{
color: #fff;
}
}
}
.el-dialog__body{
background: #fff;
margin: 5px;
margin-top: 0;
padding: 10px;
padding-bottom: 0;
}
}
</style> </style>

View File

@ -57,9 +57,10 @@
</div> </div>
</div> </div>
<div class="bottom-back" @click="back">返回</div> <div class="bottom-back" @click="back">返回</div>
<div class="bottom-back" :class="{'disable_box': alarmInfo}" @click="handleAlarmInfo"> <!-- :class="{'disable_box': alarmInfo}" -->
<div class="bottom-back" @click="handleAlarmInfo">
报警 报警
<span v-show="!alarmInfo" class="point_box" /> <!-- <span v-show="!alarmInfo" class="point_box" /> -->
</div> </div>
<div class="bottom-back" @click="getIncidentList">事件</div> <div class="bottom-back" @click="getIncidentList">事件</div>
<div class="bottom-back" @click="handleMalfunction">故障设置</div> <div class="bottom-back" @click="handleMalfunction">故障设置</div>
@ -410,9 +411,9 @@ export default {
}, },
// //
handleAlarmInfo() { handleAlarmInfo() {
if (!this.alarmInfo) { // if (!this.alarmInfo) {
this.$refs.alarmConfig.doShow(); this.$refs.alarmConfig.doShow();
} // }
}, },
// //
handleMalfunction() { handleMalfunction() {

View File

@ -363,6 +363,7 @@ export default {
const driverList = {}; const driverList = {};
const maintainerList = {}; const maintainerList = {};
const parentDepartmentList = {}; const parentDepartmentList = {};
const parkingLotSignalBuilding = {};
val.forEach(item => { val.forEach(item => {
const device = this.$store.getters['map/getDeviceByCode'](item.deviceCode); const device = this.$store.getters['map/getDeviceByCode'](item.deviceCode);
this.memberData[item.id]['active'] = false; this.memberData[item.id]['active'] = false;
@ -399,13 +400,18 @@ export default {
case 'MAINTAINER': case 'MAINTAINER':
this.memberData[item.id].label = '通号' + (item.name || ''); this.memberData[item.id].label = '通号' + (item.name || '');
this.memberData[item.id].labelName = '通号' + (item.name || ''); this.memberData[item.id].labelName = '通号' + (item.name || '');
// this.memberData[item.id].label = item.name || '';
maintainerList[item.id] = this.memberData[item.id]; maintainerList[item.id] = this.memberData[item.id];
break; break;
case 'PARENT_DEPARTMENT': case 'PARENT_DEPARTMENT':
this.memberData[item.id].label = '上级部门' + (item.name || ''); this.memberData[item.id].label = '上级部门' + (item.name || '');
this.memberData[item.id].labelName = '上级部门' + (item.name || ''); this.memberData[item.id].labelName = '上级部门' + (item.name || '');
parentDepartmentList[item.id] = this.memberData[item.id]; parentDepartmentList[item.id] = this.memberData[item.id];
break;
case 'PARKING_LOT_SIGNAL_BUILDING':
this.memberData[item.id].label = '停车场信号机' + (item.name || '');
this.memberData[item.id].labelName = '停车场信号机' + (item.name || '');
parkingLotSignalBuilding[item.id] = this.memberData[item.id];
break;
} }
}); });
// { label: '', value: 'allConcentrateStation', active: false, sign: 'DEVICE_STATION' }, // { label: '', value: 'allConcentrateStation', active: false, sign: 'DEVICE_STATION' },
@ -446,6 +452,11 @@ export default {
id: 'electricDispatcher', id: 'electricDispatcher',
type: 'role', type: 'role',
children: electricDispatcherList children: electricDispatcherList
}, {
label: '停车场信号楼',
id: 'parkingLotSignalBuilding',
type: 'role',
children: parkingLotSignalBuilding
}]; }];
this.initCommonMemberList(); this.initCommonMemberList();
this.filterNode(); this.filterNode();

View File

@ -177,6 +177,9 @@ export default {
member.label = '电力调度' + (member.name ? member.name : ''); member.label = '电力调度' + (member.name ? member.name : '');
break; break;
} }
case 'PARKING_LOT_SIGNAL_BUILDING': {
member.label = '停车场信号机' + (member.name ? member.name : '');
}
} }
// if (member.type === 'DISPATCHER') { // if (member.type === 'DISPATCHER') {
// this.memberId = member.id; // this.memberId = member.id;

View File

@ -228,6 +228,12 @@ export default {
id: 'electricDispatcher', id: 'electricDispatcher',
type: 'role', type: 'role',
children: result.deviceListData[6] children: result.deviceListData[6]
},
{
label: '停车场信号楼',
id: 'parkingLotSignalBuilding',
type: 'role',
children: result.deviceListData[7]
}]; }];
const lastMemberList = result.lastMemberList; const lastMemberList = result.lastMemberList;
this.$emit('setTreeData', treeData); this.$emit('setTreeData', treeData);

View File

@ -133,7 +133,7 @@ export default {
return mem.userId != '' && mem.userId != undefined; return mem.userId != '' && mem.userId != undefined;
}); });
if (member) { if (member) {
const memberType = ['STATION_SUPERVISOR', 'DISPATCHER', 'DRIVER', 'MAINTAINER', 'DEPOT_DISPATCHER', 'PARENT_DEPARTMENT', 'ELECTRIC_DISPATCHER']; const memberType = ['STATION_SUPERVISOR', 'DISPATCHER', 'DRIVER', 'MAINTAINER', 'DEPOT_DISPATCHER', 'PARENT_DEPARTMENT', 'ELECTRIC_DISPATCHER', 'PARKING_LOT_SIGNAL_BUILDING'];
const prdTypeList = ['01', '02', '04', '', '05', '', '']; const prdTypeList = ['01', '02', '04', '', '05', '', ''];
const index = memberType.indexOf(member.type); const index = memberType.indexOf(member.type);
let prdType; let prdType;

View File

@ -15,7 +15,7 @@ export function covertMemberData (activeTrainList, resp) {
lastData = JSON.parse(lastData); lastData = JSON.parse(lastData);
const lastMemberList = []; const lastMemberList = [];
// const electricDispatcherList = []; // const electricDispatcherList = [];
const deviceListData = [[], [], [], [], [], [], []]; const deviceListData = [[], [], [], [], [], [], [], []];
const driverList = []; const driverList = [];
lastData.forEach((member, index)=>{ lastData.forEach((member, index)=>{
if (member.userId && member.userId == store.state.user.id) { if (member.userId && member.userId == store.state.user.id) {
@ -37,7 +37,7 @@ export function covertMemberData (activeTrainList, resp) {
member.label = member.type + name + userName; member.label = member.type + name + userName;
member.normalName = member.type + name; member.normalName = member.type + name;
} }
const deviceType = ['行调', '通号', '行值', '司机', '车辆段调度', '上级部门', '电力调度']; const deviceType = ['行调', '通号', '行值', '司机', '车辆段调度', '上级部门', '电力调度', '停车场信号楼'];
const deviceTypeIndex = deviceType.indexOf(member.type); const deviceTypeIndex = deviceType.indexOf(member.type);
if (deviceTypeIndex >= 0) { if (deviceTypeIndex >= 0) {
if (deviceTypeIndex == 3) { if (deviceTypeIndex == 3) {

View File

@ -192,6 +192,12 @@ export default {
id: 'electricDispatcher', id: 'electricDispatcher',
type: 'role', type: 'role',
children: result.deviceListData[6] children: result.deviceListData[6]
},
{
label: '停车场信号楼',
id: 'parkingLotSignalBuilding',
type: 'role',
children: result.deviceListData[7]
} }
// PARENT_DEPARTMENT // PARENT_DEPARTMENT
]; ];
@ -250,7 +256,7 @@ export default {
const covertmember = this.covert(lastData, ConstConfig.ConstSelect.roleTypeNew); const covertmember = this.covert(lastData, ConstConfig.ConstSelect.roleTypeNew);
const newMember = covertmember[0]; const newMember = covertmember[0];
this.memberList.push(newMember); this.memberList.push(newMember);
const deviceTypeList = ['行调', '行值', '司机', '通号', '车辆段调度', '上级部门', '电力调度']; const deviceTypeList = ['行调', '行值', '司机', '通号', '车辆段调度', '上级部门', '电力调度', '停车场信号楼'];
const index = deviceTypeList.indexOf(newMember.type); const index = deviceTypeList.indexOf(newMember.type);
if (index >= 0) { if (index >= 0) {
const treeDataIn = this.treeData[index]; const treeDataIn = this.treeData[index];
@ -465,6 +471,10 @@ export default {
prdType = ''; prdType = '';
role.type = 'ELECTRIC_DISPATCHER'; role.type = 'ELECTRIC_DISPATCHER';
this.$store.dispatch('training/setRoles', 'ELECTRIC_DISPATCHER'); this.$store.dispatch('training/setRoles', 'ELECTRIC_DISPATCHER');
} else if (role.type == '停车场信号楼') {
prdType = '';
role.type = 'PARKING_LOT_SIGNAL_BUILDING';
this.$store.dispatch('training/setRoles', 'PARKING_LOT_SIGNAL_BUILDING');
} else { } else {
prdType = ''; prdType = '';
} }
@ -492,7 +502,8 @@ export default {
'MAINTAINER':'通号', 'MAINTAINER':'通号',
'DEPOT_DISPATCHER':'车辆段调度', 'DEPOT_DISPATCHER':'车辆段调度',
'PARENT_DEPARTMENT':'上级部门', 'PARENT_DEPARTMENT':'上级部门',
'ELECTRIC_DISPATCHER':'电力调度' 'ELECTRIC_DISPATCHER':'电力调度',
'PARKING_LOT_SIGNAL_BUILDING':'停车场信号楼'
}; };
newRole.type = roleTypeEnumMap[newRole.type]; newRole.type = roleTypeEnumMap[newRole.type];
this.quickChangeMember.list.push(newRole); this.quickChangeMember.list.push(newRole);