diff --git a/src/jmapNew/theme/datie_02/menus/runplanPane.vue b/src/jmapNew/theme/datie_02/menus/runplanPane.vue index 746724b78..74e6ccec4 100644 --- a/src/jmapNew/theme/datie_02/menus/runplanPane.vue +++ b/src/jmapNew/theme/datie_02/menus/runplanPane.vue @@ -77,6 +77,7 @@ border height="695" highlight-current-row + :row-class-name="judgeColor" style="width: 100%;border:1px #ccc solid" @cell-click="selectedTripNumber" @current-change="handleCurrentChange" @@ -88,7 +89,7 @@ width="100" > @@ -135,6 +136,7 @@ popper-class="stationSelect" @change="changeArriveRunPlan($event,scope.row,scope.$index)" > +
8
+
@@ -360,6 +367,11 @@

26
+ @@ -582,6 +594,25 @@ export default { } }, methods:{ + judgeColor({row, rowIndex}) { + if (row.effect) { + if (row.passenger == 'PASSENGER') { + return 'fontRed'; + } else if (row.passenger == 'GOODS_TRAIN') { + return 'fontBlue'; + } else { + return 'fontBlack'; + } + } else { + if (row.passenger == 'PASSENGER') { + return 'fontPink'; + } else if (row.passenger == 'GOODS_TRAIN') { + return 'fontLightBlue'; + } else { + return 'fontBlack'; + } + } + }, judgeStationCtcRunplan() { const changedCtcRunplanMap = this.$store.state.socket.changedCtcRunplanMap; const stationCode = this.$store.state.training.roleDeviceCode; @@ -620,8 +651,11 @@ export default { return data.stationCode == this.$store.state.training.roleDeviceCode; }); this.tableData.sort((prev, next)=>{ - const prevPlanTime = prev.departRunPlan ? prev.departRunPlan.planTime : prev.arriveRunPlan ? prev.arriveRunPlan.planTime : '00:00:00'; - const nextPlanTime = next.departRunPlan ? next.departRunPlan.planTime : next.arriveRunPlan ? next.arriveRunPlan.planTime : '00:00:00'; + const prevPlanTime = prev.departRunPlan ? (prev.departRunPlan.actualTime || prev.departRunPlan.planTime) + : prev.arriveRunPlan ? (prev.arriveRunPlan.actualTime || prev.arriveRunPlan.planTime) : '00:00:00'; + const nextPlanTime = next.departRunPlan ? (next.departRunPlan.actualTime || next.departRunPlan.planTime) + : next.arriveRunPlan ? (next.arriveRunPlan.actualTime || next.arriveRunPlan.planTime) : '00:00:00'; + // const nextPlanTime = next.departRunPlan ? next.departRunPlan.planTime : next.arriveRunPlan ? next.arriveRunPlan.planTime : '00:00:00'; return new Date('2000-06-18 ' + prevPlanTime).getTime() - new Date('2000-06-18 ' + nextPlanTime).getTime(); }); }, @@ -1222,4 +1256,9 @@ export default { } .passagerTrain{background:#f00;width: 100%;height: 28px;} .goodTrain{background:#00f;width: 100%;height: 28px;} +.fontRed{color:#f00} +.fontBlue{color:#00f} +.fontBlack{color:#000} +.fontPink{color: #FF1493;} +.fontLightBlue{color: #87CEFA;} diff --git a/src/views/dispatcherLoger/addDispatcherLogerRunplan.vue b/src/views/dispatcherLoger/addDispatcherLogerRunplan.vue index a248c644c..68e9064e2 100644 --- a/src/views/dispatcherLoger/addDispatcherLogerRunplan.vue +++ b/src/views/dispatcherLoger/addDispatcherLogerRunplan.vue @@ -173,7 +173,23 @@ export default { filterDepSectionList:[], filterSectionList:[], trainTypeList:[ - {name:'跨局快速旅客列车', code:'FAST_PASSENGER_TRAIN' } + // 管内列车 + {name:'管内特快旅客列车', code:'LOCAL_EXPRESS_PASSENGER_TRAIN' }, + {name:'管内快速旅客列车', code:'LOCAL_FAST_PASSENGER_TRAIN' }, + {name:'管内普通旅客快车', code:'LOCAL_PASSENGER_TRAIN' }, + {name:'管内普通旅客慢车', code:'LOCAL_SLOW_PASSENGER_TRAIN' }, + {name:'管内临时旅客列车', code:'LOCAL_TEMPORARY_PASSENGER_TRAIN' }, + {name:'管内临时旅游列车', code:'LOCAL_TEMPORARY_TOURIST_TRAIN' }, + // 跨局列车 + {name:'跨局快速旅客列车', code:'FAST_PASSENGER_TRAIN' }, + {name:'跨局临时旅游列车', code:'TEMPORARY_TOURIST_TRAIN' }, + {name:'跨两局普通旅客快车', code:'TWO_PASSENGER_TRAIN' }, + {name:'跨两局普通旅客慢车', code:'TWO_SLOW_PASSENGER_TRAIN' }, + {name:'跨两局临时旅客列车', code:'TWO_TEMPORARY_PASSENGER_TRAIN' }, + {name:'跨三局及其以上普通旅客快车', code:'MORE_PASSENGER_TRAIN' }, + // 其他列车 + {name:'回送出入厂客车底列车', code:'BACK_FACTORY_PASSENGER_TRAIN' }, + {name:'因故折返旅客列车', code:'FAULT_TRUE_BACK_PASSENGER_TRAIN' } ], runTypeList:[ {name:'快速旅客列车', code:'FAST_PASSENGER_TRAIN' } diff --git a/src/views/dispatcherStationManage/cmdManage.vue b/src/views/dispatcherStationManage/cmdManage.vue index dbfb0745c..8086ed8d9 100644 --- a/src/views/dispatcherStationManage/cmdManage.vue +++ b/src/views/dispatcherStationManage/cmdManage.vue @@ -26,14 +26,18 @@
收令箱
- + - + + + @@ -153,22 +157,9 @@ export default { }, getTableData() { const receiverList = Object.values(this.currentInfo.receiverInfos || {}); - const mList = []; - receiverList.forEach(ii => { - const obj = this.memberList.find(item => { - return item.id == ii.receiverId; - }); - if (obj) { - mList.push({ - commandId: this.commandId, - ...ii, - ...obj - }); - } - }); const list = []; - mList.forEach(item => { - const device = this.$store.getters['map/getDeviceByCode'](item.deviceCode); + receiverList.forEach(item => { + const device = this.$store.getters['map/getDeviceByCode'](item.receiverId); const obj = { ...this.currentInfo, ...item, @@ -201,6 +192,7 @@ export default { return 'unsigned-row'; }, doShow() { + this.searchCmd(); this.dialogShow = true; this.$store.commit('socket/clearDispatchCommandMsg'); }, @@ -209,9 +201,30 @@ export default { }, handleCurrentChange(obj) { this.currentInfo = obj; + if (!this.getSignInfo(obj.receiverInfos).receivedTime) { + const data = { + commandId: obj.id + }; + sendCommandNew(this.group, 'CTC_READ_DISPATCH_COMMAND', data).then((res) => { + console.log(res, '---res'); + const index = this.cmdTableData.findIndex(item => { + return item.id == obj.id; + }); + if (index >= 0) { + const obj = this.cmdTableData[index]; + const devCode = this.getActiveUser.deviceCode || ''; + if (obj.receiverInfos[devCode]) { + obj.receiverInfos[devCode].receivedTime = parseTime(this.initTime); + this.cmdTableData.splice(index, 1, obj); + } + } + }).catch(error => { + console.log(error, '---已读命令error'); + }); + } }, getSignInfo(info) { - const obj = info[this.getActiveUser.memberId] || {}; + const obj = info[this.getActiveUser.deviceCode] || {}; return obj; }, getSignedBy(info) { @@ -241,20 +254,40 @@ export default { this.$messageBox(`${this.signedStatusObj[status]}调度命令失败:${error.message}`); }); }, + changeReadStatus(signInfo) { + const index = this.cmdTableData.findIndex(item => { + return item.id == signInfo.commandId; + }); + if (index >= 0) { + const obj = this.cmdTableData[index]; + const devCode = this.getActiveUser.deviceCode || ''; + if (obj.receiverInfos[devCode]) { + const mId = signInfo.signedBy; + obj.receiverInfos[devCode].signedBy = mId; + obj.receiverInfos[devCode].signedStatus = signInfo.signedStatus; + obj.receiverInfos[devCode].time = parseTime(this.initTime); + this.cmdTableData.splice(index, 1, obj); + } + } + }, changeSignedStatus(signInfo) { const index = this.cmdTableData.findIndex(item => { return item.id == signInfo.commandId; }); if (index >= 0) { const obj = this.cmdTableData[index]; - const mId = signInfo.signedBy; - obj.receiverInfos[mId].signedBy = mId; - obj.receiverInfos[mId].signedStatus = signInfo.signedStatus; - obj.receiverInfos[mId].time = parseTime(this.initTime); - this.cmdTableData.splice(index, 1, obj); + const devCode = this.getActiveUser.deviceCode || ''; + if (obj.receiverInfos[devCode]) { + const mId = signInfo.signedBy; + obj.receiverInfos[devCode].signedBy = mId; + obj.receiverInfos[devCode].signedStatus = signInfo.signedStatus; + obj.receiverInfos[devCode].time = parseTime(this.initTime); + this.cmdTableData.splice(index, 1, obj); + } } }, searchCmd() { + this.cmdTableData = []; sendCommandNew(this.group, 'CTC_QUERY_DISPATCH_COMMAND').then((res) => { console.log(res, '---res'); if (res.code == 200) { diff --git a/src/views/dispatcherStationManage/dispatchCmd.vue b/src/views/dispatcherStationManage/dispatchCmd.vue index 53b3c352f..06657fd1a 100644 --- a/src/views/dispatcherStationManage/dispatchCmd.vue +++ b/src/views/dispatcherStationManage/dispatchCmd.vue @@ -19,7 +19,132 @@
- 新建调度命令 + +
+ + + + + + 小时 +
+ {{ getSimulationTime }} +
+
+ + 刷新 + 新建调度命令 +
+
+
+
缓存命令
+
+ + +
+
+
+ + + + + + + + + + + + + + +
+
+
+
接受命令
+
+ + +
+
+
+ + + + + + + + + + + + + +
+
+
+
发送命令
+
+ + +
+
+
+ + + + + + + + + + + + + + +
+
+
+
签收完成
+
+ + +
+
+
+ + + + + + + + + + + + + +
@@ -126,7 +251,7 @@
- +
@@ -139,15 +264,23 @@
- - - + - - + + + + + + + +
@@ -169,6 +302,7 @@