From 6384208d932d441ae7294df8b5f43b653333eead Mon Sep 17 00:00:00 2001
From: joylink_cuiweidong <364937672@qq.com>
Date: Fri, 24 Jun 2022 16:51:17 +0800
Subject: [PATCH 01/51] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/jmapNew/theme/datie_tky/model.js | 71 ++++++++++++++++++++++++++++
1 file changed, 71 insertions(+)
create mode 100644 src/jmapNew/theme/datie_tky/model.js
diff --git a/src/jmapNew/theme/datie_tky/model.js b/src/jmapNew/theme/datie_tky/model.js
new file mode 100644
index 000000000..c7d80a99e
--- /dev/null
+++ b/src/jmapNew/theme/datie_tky/model.js
@@ -0,0 +1,71 @@
+import deviceType from '../../constant/deviceType';
+
+class Model {
+ constructor() {
+ this.screenLine = 3;
+ // 公共字段部分默认初始值
+ this['public'] = {};
+ this['public'][deviceType.Signal] = {
+ lampPositionType: '02',
+ lampPostType: '02'
+ };
+
+ // 私有字段部分默认初始值
+ this['private'] = {};
+ this['private'][deviceType.StationControl] = {
+ indicatorShow: true // 标识灯名称显示
+ };
+ this['private'][deviceType.Station] = {
+ kmPostShow: true // 公里标显示
+ };
+ this['private'][deviceType.Switch] = {
+ nameShow: true
+ };
+ this['private'][deviceType.Section] = {
+ nameShow: true,
+ borderBorderShow: true, // 区段边界显示
+ destinationNameShow: true, // 目的地码名称显示
+ standTrackNameShow: true, // 站台轨名称显示
+ reentryTrackNameShow: true, // 折返轨名称显示
+ transferTrackNameShow: true // 转换轨名称显示
+ };
+ this['private'][deviceType.Signal] = {
+ nameShow: true, // 信号机名称显示
+ linkageAutoRouteShow: true, // 联锁自动进路表示灯显示
+ atsAutoTriggerShow: true // ATS自动触发表示灯显示
+ };
+ this['private'][deviceType.Train] = {
+ };
+ this['private'][deviceType.TrainWindow] = {
+ trainWindowShow: true
+ };
+ }
+
+ initPublicProps(model) {
+ if (model) {
+ var modelInitial = this.public[model._type];
+ if (modelInitial) {
+ for (var prop in modelInitial) {
+ model[prop] = modelInitial[prop];
+ }
+ }
+ }
+
+ return model;
+ }
+
+ initPrivateProps(model) {
+ if (model) {
+ var modelInitial = this.private[model._type];
+ if (modelInitial) {
+ for (var prop in modelInitial) {
+ model[prop] = modelInitial[prop];
+ }
+ }
+ }
+
+ return model;
+ }
+}
+
+export default new Model();
From 73bf18ad86f377f713250a2a24cd87431898b2ce Mon Sep 17 00:00:00 2001
From: joylink_cuiweidong <364937672@qq.com>
Date: Mon, 27 Jun 2022 11:05:12 +0800
Subject: [PATCH 02/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E9=A1=B9=E7=9B=AE=20?=
=?UTF-8?q?=E8=B0=83=E5=BA=A6=E5=8F=B0=20=E4=BB=A3=E7=A0=81=E8=B0=83?=
=?UTF-8?q?=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../theme/datie_02/menus/dispatcherLoger.vue | 137 ++++++++++++++++++
src/jmapNew/theme/datie_02/menus/index.vue | 21 +++
src/views/newMap/displayNew/menuDemon.vue | 19 ++-
src/views/newMap/displayNew/menuSchema.vue | 51 +++++--
4 files changed, 207 insertions(+), 21 deletions(-)
create mode 100644 src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue
diff --git a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue
new file mode 100644
index 000000000..baeec9a15
--- /dev/null
+++ b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue
@@ -0,0 +1,137 @@
+
+
ww$3RUpU!l zX3a72Ns75qnP=8*Z!?X2BDcNay7+Y&9cg{GVDH@TX`zO>YjGkw?IXX?pTYMUv|TT9 z@Jo3k;wKTT6$cto;+{>pm<@2hVGwKO)#kWhH}iS&I8-*<7<$dbss; zB@CJZP*v4SC@_kzFbfHmB-ooKaf)W(0mm_er*X0dLnESH)sS^h%PZJIXE|TThLDtB zxfwDvy=~e24W^rr0-D;Ia&j@X5U8rTx%2#7v1^}8;hs#eqqFdN@9U^k>=}gKr~2oX zv|r`dkt%Vo&yU+F2^sE^`R@hA*&dpW8`XXL$f6-CN~+d}q_Nl17fJ^RaEU ?bpPy0s?B^3k zR#^MQi2`yjCdmz|e&gp#N1P2okqrpE+h5r#XG+_Aiyf~w6Z^A|%uGChm3G7-yCplW z)zMHshwf(H32%vCpsw7AnOhOMHq~DA=U{&O9T8_EG0kLf=#W|_J@rzx%TMy?4zk>{ zStoXUDp;r?_!EOP+byPp!nNv^+Aw1VHPJoSJ@g@Cx8o9AHGdQ9V@UpH3Ht PX0G3sz# z0+N1l=^c?XrF8^o`LTu>M`5)WD{7l>-$659HbRX306VRgHvNqq!Zr<$C9ZwdW*S2( zmR4g8;Ser%Z3vMb&=v=y=|SX_lX83t-4=KE)%>xu|JS );zM!k~P;g2CSj+dd4`dz9X^2@0A&893%S{hB zc!7@Kw-SSll4TmcY0HGOA?XF+TF(6&imeX@E^{{r`|Cnsg6gQod@tgCf2IliqbAd8 zk=?dZ7 ;mHl7vZbQ@~6O;z$c=6RIY$mC)yl8o`Nte@? n6XbwMq|9JV=wEN3hb#z%&@N;I@~RPPZL0z!MAY 4+ ztTc|zM5?xDt1Ip<7?b$rlIQTsXjXf?V7D8~c`mL?Qy!4&cL=V84~UYSA0*__JC`C) z-i?8vWm~ uTA^(oOqD}oMYf-3qZ>xk zwXfrMKBG~dy?OXgx#iQ}W78Y!e(Y8fm_#m(s(Y95>Z>s)Zb5LF^udV_XZJ|jKrv;6 zpj*pETM<55>skKGin)hT^-uegB%Nlx{3jB|S7g ?+?QWfQJvU#m{ zGjMNSlluL+dF*lgRLYpTaYIfX#NyQdC@~>E_3z+N9ymxoS9VW24ECaNm#VYw!eV;< zWWFXQ>qpVV8dZBpNYzRWo5hMqI68Chao{Irl1ocJ9QmT2M6;o0h;BCZOZTcL#^KZ@ z?~Y 9 zJT=WZhs&cQFltO&F=1oTKSiDeEDZ8{Sn&$f|WquLefqO_PsGIZ5knYl^Q7+$W&cX;#@L_ zFt~=+ZN$3G*U#fctdUCDZ%L}H{>!mGUe%PK$pl{Sp@{XN0+~isAqAD@>1|P#`N9B+ zzYTL#N{R~MT#1Gr@DFb0`QzWS@*-QRuK*Tz8w}-NeF1mwPq>&HePK_o4)TO+iq$Qq zwh^oYLXw?UG(t@NKkMjOW(^*ih4t6H3Th5l3k4kKadEXbx94nk5)xwWPJA}gz$by7 z6s5pv`dm7*|H9NKi2i78E0>XfzQE4iB0C(HDwK@6)S!<2!DswYXCw044K`sY#j*#@ zR~Anb&t8HG?|%EbI_dZkjArI-L7~@QQ>g2G(c%zr=7dIquVpa<%4x5buIF|(uOw&7 zx+;}EF3{7 As?@$@gC^-etr|X*L0}9w*XBi3~QIkO sEfHAjFbmi~;1o22}5(|Q}%w-H&a?ABi&=e&Sy^AoJ>RAZc-Nm`%TDvvF2Uf9UU za6C_dq_8;}I=MSZU0Gy`U4-ING7H&kts70w8_nvsk^{V>1{v{!@cb$HRho uq@`TZUzE{dL&qpp%!8 z$7X3xcq?VAvY+w;2vWyCHdDJslH2-MF77BXjEbW V4zZ}PHsVt5up?^ z_%SuJwD|)A(eMB#t>DZ5ie{L}`m)7qwXhcY7OZMaZzN^-_cYJ}nGU-UX((Sf7k*WF zd(Zn56sAe*x+TMWK*(Z_!c)iu)187rg(Tx2w0gGi1JtulqIMLd(Yw~c*lp_wEH7Xf zmogen{i^d=_IH(I3#(2Iv7~sK7SefxEZ-UZ{Mppx*&d$t%*`eTppAmaRon}~+EGjX z;1pEO@)pzPOc_LSdg++) __c#c|)zmVm? zv}@)pZ|E%YyhL|N`Cx*H)OuKMQ|;yNhNCP #=EQ!IDzLW&or!{ps7p*>HPr%9!DH7XqliJ z*-?>zV+PVH+_nbgDKV7}{?LubadOtu@d*3PCkj-E?qh0mJ{{{OrE|=``j|r_Dq>iU zv~RK*qL@3y^K~@YiI|8=vBB3=$VIx5TX5L*ILqEM_;}4~|Fn@1u3qI?EBs9PPIWG7 z^SGYkHbIqe^7FlF^IwVBFb6e7%`9HF+3^~HaXu;M_5NRUeb;f!>>qE4bA5|Ej(Cjn zg76?9lyP#RWU_6*VOXL5_uC-A`fbvAEoJh=+kl~x+TaYGrXuJD8klHlS$&kyv|wyZ zvLqDS`Q@?afm6FPo64*1aE}XOKK$*T&SJYMlHik^%Zc^s_z^nbj@s9ch<#^o4X_dt zr;qQdp>N14bS}f&YhLg8R#Dzm!dorj()D(T&;2Mgo}-C41^Uqx 4w)L6Nx?6)cNb2jo(Fpiz2dvqFsN6y+nbkR8B8W>g?+D0y+yMIRj#i z;9S5fMq4^c0Irh%xw5!^{LpG K1>OD!zO{jmuO@zAnqj~O*~4o2l-9YI$A xrpwEql0BZ)M zY<9no43yN^1M>wM{KL`UB7}7;(Bbcbw$Q?V $P8G5Y9e>C+z8J`;)$A3TaDyK=*P 9=^d-elqO41ex)I0Mh- zio0ohGgDrx3&JlmVZDZ&T}Of%a;LsEn`~*B$(A`z3ChU(_HPG7YOyC}nFexmO-QYr z4OSY60fBWSb8lln{#R$d0Sd1GW+BAU$)!;M#pl(Bv%e0B!^x>TavVY4%FGawc96b^ zkNtDf cd^E)88m=5D9s}FC{FtvMdYG@P37{9 z!stL`P4c_7R6r@Tj^FwJ!506AV;BX=@^!nXI}H8fBzGz8$=ffepqcVhJ%$C-f2alp MsH_dBRkRBIAGvDHmjD0& literal 0 HcmV?d00001 diff --git a/src/assets/dispatcherStation/zhanchang.png b/src/assets/dispatcherStation/zhanchang.png new file mode 100644 index 0000000000000000000000000000000000000000..fb2d8107fb3f31c6ef64b8cde4eaeff9c26e4e9a GIT binary patch literal 1880 zcmbuAXE+-Q1BIii)fm^RRaG@_iIU)|5yWVP*h-b!B1Y}eRE!G6MJpmmth85^TG3W7 zMNlQlHGA!SjT%LbC=IDz-~aD *fZGS( eghPrbHS6Z*2yf#MT94xjbA<^BM_*eKFSUpJ z4OoLUA!^>>Nf#Gfs7=|cJ~1japHOo7!t4y&kPdqC#G-S9px^WPds8uX=#8nd-&egp z2}8pI5lw1VbY)ekx1HbD7_coQ6bsWKmgd)s6L5k=1A}}CUOq>4i|Yl!3i!v41JH~z z>_<-q@7ZNki1o=`kAfF%P?y=cd?H?$&^)|A39hgED{Xa<57#+8y?|d&6TnrgT s>X-I$iAW(C=i2a*$;g8yWzwGr3yTk*5peI@ySd_#0!m zdRUZx9N}Z4XkX>=TaB>o2J-5>2I>&i99)V+B)i5#v=ml%o20r*K#Lj%t%J67DJ;1? zo+Z1nJwIOhiS|NJ{QzeEqCcZ|$modDO7n5w6j*@*RY{#QL9VWgb-6=)?B-%b7qsSn z$nPzZ&2Xf25h3m3Mas&j%^FM(Hxjb9e;m6DE4uf+raCS9it#*VMGG?#i;{25O|c&~ zdC&kaZ1N%fFczt3W3S`Ep+Ze>T0z2L*KCZG$G63fZYjEbI9Ys-7Ccv^P$=o~v8-Q` zZ%gU9%##EHl?d51K6m6Sh6$KwfI92_!h{$y(OyYmo$cz`;T>){xZDbpD---{l4~uM z#D+{BhHP%+z!AEoTeWYJ^EHtB#*<0+P9X!M9xMyZ@KQ~FgcptAXEhseO4t4&7KUE~ z>PULg%WaizWJnnctORW5yw6D@?Z_l0JS}&c%38r(I07pHcKs hAZ)f%(iD5&eK5s%_J4}|-O69GkuiSu %M*6RuSYNfWWA0issdT 4b=R$ zRisl?pc`B`imi1UlNiROUn5b#hsOifTk}f->dkGcjQ;*IvwN5r4PxGX-j|itsWtPV zU*3SE@Mr&GvX^La?Oh?rh#*TRaPnjgI=}0&1GT?VOU{REcJH0j8u=I0%6VN5m4DVz zBQvka$k%4D$d|Sl2@*Gh&FnAoko1~iUCMd&xt_H*b4N6*xoSl7o$5qNQ3Ba!u*E{2 zJ=$}#R(Y^_g5Z}!O{cjgIFHsz@%am9LS+JHi=69uGa{`pi1rRXzsyuVXbhwvHr6Ug zXY7N1BiW*2DQ=R>R}Hz;&Eta{8Tbwebsp;9G>AjqZBv`05-#SzWshg+4hr~&2~!i4 zVq}9${(&GDG&T8?NX+@Fw%`dJ Mh)8XTb`GglQ)8*may^^0V*T@EKVF@EpkJ|!SzN?S#| z0c{0Ng;_1X?~mwA>#(x&8g_`jG=KdlAx1tNKbn^g%c$z^=`A?o3CEJ*tq)Ct()kw> zW7qVE`_B+bG(jsHGLhF@YAU;hn=Xgz6AYLtih_e+ zKEmt{ import('@/views/system/serverManage'); const VoiceManage = () => import('@/views/fileManage/voiceManage'); const IscsDeviceManage = () => import('@/views/system/iscsDeviceManage'); const IscsResourcesManage = () => import('@/views/system/iscsResourcesManage'); +const dispatcherStationManage = () => import('@/views/dispatcherStationManage/index'); // import { GenerateRouteProjectList } from '@/scripts/ProjectConfig'; // import { getSessionStorage } from '@/utils/auth'; @@ -243,7 +244,7 @@ export const projectRichorJoint = '023'; // 中航锐创(实训室) export const projectSrsandbox = '024'; // 上饶沙盘 export const projectJxgm = '025'; // 江西工贸 export const projectSay = '026'; // 江苏安全 -export const projectRichorhhcj = '027'; //红河财经 +export const projectRichorhhcj = '027'; // 红河财经 export const userTrainingPlatform = '016'; // 实训系统 // export const refereePlatform = '017'; // 裁判系统 @@ -688,6 +689,12 @@ export const publicAsyncRoute = [ path: '/bigTrainRunplanManage', component: BigTrainRunplanManage, hidden: true + }, + { + // 调度台 + path: '/dispatcherStationManage', + component: dispatcherStationManage, + hidden: true } ]; diff --git a/src/views/dispatcherStationManage/dispatchCmd.vue b/src/views/dispatcherStationManage/dispatchCmd.vue new file mode 100644 index 000000000..6b58f5d2a --- /dev/null +++ b/src/views/dispatcherStationManage/dispatchCmd.vue @@ -0,0 +1,111 @@ + + + + + + diff --git a/src/views/dispatcherStationManage/index.vue b/src/views/dispatcherStationManage/index.vue new file mode 100644 index 000000000..58a0f81d2 --- /dev/null +++ b/src/views/dispatcherStationManage/index.vue @@ -0,0 +1,422 @@ + ++++ ++ ++++ ++ +++数据库正常+缓存命令+接受命令+发送命令+签收完成++ +++查询++ ++++ ++ +++命令标题++ ++ +++正文字体+++受令列表++ ++ 常用词汇 ++++ + + + + diff --git a/src/views/newMap/displayNew/menuSchema.vue b/src/views/newMap/displayNew/menuSchema.vue index 7e301605e..d28f9a704 100644 --- a/src/views/newMap/displayNew/menuSchema.vue +++ b/src/views/newMap/displayNew/menuSchema.vue @@ -14,7 +14,8 @@上海局CTC系统-行调台-控制工具条+++ ++++++++ {{ item.label }}++ CTC -调度台 + +调度台 IBP盘 运行图编辑 @@ -278,6 +279,22 @@ export default { }); window.open(routeData.href, '_blank'); }, + goDsManage() { + const routeData = this.$router.resolve({ + path:'/dispatcherStationManage', + query:{ + group: this.$route.query.group, + mapId:this.$route.query.mapId, + project: this.project, + prdType: this.$route.query.prdType, + lineCode:this.$route.query.lineCode, + // stationCode:this.$store.state.training.roleDeviceCode, + token:getToken(), + noPreLogout: true + } + }); + window.open(routeData.href, '_blank'); + }, changeOperateMode() { this.faultMode = !this.faultMode; let mode = OperateMode.NORMAL; From 6724587aeddeb32c6a06aa4e89fbde8c09c30793 Mon Sep 17 00:00:00 2001 From: fanDate: Tue, 28 Jun 2022 13:06:21 +0800 Subject: [PATCH 10/51] =?UTF-8?q?=E6=89=93=E9=93=81=E7=BB=BC=E5=90=88?= =?UTF-8?q?=E6=BC=94=E7=BB=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/newMap/displayNew/index.vue | 8 +++-- src/views/newMap/displayNew/menuDemon.vue | 20 ++++++------ .../newMap/jointTrainingNew/menuSchema.vue | 32 ++++++++++++------- 3 files changed, 38 insertions(+), 22 deletions(-) diff --git a/src/views/newMap/displayNew/index.vue b/src/views/newMap/displayNew/index.vue index ff44bda94..b4f3154c6 100644 --- a/src/views/newMap/displayNew/index.vue +++ b/src/views/newMap/displayNew/index.vue @@ -211,7 +211,11 @@ export default { this.$store.dispatch('scriptRecord/updateSimulationPause', resp.data.pause); // 是否暂停判断 this.$store.dispatch('training/setInitTime', +new Date(`${new Date().toLocaleDateString()} ${timeFormat(resp.data.systemTime)}`)); // this.$store.dispatch('training/countTime'); - this.$store.dispatch('training/setPrdType', resp.data.prodType); + if (resp.data.prodType === '03') { + this.$store.dispatch('training/setPrdType', this.$router.query.prdType); + } else { + this.$store.dispatch('training/setPrdType', resp.data.prodType); + } this.$store.dispatch('runPlan/setRunPlanInfo', resp.data.runPlan); this.planRunning = resp.data.planRunning; if (resp.data.planRunning) { @@ -223,7 +227,7 @@ export default { this.dataError = resp.data.dataError; } }, - // 通过showMode切换显示效果 + // 通过showMode切换显示效果 11 // switchModeInner(swch) { // let showMode = '03'; // if (swch == '01') { diff --git a/src/views/newMap/displayNew/menuDemon.vue b/src/views/newMap/displayNew/menuDemon.vue index d4d8b9c3d..6509817b3 100644 --- a/src/views/newMap/displayNew/menuDemon.vue +++ b/src/views/newMap/displayNew/menuDemon.vue @@ -155,12 +155,12 @@ export default { isDisable() { return this.$store.state.training.started; }, - isCtc() { - return !!this.$route.query.ctc - }, - zIndex() { - return this.$route.query.ctc ? 11:0 - }, + isCtc() { + return !!this.$route.query.ctc; + }, + zIndex() { + return this.$route.query.ctc ? 11 : 0; + }, project() { return getSessionStorage('project'); }, @@ -263,8 +263,10 @@ export default { permissionType: PermissionType.SIMULATION }; getGoodsTryUse(data).then(res => { - this.remainingTime = res.data.tryTime; - this.timeNow = Date.parse(new Date()) / 1000 + this.remainingTime; + if (res.data) { + this.remainingTime = res.data.tryTime; + this.timeNow = Date.parse(new Date()) / 1000 + this.remainingTime; + } if (this.try) { this.time = setInterval(() => { this.tryTime += 1; @@ -274,7 +276,7 @@ export default { } }, 1000); } - }).catch(() => { + }).catch((e) => { this.$messageBox(this.$t('display.demon.getTimeFail')); }); }, diff --git a/src/views/newMap/jointTrainingNew/menuSchema.vue b/src/views/newMap/jointTrainingNew/menuSchema.vue index 6aa613703..ce1f6d056 100644 --- a/src/views/newMap/jointTrainingNew/menuSchema.vue +++ b/src/views/newMap/jointTrainingNew/menuSchema.vue @@ -13,8 +13,8 @@ /> - 占线板 -路票 +CTC +路票 IBP盘 大屏 ISCS @@ -31,7 +31,6 @@- @@ -48,14 +47,13 @@ import { loadRunPlanData } from '@/utils/loaddata'; import { EventBus } from '@/scripts/event-bus'; import { timesSpeedPlayback } from '@/api/rtSimulation'; import { queryHasIscs } from '@/api/iscs'; -import LineBoard from '../displayCity/lineBoard'; +import { getToken } from '@/utils/auth'; import TrainTicket from '../displayNew/trainTicket'; export default { name: 'MenuDemonSchema', components:{ JoinRunPlanView, SelectIbp, - LineBoard, TrainTicket }, props: { @@ -145,9 +143,6 @@ export default { datie() { return this.$route.query.lineCode == '16'; }, - isCtc() { - return !!this.$route.query.ctc; - }, isScreen() { return this.$store.state.training.prdType === '07'; }, @@ -248,6 +243,24 @@ export default { } this.$store.dispatch('training/changeOperateMode', { mode: mode }); }, + goCtc() { + const routeData = this.$router.resolve({ + path:'/displayNew/demon', + query:{ + lineCode:this.$route.query.lineCode, + group: this.$route.query.group, + prdType: '01', + mapId:this.$route.query.mapId, + project: this.project, + newApi: false, + ctc: true, + try: this.$route.query.try || 0, + token:getToken(), + noPreLogout: true + } + }); + window.open(routeData.href, '_blank'); + }, changeDirectiveMode() { // 调整指令模式 this.directiveMode = !this.directiveMode; let mode = OperateMode.NORMAL; @@ -317,9 +330,6 @@ export default { this.$message.error('设置倍速失败!'); }); }, - showLineBoard() { - this.$refs.lineBoard.doShow(); - }, showTrainTicket() { this.$refs.trainTicket.doShow(); }, From f934b70b3e5cb53ee03365d66baaec188eee942b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=BA=20=E8=91=A3?= <58670809@qq.com> Date: Tue, 28 Jun 2022 13:06:52 +0800 Subject: [PATCH 11/51] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/dispatcherStationManage/index.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/views/dispatcherStationManage/index.vue b/src/views/dispatcherStationManage/index.vue index 58a0f81d2..46a82a10d 100644 --- a/src/views/dispatcherStationManage/index.vue +++ b/src/views/dispatcherStationManage/index.vue @@ -27,6 +27,7 @@ import CmdIcon from '@/assets/dispatcherStation/cmd.png'; import DispatchCmd from './dispatchCmd.vue'; import { loadMapDataById } from '@/utils/loaddata'; import { creatSubscribe, clearSubscribe, getTopic, displayTopic } from '@/utils/stomp'; +import { getToken } from '@/utils/auth'; export default { name:'DispatcherStationManage', components: { From ebb204c475193c5e0127f22737a296742a06b47c Mon Sep 17 00:00:00 2001 From: fan Date: Tue, 28 Jun 2022 15:04:00 +0800 Subject: [PATCH 12/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BB=BC=E5=90=88?= =?UTF-8?q?=E6=BC=94=E7=BB=83=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/shape/graph/Station/index.js | 1 - src/jmapNew/theme/datie_02/menus/index.vue | 9 +- src/jmapNew/theme/datie_02/menus/menuBar.vue | 273 +----------- src/store/modules/map.js | 3 - src/views/newMap/displayNew/menuDemon.vue | 6 +- src/views/newMap/jlmapNew/index.vue | 1 - .../jointTrainingNew/dispatcherStation.vue | 393 ++++++++++++++++++ src/views/newMap/jointTrainingNew/index.vue | 39 +- .../newMap/jointTrainingNew/menuSchema.vue | 7 + 9 files changed, 444 insertions(+), 288 deletions(-) create mode 100644 src/views/newMap/jointTrainingNew/dispatcherStation.vue diff --git a/src/jmapNew/shape/graph/Station/index.js b/src/jmapNew/shape/graph/Station/index.js index ab27d491e..a983a60bb 100644 --- a/src/jmapNew/shape/graph/Station/index.js +++ b/src/jmapNew/shape/graph/Station/index.js @@ -462,7 +462,6 @@ export default class Station extends Group { } } createVeryControl() { - console.log('createVeryControl', this.style.Station.StationControl.veryControl); const model = this.model; if (this.style.Station.StationControl.veryControl) { this.veryControl = new ESingleControl({ diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index c286588eb..b7dc8d15f 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -1,7 +1,7 @@ + - - - From 933ecb9748d6cafb55d5e78d582bcc0c325ac714 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 29 Jun 2022 10:59:16 +0800 Subject: [PATCH 19/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=20=E8=B0=83=E5=BA=A6?= =?UTF-8?q?=E5=8F=B0=20=E5=8F=91=E5=B8=83=E6=89=80=E6=9C=89=E8=A1=8C?= =?UTF-8?q?=E8=BD=A6=E8=AE=A1=E5=88=92=20=20=E8=BD=A6=E7=AB=99=E7=AD=BE?= =?UTF-8?q?=E6=94=B6=E8=A1=8C=E8=BD=A6=E8=AE=A1=E5=88=92=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/components/utils/menuOperate.js | 10 ++++ .../dialog/addDispatcherLogerRunplan.vue | 19 +++++- .../theme/datie_02/menus/dispatcherLoger.vue | 50 +++++++++++++--- src/scripts/cmdPlugin/CommandEnum.js | 4 +- src/scripts/cmdPlugin/OperationHandler.js | 14 +++++ src/utils/stomp.js | 6 +- .../jointTrainingNew/dispatcherStation.vue | 58 +++++++++---------- src/views/newMap/mapsystemNew/index.vue | 7 ++- 8 files changed, 124 insertions(+), 44 deletions(-) diff --git a/src/jmapNew/theme/components/utils/menuOperate.js b/src/jmapNew/theme/components/utils/menuOperate.js index d38e41c16..1223021ab 100644 --- a/src/jmapNew/theme/components/utils/menuOperate.js +++ b/src/jmapNew/theme/components/utils/menuOperate.js @@ -627,6 +627,16 @@ export const menuOperate = { deleteDispatcherLogerRp:{ operation: OperationEvent.CTCCommand.deleteDispatcherLogerRp.menu.operation, cmdType: CMD.CTC.CTC_ZONE_DELETE_RUN_PLAN + }, + // 车站签收行车计划 + stationSignRunplan:{ + operation: OperationEvent.CTCCommand.stationSignRunplan.menu.operation, + cmdType: CMD.CTC.CTC_STATION_SIGN_RUN_PLAN + }, + // 大铁 调度台 发布所有行车计划 + releaseAllDispatcherLogerRp:{ + operation: OperationEvent.CTCCommand.releaseAllDispatcherLogerRp.menu.operation, + cmdType: CMD.CTC.CTC_ZONE_RELEASE_ALL_RUN_PLAN } } diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue b/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue index ec85b0fe5..d3505d621 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue @@ -11,6 +11,16 @@ :close-on-click-modal="false" > + + + ++ import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate'; +import { mapGetters } from 'vuex'; export default { name: 'AddDispatcherLogerRunplan', data() { @@ -200,6 +211,10 @@ export default { }, rules: { + stationCode:[ + { required: true, message: '请选择车站', trigger: 'blur' }, + { required: true, message: '请选择车站', trigger: 'change' } + ], arriveTripNumber:[ { required: true, validator: validateTripNumber, trigger: 'blur' } ], @@ -210,6 +225,9 @@ export default { }; }, computed: { + ...mapGetters('map', [ + 'stationList' + ]), show() { return this.dialogShow && !this.$store.state.menuOperation.break; }, @@ -264,7 +282,6 @@ export default { this.$refs.form.validate((valid) => { if (valid) { this.loading = true; - this.model.stationCode = ''; commitOperate(menuOperate.CTC.addDispatcherLogerRp, {planParam:this.model}, 3).then(({valid})=>{ if (valid) { this.doClose(); diff --git a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue index 6867af771..496aa9d6f 100644 --- a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue +++ b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue @@ -30,12 +30,25 @@ width="100" > - {{ scope.row.tripNumber }} {{ scope.row.delete?'(删)':'' }}+{{ scope.row.tripNumber }} {{ scope.row.status==-1?'(删)':'' }}+ + ++ + ++ {{ runTypeMap[scope.row.trainType] }} ++ ++ + + {{ filterSectionMap[scope.row.runType].name }} +- - - + + - {{ mapStationDirectionMap[scope.row.arriveDirectionCode].name }}+ + {{ mapStationDirectionMap[scope.row.departDirectionCode].name }} @@ -77,6 +91,11 @@ :value="item.code" /> --> +{{ filterSectionMap[scope.row.arriveSectionCode].name }}@@ -145,7 +164,9 @@ export default { // filterSectionList:[], filterSectionMap:{}, tableData:[], - currentRow:null + currentRow:null, + trainTypeMap:{'FAST_PASSENGER_TRAIN':'跨局快速旅客列车'}, + runTypeMap:{'FAST_PASSENGER_TRAIN':'快速旅客列车'} }; }, computed: { @@ -192,8 +213,23 @@ export default { this.rpMenuPopShow = false; this.currentRow = null; }, + // 大铁 调度台 发布所有行车计划 sendRunplan() { - + // 车站签收行车计划 stationSignRunplan + const that = this; + this.$confirm('确定发布所有行车计划?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + commitOperate(menuOperate.CTC.releaseAllDispatcherLogerRp, {}, 3).then(({valid})=>{ + if (valid) { + that.$message.success('发布成功!'); + } + }).catch(() => { + that.$message.error('发布失败'); + }); + }).catch(e => {}); }, clearRpRow() { this.currentRow = null; diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index 25955189f..5227d87b1 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -409,7 +409,8 @@ export default { CTC_ZONE_SAVE_RUN_PLAN:{value:'CTC_ZONE_SAVE_RUN_PLAN', label: '调度台添加行车计划'}, CTC_ZONE_DELETE_RUN_PLAN:{value:'CTC_ZONE_DELETE_RUN_PLAN', label: '调度台删除行车计划'}, - CTC_ZONE_RELEASE_STATION_RUN_PLAN:{value:'CTC_ZONE_RELEASE_STATION_RUN_PLAN', label: '调度台发布车站的行车计划'}, + CTC_ZONE_RELEASE_ALL_RUN_PLAN:{value:'CTC_ZONE_RELEASE_ALL_RUN_PLAN', label: '调度台发布所有行车计划'}, + CTC_ZONE_RELEASE_STATION_RUN_PLAN:{value:'CTC_ZONE_RELEASE_STATION_RUN_PLAN', label: '调度台发布车站行车计划'}, CTC_STATION_SIGN_RUN_PLAN:{value:'CTC_STATION_SIGN_RUN_PLAN', label: '车站签收阶段计划'}, CTC_ZONE_SAVE_TRACK_SECTION:{value:'CTC_ZONE_SAVE_TRACK_SECTION', label: '调度台行车计划修改股道'}, @@ -417,6 +418,5 @@ export default { CTC_ZONE_SAVE_PLAN_TIME:{value:'CTC_ZONE_SAVE_PLAN_TIME', label: '调度台行车计划修改到达计划时间'}, CTC_ZONE_SAVE_DIRECTION:{value:'CTC_ZONE_SAVE_DIRECTION', label: '调度台行车计划修改到出入口'}, CTC_ZONE_SAVE_STATION:{value:'CTC_ZONE_SAVE_STATION', label: '调度台行车计划修改到发车站'} - // } }; diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index d8259d3d7..6dd59e509 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -3799,6 +3799,20 @@ export const OperationEvent = { operation: '1129', domId: '_Tips-CTC-addDispatcherLogerRp-Menu{TOP}' } + }, + // 大铁 调度台 发布所有行车计划 + releaseAllDispatcherLogerRp:{ + menu: { + operation: '1130', + domId: '_Tips-CTC-releaseAllDispatcherLogerRp-Menu{TOP}' + } + }, + // 车站签收行车计划 + stationSignRunplan:{ + menu: { + operation: '1131', + domId: '_Tips-CTC-stationSignRunplan-Menu{TOP}' + } } } diff --git a/src/utils/stomp.js b/src/utils/stomp.js index 41484b2af..2fd686282 100644 --- a/src/utils/stomp.js +++ b/src/utils/stomp.js @@ -34,9 +34,9 @@ export function getTopic(type, group, stationCode) { case 'CTC': topic = `/user/queue/simulation/${group}/ctc`; break; - case 'CTC_RAILWAY': - topic = `/queue/simulation/${group}/railway`; - break; + // case 'CTC_RAILWAY': + // topic = `/queue/simulation/${group}/railway`; + // break; case 'CTC_MANAGE': // topic = `/user/queue/simulation/${group}/ctc/manage`; topic = `/user/queue/simulation/${group}/ctcManage`; diff --git a/src/views/newMap/jointTrainingNew/dispatcherStation.vue b/src/views/newMap/jointTrainingNew/dispatcherStation.vue index 69ebe5472..c944adb55 100644 --- a/src/views/newMap/jointTrainingNew/dispatcherStation.vue +++ b/src/views/newMap/jointTrainingNew/dispatcherStation.vue @@ -79,11 +79,11 @@ export default { ] }; }, - watch: { - '$store.state.training.prdType': function(prdType, oldPrdType) { - this.changePrdType(prdType, oldPrdType); - } - }, + // watch: { + // '$store.state.training.prdType': function(prdType, oldPrdType) { + // this.changePrdType(prdType, oldPrdType); + // } + // }, mounted() { const _that = this; window.onbeforeunload = () => { _that.clearSubscribe(); }; @@ -115,31 +115,31 @@ export default { callback: action => { } }); - }, - changePrdType(prdType, oldPrdType) { - if (prdType) { - this.subscribe(prdType); - } - if (oldPrdType) { - this.clearSubscribe(oldPrdType); - } - }, - async subscribe(prdType) { - const header = { group: this.$route.query.group || '', 'X-Token': getToken() }; - if (prdType == '02') { - creatSubscribe(getTopic('CTC_RAILWAY', this.$route.query.group), header); - } else if (prdType == '01') { - creatSubscribe(getTopic('CTC', this.$route.query.group), header); - } - - }, - clearSubscribe(prdType) { - if (prdType == '02') { - clearSubscribe(getTopic('CTC_RAILWAY', this.groupModel)); - } else if (prdType == '01') { - clearSubscribe(getTopic('CTC', this.groupModel)); - } } + // changePrdType(prdType, oldPrdType) { + // if (prdType) { + // this.subscribe(prdType); + // } + // if (oldPrdType) { + // this.clearSubscribe(oldPrdType); + // } + // }, + // async subscribe(prdType) { + // const header = { group: this.$route.query.group || '', 'X-Token': getToken() }; + // if (prdType == '02') { + // creatSubscribe(getTopic('CTC_RAILWAY', this.$route.query.group), header); + // } else if (prdType == '01') { + // creatSubscribe(getTopic('CTC', this.$route.query.group), header); + // } + + // }, + // clearSubscribe(prdType) { + // if (prdType == '02') { + // clearSubscribe(getTopic('CTC_RAILWAY', this.groupModel)); + // } else if (prdType == '01') { + // clearSubscribe(getTopic('CTC', this.groupModel)); + // } + // } } }; diff --git a/src/views/newMap/mapsystemNew/index.vue b/src/views/newMap/mapsystemNew/index.vue index 60dcbd61a..70b088ec4 100644 --- a/src/views/newMap/mapsystemNew/index.vue +++ b/src/views/newMap/mapsystemNew/index.vue @@ -120,9 +120,11 @@ export default { const header = { group: this.$route.query.group || '', 'X-Token': getToken() }; creatSubscribe(`${displayTopic}\/${this.$route.query.group}`, header); creatSubscribe(getTopic('STATE', this.$route.query.group), header); - if (this.$route.query.ctc == 'true') { + // if (this.$route.query.ctc == 'true') { + if (this.$route.query.lineCode == '16') { creatSubscribe(getTopic('CTC', this.$route.query.group), header); } + // $route.query.lineCode === '16'; // if (this.$route.query.dispatcherStation == 'true') { // creatSubscribe(getTopic('CTC_RAILWAY', this.$route.query.group), header); // } @@ -144,7 +146,8 @@ export default { clearSubscribe() { clearSubscribe(`${displayTopic}\/${this.groupModel}`); clearSubscribe(getTopic('STATE', this.groupModel)); - if (this.$route.query.ctc == 'true') { + // if (this.$route.query.ctc == 'true') { + if (this.$route.query.lineCode == '16') { clearSubscribe(getTopic('CTC', this.groupModel)); } // if (this.$route.query.dispatcherStation == 'true') { From ec5c6f5ff49813967e08d527a4a495fc86c74737 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 29 Jun 2022 13:53:35 +0800 Subject: [PATCH 20/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E9=A1=B9=E7=9B=AE=20?= =?UTF-8?q?=20=E8=B0=83=E5=BA=A6=E5=8F=B0=E8=A1=8C=E8=BD=A6=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E4=BF=AE=E6=94=B9=E8=82=A1=E9=81=93=20=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E8=AE=A1=E5=88=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/runplan.js | 8 ++ .../theme/components/utils/menuOperate.js | 9 +- .../dialog/addDispatcherLogerRunplan.vue | 23 ++-- .../menus/dialog/deleteDispatcherLoger.vue | 4 +- .../theme/datie_02/menus/dispatcherLoger.vue | 124 +++++++++++++----- src/scripts/cmdPlugin/OperationHandler.js | 9 ++ src/store/modules/socket.js | 58 ++++---- .../jointTrainingNew/dispatcherStation.vue | 10 +- 8 files changed, 163 insertions(+), 82 deletions(-) diff --git a/src/api/runplan.js b/src/api/runplan.js index 5aa70ac98..91211d454 100644 --- a/src/api/runplan.js +++ b/src/api/runplan.js @@ -513,3 +513,11 @@ export function updateTemplateRunPlan (data) { data }); } + +// 大铁 获取 调度台 运行计划 +export function getRunplanInRailway(group) { + return request({ + url: `/api/simulation/${group}/ctc/railway/runPlan/list`, + method: 'get' + }); +} diff --git a/src/jmapNew/theme/components/utils/menuOperate.js b/src/jmapNew/theme/components/utils/menuOperate.js index 1223021ab..ca116ceb4 100644 --- a/src/jmapNew/theme/components/utils/menuOperate.js +++ b/src/jmapNew/theme/components/utils/menuOperate.js @@ -637,6 +637,11 @@ export const menuOperate = { releaseAllDispatcherLogerRp:{ operation: OperationEvent.CTCCommand.releaseAllDispatcherLogerRp.menu.operation, cmdType: CMD.CTC.CTC_ZONE_RELEASE_ALL_RUN_PLAN + }, + // 调度台行车计划修改股道 + modifyDispatcherLogerRpSection:{ + operation: OperationEvent.CTCCommand.modifyDispatcherLogerRpSection.menu.operation, + cmdType: CMD.CTC.CTC_ZONE_SAVE_TRACK_SECTION } } @@ -676,11 +681,11 @@ export function commitOperate(operate, paramList, over, fillStep = {}) { Object.assign(step, fillStep); return new Promise(function(resolve, reject) { - store.dispatch('training/nextNew', step).then(({ valid }) => { + store.dispatch('training/nextNew', step).then(({ valid, response }) => { if (valid) { store.dispatch('menuOperation/handleBreakFlag', { break: true }); } - resolve({ valid: valid, operate: {...step} }); + resolve({ valid: valid, operate: {...step}, response:response}); }).catch(error=>{ reject(error); }); diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue b/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue index d3505d621..ace2715c1 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue @@ -42,13 +42,13 @@- + - + - + - + - + - + - + 始发 - + 终到 @@ -242,9 +242,9 @@ export default { } }, methods: { - doShow({filterSectionMap, mapStationDirectionMap}) { + doShow({filterSectionList, mapStationDirectionMap}) { this.mapStationDirectionList = Object.values(mapStationDirectionMap); - this.filterSectionList = Object.values(filterSectionMap); + this.filterSectionList = filterSectionList; this.dialogShow = true; this.$nextTick(function () { this.$store.dispatch('training/emitTipFresh'); @@ -282,8 +282,9 @@ export default { this.$refs.form.validate((valid) => { if (valid) { this.loading = true; - commitOperate(menuOperate.CTC.addDispatcherLogerRp, {planParam:this.model}, 3).then(({valid})=>{ + commitOperate(menuOperate.CTC.addDispatcherLogerRp, {planParam:this.model}, 3).then(({valid, response})=>{ if (valid) { + this.$emit('addDisLoger', response.data); this.doClose(); } }).catch(() => { diff --git a/src/jmapNew/theme/datie_02/menus/dialog/deleteDispatcherLoger.vue b/src/jmapNew/theme/datie_02/menus/dialog/deleteDispatcherLoger.vue index 6d1a34bca..413fdc13f 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/deleteDispatcherLoger.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/deleteDispatcherLoger.vue @@ -79,10 +79,12 @@ export default { }, commit() { this.loading = true; - commitOperate(menuOperate.CTC.deleteDispatcherLogerRp, this.model, 2).then(({valid})=>{ + const param = this.model; + commitOperate(menuOperate.CTC.deleteDispatcherLogerRp, param, 2).then(({valid})=>{ this.loading = false; this.$emit('clearRpRow'); if (valid) { + this.$emit('deleteDisLoger', param); this.doClose(); } }).catch(() => { diff --git a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue index 496aa9d6f..cd15a4248 100644 --- a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue +++ b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue @@ -33,7 +33,7 @@{{ scope.row.tripNumber }} {{ scope.row.status==-1?'(删)':'' }}-+ + + {{ scope.row.arriveTripNumber }} + ++ {{ scope.row.departTripNumber }} -- + - + ++ diff --git a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue index cd15a4248..56e7ad6f8 100644 --- a/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue +++ b/src/jmapNew/theme/datie_02/menus/dispatcherLoger.vue @@ -85,6 +85,7 @@ v-model="tableData[scope.$index].arriveSectionCode" placeholder="" size="mini" + :disabled="scope.row.status==-1" popper-class="stationSelect" @change="changeArriveRunPlan($event,scope.row,scope.$index)" > @@ -112,6 +113,7 @@ passenger placeholder="" size="mini" popper-class="stationSelect" + :disabled="scope.row.status==-1" @change="changeDepartRunPlan($event,scope.row,scope.$index)" >- - + +-@@ -138,15 +142,16 @@ passenger - + + 调度命令-@@ -484,6 +484,7 @@阶段计划(F8)+阶段计划(F8)发送计划阶段记事+ @@ -505,6 +506,7 @@ import Rpwp from '@/assets/ctc_icon/rpwp.png'; import Rph from '@/assets/ctc_icon/rph.png'; import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo'; import SendRunplan from './dialog/sendRunplan'; +import StageRunplan from './dialog/stageRunplan'; import DeleteRunplan from './dialog/deleteRunplan'; import ModifyAdjacentStation from './dialog/modifyAdjacentStation'; import ModifyTripNumber from './dialog/modifyTripNumber'; @@ -515,6 +517,7 @@ export default { name:'RunplanPane', components: { SendRunplan, + StageRunplan, DeleteRunplan, ModifyAdjacentStation, ModifyTripNumber, @@ -541,6 +544,7 @@ export default { filterSectionList:[], activeDepartRunPlan:{}, activeArriveRunPlan:{}, + currentRailwaySimulationRunplan:{}, // radioSelected:'' currentRow:null }; @@ -553,9 +557,23 @@ export default { watch:{ '$store.state.socket.railCtcRunplanChange': function (val) { this.loadData(); + }, + '$store.state.socket.railwaySimulationRunplanSendChange': function (val) { + this.getRailwaySimulationRunplanSend(); } + // railwaySimulationRunplanSendMap + // railwaySimulationRunplanSendChange }, methods:{ + getRailwaySimulationRunplanSend() { + const stationCode = this.$store.state.training.roleDeviceCode; + const railwaySimulationRunplanSendMap = this.$store.state.socket.railwaySimulationRunplanSendMap; + if (railwaySimulationRunplanSendMap[stationCode] && railwaySimulationRunplanSendMap[stationCode].dataList.length > 0) { + // 阶段计划 + document.getElementById('stageRunplan').classList.add('active'); + this.currentRailwaySimulationRunplan = railwaySimulationRunplanSendMap; + } + }, loadData() { this.tableData = []; const railCtcRunplanInitMsg = copyAssign({}, this.$store.state.socket.railCtcRunplanInitMsg); @@ -589,6 +607,7 @@ export default { this.tableData = []; this.loadData(); this.isShow = true; + this.getRailwaySimulationRunplanSend(); window.addEventListener('keydown', this.handleKeyDown); // arriveRunPlan: Object // code: "00110010" @@ -622,6 +641,11 @@ export default { this.agreeNotcie(); break; } + case 'F8': { + event.preventDefault(); + this.stageRunplan(); + break; + } } } }, @@ -630,6 +654,12 @@ export default { this.$refs.sendRunplan.doShow(this.tableData, this.activeDepartRunPlan, this.activeArriveRunPlan, this.filterSectionList); } }, + stageRunplan() { + if (document.getElementById('stageRunplan').className.includes('active')) { + const stationCode = this.$store.state.training.roleDeviceCode; + this.$refs.stageRunplan.doShow(this.currentRailwaySimulationRunplan[stationCode], this.filterSectionList); + } + }, focusDepartRunPlan(event, row) { this.activeDepartRunPlan[row.code] = {sectionCode:event, code:row.code}; }, @@ -680,6 +710,10 @@ export default { const sendRunplan = document.getElementById('sendRunplan').className; document.getElementById('sendRunplan').className = sendRunplan.replace('active', ''); }, + closeStageFlash() { + const sendRunplan = document.getElementById('stageRunplan').className; + document.getElementById('stageRunplan').className = sendRunplan.replace('active', ''); + }, selectedTripNumber(row, column, cell, event) { if (column.property == 'tripNumber') { if (this.currentRow && this.currentRow.code == row.code) { @@ -984,7 +1018,7 @@ export default { .runplanTwo1Level{line-height: 28px;} .runplanTwo3Level{line-height: 70px;} .runplanZhe{width: 16px;display: inline-block;vertical-align: top;} -#sendRunplan.active{ +#sendRunplan.active,#stageRunplan.active{ animation:changeColor 1s infinite; -moz-animation:changeColor 1s infinite; /* Firefox */ -webkit-animation:changeColor 1s infinite; /* Safari and Chrome */ diff --git a/src/store/modules/socket.js b/src/store/modules/socket.js index 30510fa50..c4ed18178 100644 --- a/src/store/modules/socket.js +++ b/src/store/modules/socket.js @@ -233,9 +233,12 @@ function handle(state, data) { }); state.railCtcRunplanChange++; break; - // 大铁项目 ctc 调度下发消息 + // 大铁项目 ctc 调度发布行车计划 给车站下发消息 case 'SIMULATION_RAILWAY_RUN_PLAN_SEND': - // TODO + msg.forEach(each=>{ + state.railwaySimulationRunplanSendMap[each.stationCode] = each; + }); + state.railwaySimulationRunplanSendChange++; break; // 大铁项目 ctc 车务管理端 初始化消息 case 'SIMULATION_CTC_MANAGER_RUN_PLAN_EDIT_INIT': @@ -440,7 +443,9 @@ const socket = { railCtcRunplanInitMsg:{}, // 大铁项目 ctc 运行图初始化信息 railCtcRunplanChange:0, // 大铁项目 ctc 运行图信息变化 railCtcStationManageRpMsg:{}, // 大铁项目 ctc 车务管理 端运行图信息 - railCtcStationManageRpChange:0 // 大铁项目 ctc 车务管理 运行图信息变化 + railCtcStationManageRpChange:0, // 大铁项目 ctc 车务管理 运行图信息变化 + railwaySimulationRunplanSendMap:{}, // 大铁项目 调度台 发布 行车计划 + railwaySimulationRunplanSendChange:0 // 大铁项目 调度台 发布 行车计划变化 // railwaySimulationRpMsg:{}, // 大铁项目 调度台 调度台 // railwaySimulationRpChange:0 // 大铁项目 调度台 运行图信息变化 }, From 21e8785ecb0be13a2c9521b0486268ec5a88b3fe Mon Sep 17 00:00:00 2001 From: fan Date: Wed, 29 Jun 2022 15:57:24 +0800 Subject: [PATCH 22/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=20=20=E8=B7=AF?= =?UTF-8?q?=E7=A5=A8=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/components/utils/menuOperate.js | 14 +- src/jmapNew/theme/datie_02/menus/index.vue | 1 - src/scripts/ConstConfig.js | 19 +- src/scripts/cmdPlugin/CommandEnum.js | 4 + src/scripts/cmdPlugin/OperationHandler.js | 14 + src/store/modules/map.js | 12 +- src/store/modules/training.js | 1 + src/views/newMap/displayNew/trainTicket.vue | 283 ------------------ .../newMap/jointTrainingNew/menuSchema.vue | 4 +- src/views/newMap/trainTicket/greenLicence.vue | 64 ++++ src/views/newMap/trainTicket/index.vue | 281 +++++++++++++++++ src/views/newMap/trainTicket/redLicence.vue | 92 ++++++ src/views/newMap/trainTicket/trainTicket.vue | 64 ++++ 13 files changed, 550 insertions(+), 303 deletions(-) delete mode 100644 src/views/newMap/displayNew/trainTicket.vue create mode 100644 src/views/newMap/trainTicket/greenLicence.vue create mode 100644 src/views/newMap/trainTicket/index.vue create mode 100644 src/views/newMap/trainTicket/redLicence.vue create mode 100644 src/views/newMap/trainTicket/trainTicket.vue diff --git a/src/jmapNew/theme/components/utils/menuOperate.js b/src/jmapNew/theme/components/utils/menuOperate.js index b7ada1a2e..04519f77a 100644 --- a/src/jmapNew/theme/components/utils/menuOperate.js +++ b/src/jmapNew/theme/components/utils/menuOperate.js @@ -618,6 +618,16 @@ export const menuOperate = { operation: OperationEvent.CTCCommand.setRoute.menu.operation, cmdType: CMD.CTC.CTC_SET_ROUTE } + }, + Rail: { + railFillInTicket: { + operation: OperationEvent.RailCommand.railFillInTicket.menu.operation, + cmdType: CMD.RAIL.CMD_RAIL_FILL_IN_TICKET + }, + railQueryTicket: { + operation: OperationEvent.RailCommand.railQueryTicket.menu.operation, + cmdType: CMD.RAIL.CMD_RAIL_QUERY_TICKET + } } }; @@ -656,11 +666,11 @@ export function commitOperate(operate, paramList, over, fillStep = {}) { Object.assign(step, fillStep); return new Promise(function(resolve, reject) { - store.dispatch('training/nextNew', step).then(({ valid }) => { + store.dispatch('training/nextNew', step).then(({ valid, response }) => { if (valid) { store.dispatch('menuOperation/handleBreakFlag', { break: true }); } - resolve({ valid: valid, operate: {...step} }); + resolve({ valid: valid, response: response, operate: {...step} }); }).catch(error=>{ reject(error); }); diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index b7dc8d15f..0088b2618 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -193,7 +193,6 @@ export default { } }, mounted() { - console.log(this.$store.state.training.prdType === '02', this.$store.state.training.prdType, this.isShowBar, this.title); this.$nextTick(() => { this.$store.dispatch('config/updateMenuBar'); const _that = this; diff --git a/src/scripts/ConstConfig.js b/src/scripts/ConstConfig.js index dfc88db72..1b223db8b 100644 --- a/src/scripts/ConstConfig.js +++ b/src/scripts/ConstConfig.js @@ -117,7 +117,8 @@ export default { { label: '司机', value: 'Driver' }, { label: '列车', value: 'Train' }, { label: '方向杆', value: 'DirectionRod'}, - { label: 'CTC', value: 'CTC' } + { label: 'CTC', value: 'CTC' }, + { label: '路票', value: 'RAIL' } ], simulationDeviceList:[ @@ -242,13 +243,13 @@ export default { { label: '自动换端', value: 'AUTO' }, { label: '无人折返', value: 'UNMANNED' } ], - directionLabelList: [ - { label: 'X', value: 'X' }, - { label: 'XF', value: 'XF' }, - { label: 'XD', value: 'XD' }, - { label: 'S', value: 'S' }, - { label: 'SF', value: 'SF' }, - { label: 'SD', value: 'SD' } - ] + directionLabelList: [ + { label: 'X', value: 'X' }, + { label: 'XF', value: 'XF' }, + { label: 'XD', value: 'XD' }, + { label: 'S', value: 'S' }, + { label: 'SF', value: 'SF' }, + { label: 'SD', value: 'SD' } + ] } }; diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index b0035ab3c..4330d6efc 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -406,5 +406,9 @@ export default { CTC_REMOVE_RUN_PLAN_FROM_EDIT_AREA:{value: 'CTC_REMOVE_RUN_PLAN_FROM_EDIT_AREA', label: '删除列车固定径路'}, CTC_RELEASE_RUN_PLAN_TO_SIMULATION:{value: 'CTC_RELEASE_RUN_PLAN_TO_SIMULATION', label: '运行计划发布至CTC'}, CTC_SET_ROUTE:{value: 'CTC_SET_ROUTE', label: 'CTC办理进路'} + }, + RAIL: { + CMD_RAIL_FILL_IN_TICKET: {value: 'RAIL_FILL_IN_TICKET', label: '填写票据'}, + CMD_RAIL_QUERY_TICKET: {value: 'RAIL_QUERY_TICKET', label: '查询票据'} } }; diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index 404e9e199..0f5283899 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -3786,6 +3786,20 @@ export const OperationEvent = { domId: '_Tips-CTC-setRoute-Menu{TOP}' } } + }, + RailCommand: { + railFillInTicket: { + menu: { + operation: '1201', + domId: '_Tips-Rail-railFillInTicket-Menu{TOP}' + } + }, + railQueryTicket: { + menu: { + operation: '1202', + domId: '_Tips-Rail-railQueryTicket' + } + } } }; diff --git a/src/store/modules/map.js b/src/store/modules/map.js index b873b4c6f..ead7dd0f0 100644 --- a/src/store/modules/map.js +++ b/src/store/modules/map.js @@ -238,8 +238,8 @@ const map = { activeTrainListChange: 0, // 当前按计划行车的列车列表变化标识(只对列车的groupNumber进行了检测) activeTrainList: [], // 当前按计划行车的列车列表 showCentralizedStationCode: '', // 现地分集中站显示(集中站code) - stationSGuideMasterLock: false, - stationXGuideMasterLock: false, + stationSGuideMasterLock: false, + stationXGuideMasterLock: false, showCentralizedStationNum: 0, // 现地分集中站显示判断 overlapList: [], // 延续保护list overlapData: {}, // 延续保护数据 @@ -696,18 +696,18 @@ const map = { return flag; } }, - checkStationGuideMaster: state => (stationCode,sGuideMasterLock,xGuideMasterLock) => { + checkStationGuideMaster: state => (stationCode, sGuideMasterLock, xGuideMasterLock) => { if (state.showCentralizedStationCode === stationCode) { state.stationSGuideMasterLock = sGuideMasterLock; state.stationXGuideMasterLock = xGuideMasterLock; - } - }, + } + }, checkDeviceShow: state => deviceCode => { if (state.map && state.map.displayList && state.map.displayList.length && store.state.training.prdType) { let flag = false; const stationCode = state.showCentralizedStationCode; state.map.displayList.forEach(item => { - if ( + if ( store.state.training.prdType === '01' && item.type === 'LOCAL' && ((item.stationCodeList.includes(stationCode) && item.elementList.includes(deviceCode)) || !stationCode) diff --git a/src/store/modules/training.js b/src/store/modules/training.js index 746f36542..52966a432 100644 --- a/src/store/modules/training.js +++ b/src/store/modules/training.js @@ -450,6 +450,7 @@ const training = { rtn && rtn.valid && commit('next'); } } + console.log(rtn, '*********'); resolve(rtn); }).catch(error => { // console.error(error); diff --git a/src/views/newMap/displayNew/trainTicket.vue b/src/views/newMap/displayNew/trainTicket.vue deleted file mode 100644 index 4a51e229f..000000000 --- a/src/views/newMap/displayNew/trainTicket.vue +++ /dev/null @@ -1,283 +0,0 @@ - - - - - - - - diff --git a/src/views/newMap/jointTrainingNew/menuSchema.vue b/src/views/newMap/jointTrainingNew/menuSchema.vue index aede42923..de2d35505 100644 --- a/src/views/newMap/jointTrainingNew/menuSchema.vue +++ b/src/views/newMap/jointTrainingNew/menuSchema.vue @@ -14,7 +14,7 @@----附件类型:-- -- --路 票---电话记录 第-- 号---车 次-- --延安-- 延安北---延安站(站名印)-编号 123456---路 票---电话记录 第-- 号---车 次-- --延安北-- 延安---延安站(站名印)-编号 123456---许 可 证---第-- 号-- 在出站(进路)信号机故障、未设出站信号机、列车头部越过出站(进路)信号机的情况下,准许第 --- 次列车由 - - 线上发车。 - --站(站名印)车站值班员(签名)-- --- 年-- 月-- 日填发---许 可 证---第-- 号-- 现在一切电话中断,准许第 --- 次列车自 - - 站至 - - 站,本列车前于 - - 时 - - 分发出的第 - - 次列车,邻站到达通知 - 收到 -通 知 书-- 1.第 --- 次列车到达你站后,准接你站发出的列车。 - - 2.于 --- 时 - - 分发出第 - - 次列车,并于 - - 时 - - 分再发出第 - - 次列车。 - --站(站名印)车站值班员(签名)-- --- 年-- 月-- 日填发---调 度 命 令---- 年-- 月-- 日-- 时-- 分 第-- 号---受令处所--调度员姓名----内容---- --受令车站-- 车站值班员-- --出站/跟踪调车通知书-- 对方站承认的号码第 --- 号,准许自/至 - - 时 - - 分起/止 - - 机车由车站向 - - 区间出战/跟踪调车。 - --站(站名印)车站值班(扳道)员(签名)-- --- 年-- 月-- 日填发---轻 型 车 辆 使 用 书-- --CTC -路票 +路票 调度台 IBP盘 大屏 @@ -49,7 +49,7 @@ import { EventBus } from '@/scripts/event-bus'; import { timesSpeedPlayback } from '@/api/rtSimulation'; import { queryHasIscs } from '@/api/iscs'; import { getToken } from '@/utils/auth'; -import TrainTicket from '../displayNew/trainTicket'; +import TrainTicket from '../trainTicket/index'; export default { name: 'MenuDemonSchema', components:{ diff --git a/src/views/newMap/trainTicket/greenLicence.vue b/src/views/newMap/trainTicket/greenLicence.vue new file mode 100644 index 000000000..bdcf1541a --- /dev/null +++ b/src/views/newMap/trainTicket/greenLicence.vue @@ -0,0 +1,64 @@ + +++ + + + + diff --git a/src/views/newMap/trainTicket/index.vue b/src/views/newMap/trainTicket/index.vue new file mode 100644 index 000000000..afb77f324 --- /dev/null +++ b/src/views/newMap/trainTicket/index.vue @@ -0,0 +1,281 @@ + +许 可 证+++第++ 号++ 在 +++ + 的情况下,准许第 +出站(进路)信号机故障 +未设出站信号机 +列车头部越过出站(进路)信号机 ++ 次列车由 + + 线上发车。 + ++{{ showCentralizedStationName }}(站名印)车站值班员(签名)++ +++ 年++ 月++ 日填发++ + + + + + diff --git a/src/views/newMap/trainTicket/redLicence.vue b/src/views/newMap/trainTicket/redLicence.vue new file mode 100644 index 000000000..51f377134 --- /dev/null +++ b/src/views/newMap/trainTicket/redLicence.vue @@ -0,0 +1,92 @@ + +++++附件类型:++ ++ 提交 +查询 ++ + + ++ ++ + + + ++ +++ + + +++ + + +++ + ++ + + + + diff --git a/src/views/newMap/trainTicket/trainTicket.vue b/src/views/newMap/trainTicket/trainTicket.vue new file mode 100644 index 000000000..d5a510fad --- /dev/null +++ b/src/views/newMap/trainTicket/trainTicket.vue @@ -0,0 +1,64 @@ + +许 可 证+++第++ 号++ 现在一切电话中断,准许第 +++ 次列车自 + + 站至 + + 站,本列车前于 + + 时 + + 分发出的第 + + 次列车,邻站到达通知 + + + 收到 +已 +未 +通 知 书++ 1.第 +++ 次列车到达你站后,准接你站发出的列车。 + + 2.于 +++ 时 + + 分发出第 + + 次列车,并于 + + 时 + + 分再发出第 + + 次列车。 + ++{{ showCentralizedStationName }}(站名印)车站值班员(签名)++ +++ 年++ 月++ 日填发+++ + + + + From 1f52b72eb5d39dd4cfeb12801d9285a5df8ebcec Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 29 Jun 2022 16:05:29 +0800 Subject: [PATCH 23/51] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/datie_02/menus/dialog/stageRunplan.vue | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue b/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue index d062cc84c..5254a7b8c 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue @@ -54,7 +54,8 @@ >路 票+++电话记录 第++ 号+++车 次++ ++{{ ticketForm.station }}++ +++ ++ ++{{ ticketForm.station }}(站名印)++ 编号 +++ 删除-{{ scope.row.arriveSectionCode+'['+scope.row.oldArriveSectionCode+']' }}+{{ sectionMap[scope.row.arriveSectionCode].name }}+{{ sectionMap[scope.row.arriveSectionCode].name+'['+sectionMap[scope.row.oldArriveSectionCode].name+']' }} 删除-{{ scope.row.departSectionCode+'['+scope.row.oldDepartSectionCode+']' }}+{{ sectionMap[scope.row.departSectionCode].name }}+{{ sectionMap[scope.row.departSectionCode].name+'['+sectionMap[scope.row.oldDepartSectionCode].name+']' }}{ + this.sectionMap[section.code] = section.name; + }); this.dialogShow = true; this.$nextTick(function () { this.$store.dispatch('training/emitTipFresh'); }); + // filterSectionList }, doClose() { this.loading = false; From 1e2f294185aa45e546c8434ed8b8260dcfc2d8d2 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 29 Jun 2022 16:23:58 +0800 Subject: [PATCH 24/51] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datie_02/menus/dialog/stageRunplan.vue | 20 +++++++++++-------- .../theme/datie_02/menus/runplanPane.vue | 2 +- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue b/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue index 5254a7b8c..6a55e1b49 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/stageRunplan.vue @@ -54,8 +54,8 @@ > 删除-{{ sectionMap[scope.row.arriveSectionCode].name }}-{{ sectionMap[scope.row.arriveSectionCode].name+'['+sectionMap[scope.row.oldArriveSectionCode].name+']' }}+{{ sectionMap[scope.row.arriveSectionCode] }}+{{ sectionMap[scope.row.arriveSectionCode]+'['+sectionMap[scope.row.oldArriveSectionCode]+']' }} 删除-{{ sectionMap[scope.row.departSectionCode].name }}-{{ sectionMap[scope.row.departSectionCode].name+'['+sectionMap[scope.row.oldDepartSectionCode].name+']' }}+ +{{ sectionMap[scope.row.departSectionCode] }}+{{ sectionMap[scope.row.departSectionCode]+'['+sectionMap[scope.row.oldDepartSectionCode]+']' }}+ + From d4ad56e142cc0f812f18edbae21675580c887cf4 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Thu, 30 Jun 2022 10:05:27 +0800 Subject: [PATCH 28/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E9=A1=B9=E7=9B=AE=20ct?= =?UTF-8?q?c=20=E8=A1=8C=E8=BD=A6=E8=AE=A1=E5=88=92=20=E7=AD=BE=E6=94=B6?= =?UTF-8?q?=20=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/index.vue | 71 ++++++++++++++++++- .../theme/datie_02/menus/runplanPane.vue | 3 + src/store/modules/socket.js | 1 + 3 files changed, 74 insertions(+), 1 deletion(-) diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index 501c9b096..e12d32168 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -26,7 +26,7 @@ @@ -70,6 +72,8 @@ import MenuStation from './menuStation'; import MenuBar from './menuBar'; import MenuButtonCtc from './menuButtonCtc'; import RunplanPane from './runplanPane'; +import StageRunplan from './dialog/stageRunplan'; +import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo'; // import DispatcherLoger from './dispatcherLoger'; import PassiveAlarm from './passiveDialog/alarm'; import PassiveContorl from '@/jmapNew/theme/components/menus/passiveDialog/control'; @@ -113,6 +117,8 @@ export default { PassiveTimeout, MenuButtonCtc, RunplanPane, + StageRunplan, + NoticeInfo, // DispatcherLoger, BottomTable, MenuPanel @@ -127,6 +133,7 @@ export default { }, data() { return { + currentRailwaySimulationRunplan:{}, alarmMessages: [ { id: 1, message: '这是告警信息一' }, { id: 2, message: '这是告警信息二' }, @@ -190,6 +197,15 @@ export default { this.$store.dispatch('training/setInitTime', +new Date(`${new Date().toLocaleDateString()} ${timeFormat(time)}`)); const date = new Date(+new Date(`${new Date().toLocaleDateString()} ${timeFormat(time)}`)); this.initDate(date); + }, + '$store.state.socket.railwaySimulationRunplanSendChange': function (val) { + this.getRailwaySimulationRunplanSend(); + }, + '$store.state.training.roleDeviceCode': function (val) { + if (this.isCtc) { + debugger; + this.getRailwaySimulationRunplanSend(); + } } }, mounted() { @@ -213,6 +229,18 @@ export default { window.onclick = function (e) {}; }, methods: { + getRailwaySimulationRunplanSend() { + const stationCode = this.$store.state.training.roleDeviceCode; + const railwaySimulationRunplanSendMap = this.$store.state.socket.railwaySimulationRunplanSendMap; + if (railwaySimulationRunplanSendMap[stationCode] && railwaySimulationRunplanSendMap[stationCode].dataList.length > 0) { + // 阶段计划 + document.getElementById('stageRunplanOut').classList.add('active'); + this.currentRailwaySimulationRunplan = railwaySimulationRunplanSendMap; + } else { + const sendRunplan = document.getElementById('stageRunplanOut').className; + document.getElementById('stageRunplanOut').className = sendRunplan.replace('active', ''); + } + }, initDate(date) { this.time = `${prefixIntrger(date.getHours(), 2)}:${prefixIntrger(date.getMinutes(), 2)}:${prefixIntrger(date.getSeconds(), 2)}`; const years = date.getFullYear() + ''; @@ -225,6 +253,21 @@ export default { }, handleRunplan() { this.$refs.runplanPane.doShow(); + }, + stageRunplan() { + if (document.getElementById('stageRunplanOut').className.includes('active')) { + const stationCode = this.$store.state.training.roleDeviceCode; + this.$refs.stageRunplan.doShow(this.currentRailwaySimulationRunplan[stationCode]); + } + }, + noticeInfo() { + this.$refs.noticeInfo.doShow(); + }, + closeStageFlash() { + const sendRunplan = document.getElementById('stageRunplanOut').className; + document.getElementById('stageRunplanOut').className = sendRunplan.replace('active', ''); + const stationCode = this.$store.state.training.roleDeviceCode; + this.$store.dispatch('socket/deleteRailwaySimulationRunplan', stationCode); } // goDispatcherLoger() { // this.$refs.dispatcherLoger.doShow(); @@ -757,4 +800,30 @@ export default { .img-box:hover{ border: 2px #ccc inset; } + #stageRunplanOut{ + width: 100px;height: 25px;line-height: 21px;text-align: center;margin-left: 100px; + } + #stageRunplanOut.active{ + animation:changeColor 1s infinite; + -moz-animation:changeColor 1s infinite; /* Firefox */ + -webkit-animation:changeColor 1s infinite; /* Safari and Chrome */ + } + @keyframes changeColor + { + 0% {background:#f0f0f0;} + 50% {background:#ff1900;} + 100% {background:#f0f0f0;} + } + @-moz-keyframes changeColor /* Firefox */ + { + 0% {background:#f0f0f0;} + 50% {background:#ff1900;} + 100% {background:#f0f0f0;} + } + @-webkit-keyframes changeColor /* Safari and Chrome */ + { + 0% {background:#f0f0f0;} + 50% {background:#ff1900;} + 100% {background:#f0f0f0;} + } diff --git a/src/jmapNew/theme/datie_02/menus/runplanPane.vue b/src/jmapNew/theme/datie_02/menus/runplanPane.vue index bc90c7a11..036da1041 100644 --- a/src/jmapNew/theme/datie_02/menus/runplanPane.vue +++ b/src/jmapNew/theme/datie_02/menus/runplanPane.vue @@ -572,6 +572,9 @@ export default { // 阶段计划 document.getElementById('stageRunplan').classList.add('active'); this.currentRailwaySimulationRunplan = railwaySimulationRunplanSendMap; + } else { + const sendRunplan = document.getElementById('stageRunplan').className; + document.getElementById('stageRunplan').className = sendRunplan.replace('active', ''); } }, loadData() { diff --git a/src/store/modules/socket.js b/src/store/modules/socket.js index a13d33fca..d1ced1992 100644 --- a/src/store/modules/socket.js +++ b/src/store/modules/socket.js @@ -536,6 +536,7 @@ const socket = { }, deleteRailwaySimulationRunplan: (state, stationCode) => { delete state.railwaySimulationRunplanSendMap[stationCode]; + state.railwaySimulationRunplanSendChange++; } }, From f10a1181327dc791a88f3d432e1661ae416679e5 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Thu, 30 Jun 2022 10:40:36 +0800 Subject: [PATCH 29/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E9=A1=B9=E7=9B=AE=20?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dialog/addDispatcherLogerRunplan.vue | 22 ++++++++++++++----- src/jmapNew/theme/datie_02/menus/index.vue | 1 - 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue b/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue index 8a539af65..976daf1f2 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addDispatcherLogerRunplan.vue @@ -12,7 +12,7 @@ >调度命令-阶段计划+阶段计划阶段记事{{ dateString1 + ' ' + time }}同步站机通信中断@@ -55,6 +55,8 @@+ + @@ -106,23 +132,24 @@ - + { return each.stationCode == stationCode; }); + this.filterDepMapStationDirectionList = this.mapStationDirectionList.filter(each=>{ return each.stationCode == stationCode; }); + this.filterArrSectionList = this.filterSectionList.filter(each=>{ return each.stationCode == stationCode; }); + this.filterDepSectionList = this.filterSectionList.filter(each=>{ return each.stationCode == stationCode; }); + }, doClose() { this.loading = false; this.dialogShow = false; @@ -276,6 +286,8 @@ export default { transfinite:'NO' // 超限等级 NO:不超限 TRANSFINITE_SUPER:超级超限 TRANSFINITE_ONE_LEVEL:一级超限 TRANSFINITE_TWO_LEVEL:二级超限 }; + this.filterArrMapStationDirectionList = []; + this.filterDepMapStationDirectionList = []; this.$store.dispatch('training/emitTipFresh'); }, commit() { diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index e12d32168..44feee8f2 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -203,7 +203,6 @@ export default { }, '$store.state.training.roleDeviceCode': function (val) { if (this.isCtc) { - debugger; this.getRailwaySimulationRunplanSend(); } } From ed21d70bc4212f74179ef0c1926ec18d7e451b5b Mon Sep 17 00:00:00 2001 From: walker_sheng Date: Thu, 30 Jun 2022 13:09:40 +0800 Subject: [PATCH 30/51] =?UTF-8?q?local-test=20=E6=89=93=E5=8C=85=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + src/utils/baseUrl.js | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index d50c06312..4373cc9e3 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "build": "vue-cli-service build --mode production", "test": "vue-cli-service build --mode staging", "local": "vue-cli-service build --mode", + "buildas": "vue-cli-service build --mode", "preview": "node build/index.js --preview", "lint": "eslint --ext .js,.vue src", "test:unit": "jest --clearCache && vue-cli-service test:unit", diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index 05d02e164..5157fc347 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -24,10 +24,10 @@ export function handlerUrl(data) { if (process.env.NODE_ENV === 'development') { // const data = null; // BASE_API = 'https://joylink.club/jlcloud'; - BASE_API = 'https://test.joylink.club/jlcloud'; + // BASE_API = 'https://test.joylink.club/jlcloud'; // BASE_API = 'http://114.116.51.125/jlcloud'; // BASE_API = 'http://192.168.8.152:9000'; // 袁琪 - // BASE_API = 'http://192.168.8.172:9200'; // 旭强 + BASE_API = 'http://192.168.3.94:9000'; // 旭强 // BASE_API = 'http://192.168.3.15:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 // BASE_API = 'http://192.168.3.37:9000'; // 卫志宏 @@ -44,6 +44,11 @@ export function handlerUrl(data) { VOICE_API = data && data.resourcesDomainName ? 'https://' + data.resourcesDomainName : 'https://joylink.club/oss/joylink'; UPLOAD_API = 'http://joylink.club/jlfile'; BASE_SITE = 'https://test.joylink.club/cbtc'; + } else if (process.env.NODE_ENV === 'local-test') { + BASE_API = 'http://192.168.3.233:9000'; + VOICE_API = 'http://192.168.3.233/oss/joylink'; + UPLOAD_API = 'http://192.168.3.233'; + BASE_SITE = '/cbtc'; } else if (process.env.NODE_ENV === 'production' && process.env.VUE_APP_PRO === 'local') { BASE_API = 'http://160.20.60.15:9000'; VOICE_API = 'http://160.20.60.15/oss/joylink'; From 927687aa9ba39d9b98f83858cdf1cb3c8c37e974 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Thu, 30 Jun 2022 13:52:27 +0800 Subject: [PATCH 31/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E9=A1=B9=E7=9B=AE=20?= =?UTF-8?q?=20=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jointTrainingNew/dispatcherStation.vue | 67 +++++++++++-------- 1 file changed, 38 insertions(+), 29 deletions(-) diff --git a/src/views/newMap/jointTrainingNew/dispatcherStation.vue b/src/views/newMap/jointTrainingNew/dispatcherStation.vue index f47d605c9..35589e3b3 100644 --- a/src/views/newMap/jointTrainingNew/dispatcherStation.vue +++ b/src/views/newMap/jointTrainingNew/dispatcherStation.vue @@ -40,6 +40,7 @@ export default { return { stationCode:'', groupModel: '', + hasUnsubscribe:false, buttonList: [ { label: '运行图', @@ -79,11 +80,11 @@ export default { ] }; }, - // watch: { - // '$store.state.training.prdType': function(prdType, oldPrdType) { - // this.changePrdType(prdType, oldPrdType); - // } - // }, + watch: { + '$store.state.training.prdType': function(prdType, oldPrdType) { + this.changePrdType(prdType, oldPrdType); + } + }, mounted() { // const _that = this; // window.onbeforeunload = () => { _that.clearSubscribe(); }; @@ -115,31 +116,39 @@ export default { callback: action => { } }); - } - // changePrdType(prdType, oldPrdType) { - // if (prdType) { - // this.subscribe(prdType); - // } - // if (oldPrdType) { - // this.clearSubscribe(oldPrdType); - // } - // }, - // async subscribe(prdType) { - // const header = { group: this.$route.query.group || '', 'X-Token': getToken() }; - // if (prdType == '02') { - // creatSubscribe(getTopic('CTC_RAILWAY', this.$route.query.group), header); - // } else if (prdType == '01') { - // creatSubscribe(getTopic('CTC', this.$route.query.group), header); - // } + }, + changePrdType(prdType, oldPrdType) { + // if (prdType) { + // this.subscribe(prdType); + // } + // if (oldPrdType) { + // this.clearSubscribe(oldPrdType); + // } + if (prdType == '01') { + this.clearSubscribe(); + this.hasUnsubscribe = true; + } else if (prdType == '02' && this.hasUnsubscribe) { + this.subscribe(); + } + }, + async subscribe(prdType) { + const header = { group: this.$route.query.group || '', 'X-Token': getToken() }; + creatSubscribe(getTopic('CTC', this.$route.query.group), header); + // if (prdType == '02') { + // // creatSubscribe(getTopic('CTC_RAILWAY', this.$route.query.group), header); - // }, - // clearSubscribe(prdType) { - // if (prdType == '02') { - // clearSubscribe(getTopic('CTC_RAILWAY', this.groupModel)); - // } else if (prdType == '01') { - // clearSubscribe(getTopic('CTC', this.groupModel)); - // } - // } + // } else if (prdType == '01') { + // // creatSubscribe(getTopic('CTC', this.$route.query.group), header); + // } + + }, + clearSubscribe(prdType) { + // if (prdType == '02') { + // // clearSubscribe(getTopic('CTC_RAILWAY', this.groupModel)); + // } else if (prdType == '01') { + clearSubscribe(getTopic('CTC', this.groupModel)); + // } + } } }; From 28a09e0f21ebeb2356f0110dd1f94c87497da946 Mon Sep 17 00:00:00 2001 From: fan Date: Thu, 30 Jun 2022 14:55:18 +0800 Subject: [PATCH 32/51] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=B0=BF=E5=86=8C?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/scripts/cmdPlugin/CommandEnum.js | 4 +- src/scripts/cmdPlugin/OperationHandler.js | 41 ++++-- .../newMap/jointTrainingNew/menuSchema.vue | 8 +- src/views/newMap/registerBook/index.vue | 139 ++++++++++++++++-- src/views/newMap/trainTicket/index.vue | 20 ++- 5 files changed, 177 insertions(+), 35 deletions(-) diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index 92ac38626..f88a38649 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -421,6 +421,8 @@ export default { }, RAIL: { CMD_RAIL_FILL_IN_TICKET: {value: 'RAIL_FILL_IN_TICKET', label: '填写票据'}, - CMD_RAIL_QUERY_TICKET: {value: 'RAIL_QUERY_TICKET', label: '查询票据'} + CMD_RAIL_QUERY_TICKET: {value: 'RAIL_QUERY_TICKET', label: '查询票据'}, + CMD_RAIL_FILL_IN_REGISTER: {value: 'RAIL_FILL_IN_REGISTER', label: '填写行车簿册'}, + CMD_RAIL_QUERY_REGISTER: {value: 'RAIL_QUERY_REGISTER', label: '查询行车簿册'} } }; diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index fd5daf7ab..6a3636d19 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -3822,21 +3822,32 @@ export const OperationEvent = { } } }, - RailCommand: { - railFillInTicket: { - menu: { - operation: '1201', - domId: '_Tips-Rail-railFillInTicket-Menu{TOP}' - } - }, - railQueryTicket: { - menu: { - operation: '1202', - domId: '_Tips-Rail-railQueryTicket' - } - } - } - + RailCommand: { + railFillInTicket: { + menu: { + operation: '1201', + domId: '_Tips-Rail-railFillInTicket-Menu{TOP}' + } + }, + railQueryTicket: { + menu: { + operation: '1202', + domId: '_Tips-Rail-railQueryTicket' + } + }, + railFillInRegister: { + menu: { + operation: '1203', + domId: '_Tips-Rail-railFillInRegister' + } + }, + railQueryRegister: { + menu: { + operation: '1204', + domId: '_Tips-Rail-railQueryTicket' + } + } + } }; import { MapDeviceType } from './Config.js'; diff --git a/src/views/newMap/jointTrainingNew/menuSchema.vue b/src/views/newMap/jointTrainingNew/menuSchema.vue index c8e682ff8..b9e3edd74 100644 --- a/src/views/newMap/jointTrainingNew/menuSchema.vue +++ b/src/views/newMap/jointTrainingNew/menuSchema.vue @@ -13,11 +13,11 @@ /> - CTC +车务终端 路票 簿册 调度台 -IBP盘 +IBP盘 大屏 ISCS {{ $t('joinTraining.runGraphPreview') }} @@ -165,6 +165,10 @@ export default { }, showDispatcherStation() { return this.$route.query.lineCode === '16' && this.$store.state.training.prdType === '02'; + }, + ibpShow() { + const lineCodeList = ['08', '16']; + return this.userRole === 'STATION_SUPERVISOR' && !this.$route.query.projectDevice && !lineCodeList.includes(this.$route.query.lineCode); } }, watch: { diff --git a/src/views/newMap/registerBook/index.vue b/src/views/newMap/registerBook/index.vue index 08332912a..f93ea4b61 100644 --- a/src/views/newMap/registerBook/index.vue +++ b/src/views/newMap/registerBook/index.vue @@ -9,47 +9,160 @@ :close-on-click-modal="false" center > ++新增 +- diff --git a/src/views/newMap/displayCity/lineBoard.vue b/src/views/newMap/displayCity/lineBoard.vue index 8132a3ad7..4d7c5b224 100644 --- a/src/views/newMap/displayCity/lineBoard.vue +++ b/src/views/newMap/displayCity/lineBoard.vue @@ -361,8 +361,12 @@ export default { } if (item && item.trackView && item.trackView.trackLineMap) { for (const key in item.trackView.trackLineMap) { - if (this.standTrackSectionMap[key]) { - this.standTrackSectionMap[key].lines = item.trackView.trackLineMap[key]; + if (this.standTrackSectionMap[key] && item.trackView.trackLineMap[key]) { + for (const trainCode in item.trackView.trackLineMap[key]) { + if (this.standTrackSectionMap[key].lineMap[trainCode]) { + Object.assign(this.standTrackSectionMap[key].lineMap[trainCode], item.trackView.trackLineMap[key][trainCode]); + } else { this.standTrackSectionMap[key].lineMap[trainCode] = item.trackView.trackLineMap[key][trainCode]; } + } } } } @@ -384,10 +388,13 @@ export default { let oddNumber = true; for (const key in this.standTrackSectionMap) { if (this.standTrackSectionMap[key].belongStation === this.selectCode) { - if (this.standTrackSectionMap[key].lines && this.standTrackSectionMap[key].lines.length) { - this.standTrackSectionMap[key].lines.forEach((item, index) => { - this.trackList.push(Object.assign({}, item, { trackName: this.standTrackSectionMap[key].trackName, occupied: this.standTrackSectionMap[key].occupied, oddNumber: oddNumber, showTrack: index === 0 })); - }); + if ( JSON.stringify(this.standTrackSectionMap[key].lineMap) !== '{}') { + let flag = true; + const lineMap = this.standTrackSectionMap[key].lineMap; + for (const item in lineMap) { + this.trackList.push(Object.assign({}, lineMap[item], { trackName: this.standTrackSectionMap[key].trackName, occupied: this.standTrackSectionMap[key].occupied, oddNumber: oddNumber, showTrack: flag })); + flag = false; + } oddNumber = !oddNumber; } else { this.trackList.push({trackName: this.standTrackSectionMap[key].trackName, occupied: this.standTrackSectionMap[key].occupied, noData: true, oddNumber: oddNumber, showTrack: true}); @@ -400,7 +407,7 @@ export default { '$store.state.map.mapDataLoadedCount': function (val) { // 地图数据加载完成 this.sectionList.forEach(item => { if (item.standTrack) { - this.standTrackSectionMap[item.code] = { trackName: item.name, occupied: false, belongStation:item.belongStation, lines: [] }; + this.standTrackSectionMap[item.code] = { trackName: item.name, occupied: false, belongStation:item.belongStation, lineMap: {}}; } }); } @@ -421,18 +428,20 @@ export default { selectStandCode(code) { this.selectCode = code; this.trackList = []; + let oddNumber = true; for (const key in this.standTrackSectionMap) { if (this.standTrackSectionMap[key].belongStation === this.selectCode) { - if (this.standTrackSectionMap[key].lines && this.standTrackSectionMap[key].lines.length) { - this.standTrackSectionMap[key].lines.forEach((item, index) => { - if (!index) { - this.trackList.push(Object.assign({}, item, { sectionName: this.standTrackSectionMap[key].sectionName, occupied: this.standTrackSectionMap[key].occupied })); - } else { - this.trackList.push(Object.assign({}, item)); - } - }); + if ( JSON.stringify(this.standTrackSectionMap[key].lineMap) !== '{}') { + let flag = true; + const lineMap = this.standTrackSectionMap[key].lineMap; + for (const item in lineMap) { + this.trackList.push(Object.assign({}, lineMap[item], { trackName: this.standTrackSectionMap[key].trackName, occupied: this.standTrackSectionMap[key].occupied, oddNumber: oddNumber, showTrack: flag })); + flag = false; + } + oddNumber = !oddNumber; } else { - this.trackList.push({sectionName: this.standTrackSectionMap[key].sectionName, occupied: this.standTrackSectionMap[key].occupied}); + this.trackList.push({trackName: this.standTrackSectionMap[key].trackName, occupied: this.standTrackSectionMap[key].occupied, noData: true, oddNumber: oddNumber, showTrack: true}); + oddNumber = !oddNumber; } } } From 49593b2851a7ef4547ed9e4ce2651e0c8bdd02fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=BA=20=E8=91=A3?= <58670809@qq.com> Date: Thu, 30 Jun 2022 18:13:23 +0800 Subject: [PATCH 39/51] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=B0=83=E5=BA=A6?= =?UTF-8?q?=E5=91=BD=E4=BB=A4=E6=94=B6=E4=BB=A4=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/dispatcherStation/shouxinxiang.png | Bin 0 -> 3914 bytes src/jmapNew/theme/datie_02/menus/index.vue | 42 ++- src/store/modules/socket.js | 8 + .../dispatcherStationManage/cmdManage.vue | 254 ++++++++++++++++++ .../dispatcherStationManage/dispatchCmd.vue | 196 ++++++++++++-- 5 files changed, 468 insertions(+), 32 deletions(-) create mode 100644 src/assets/dispatcherStation/shouxinxiang.png create mode 100644 src/views/dispatcherStationManage/cmdManage.vue diff --git a/src/assets/dispatcherStation/shouxinxiang.png b/src/assets/dispatcherStation/shouxinxiang.png new file mode 100644 index 0000000000000000000000000000000000000000..bd285bc83c42c3b0027b586fd780c1b6a58ad64c GIT binary patch literal 3914 zcmV-Q54G@#P)- - + + + ++ {{ scope.row.moonDay }} + + + + ++ {{ scope.row.hourMinute }} + + + + + {{ scope.row.result }} + + - - - + + + ++ {{ scope.row.noticeTime.moonDay }} + + + + ++ {{ scope.row.noticeTime.hourMinute }} + + + + + {{ scope.row.noticeTime.info }} + + - - - + + + ++ {{ scope.row.arriveTime.moonDay }} + + + + ++ {{ scope.row.arriveTime.hourMinute }} + + + + + {{ scope.row.arriveTime.info }} + + - +- - + + + ++ {{ scope.row.endTime.moonDay }} + + + + ++ {{ scope.row.endTime.hourMinute }} + + + + ++ {{ scope.row.endTime.info }} + + + + 保存 +!{}vh=DpRLU6+b_}etG9l zW@uAWlQcFq>TzjlsbptoOGQP6w6(QKb#=AG#Kfrn-y3@2!Uf69%+%x2qesj7_3I@h zBt+`!>g1D8K9QQ5ntpwMzZptT-Mo2Iy+)zeA|oU9c*2AUvUu@g88Kpn8p`W__~8e+ zcI}!xeE3ivd+af{kEdS^&C1G>lP6E=-)q;dl@CAsP>;R6y(K6pNRJt+ufP7f?BBm% z-h1yonKEU{|GuG>m6ht5s;Vmeo1U9Lf4&~ioH eMMYc<`VeGc-T@>@)H5@)A!^PZ>05kXr}nF6oh>wY9Z!`t)hdJqimu zJx7@|X_5>cJXnqFsW1mwS1(+sms_{I &qYT^yZoY}q9QqZ^dwY(tQL9o)mifR z<9-04M?mX~vT4&fJ-2FAoGf47GXQf%IvGla!daxWw6y4KQics1CQm%^grcZTs;U~` zkrITnLCj~(8X>W>a~0J`jT+U?s@!7e*|TRQH8oX_SFBheAAkI@3>h*+O9k1Cy_A;Lg6U+z z*kb*A!-geY3_W-5ob2A60~O@q4EgAz6iG=jCUoDvbVN)g$h|M#vqWBdZ9FDJkn01W z9`eQ;Z^*7)yX4I`-&6#4tD(%tfPesb@x>PrKFbwkIJ-8<&MuX2zR3f7X+ijT%F?AV zFu?HgoH>!2)A{-N@ItkmKQEG)7>v5Q7=S|B*C6TX`*4oY;*E3DB_hHL&wzDOE?<9r z6ZeWFC5^$mW0g1%$r)K3S6`(|j?&N+O#9PMKdpb4mDRR~=aC~ EzEjnn}$8Tn3;JGJXa9vNwRR^NMXb?1T!;F3mcfApm31-B!Eyb?r+kr=J4Sn zJ?HD&EC~t0`a}ZQ(4j-6xw%=RpeMq}V-%WM)sL2!?b{3Fi!XBY*kWnGz*_+S0wk;j zlQ|0GeA=&l^yra#6 JWR{Z2x$#Ma<=sB7&3gFOTW`sC-+d>Jq*oO1JdlR j0F4SPM pjfM& zNf$#& -@@ -136,6 +163,8 @@ + From 1ab714dab90e4e9f3098f38c62891f031a504a48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=BA=20=E8=91=A3?= <58670809@qq.com> Date: Mon, 4 Jul 2022 09:59:15 +0800 Subject: [PATCH 44/51] =?UTF-8?q?=E8=B0=83=E5=BA=A6=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E5=BC=B9=E7=AA=97=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/dispatcherStationManage/signedCmd.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/views/dispatcherStationManage/signedCmd.vue b/src/views/dispatcherStationManage/signedCmd.vue index 151fd1943..51ecbc4d6 100644 --- a/src/views/dispatcherStationManage/signedCmd.vue +++ b/src/views/dispatcherStationManage/signedCmd.vue @@ -199,6 +199,7 @@ export default { this.$emit('signedCmdClose'); }, getSignedData() { + this.signedData = {}; if (this.dispatchCommandMsg.type == 'ADD') { this.signedData = this.dispatchCommandMsg.body; } From eb0dc5661692b63c3df8db49ddab16e64fce1d98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=BA=20=E8=91=A3?= <58670809@qq.com> Date: Mon, 4 Jul 2022 11:17:35 +0800 Subject: [PATCH 45/51] =?UTF-8?q?=E8=B0=83=E5=BA=A6=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/index.vue | 8 +++-- .../dispatcherStationManage/cmdManage.vue | 32 +++++++++---------- .../dispatcherStationManage/signedCmd.vue | 12 ++++--- 3 files changed, 29 insertions(+), 23 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index f15639eb9..645d03ed7 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -58,7 +58,7 @@+受令列表 -全选 +-+ - - - - - + + + + + -下达 +下达 +关闭 - + @@ -246,10 +246,14 @@ export default { window.onclick = function (e) {}; }, methods: { + changeSignedStatus(info) { + this.isCtc && this.$refs.cmdManage.changeSignedStatus(info); + }, signedCmdClose() { - this.$refs.cmdManage.doShow(); + this.isCtc && this.$refs.cmdManage.doShow(); }, showCmdManage() { + if (!this.isCtc) { return; } if (this.hasCommandMsg) { this.$refs.signedCmd.doShow(); } else { diff --git a/src/views/dispatcherStationManage/cmdManage.vue b/src/views/dispatcherStationManage/cmdManage.vue index 6d5b2aaba..ddf67e608 100644 --- a/src/views/dispatcherStationManage/cmdManage.vue +++ b/src/views/dispatcherStationManage/cmdManage.vue @@ -219,27 +219,14 @@ export default { }, signCmd(status) { if (!this.commandId) { return; } + const signInfo = { commandId: this.commandId, signedBy: this.getActiveUser.memberId, signedStatus: status }; const data = { - signInfo: { - commandId: this.commandId, - signedBy: this.getActiveUser.memberId, - signedStatus: status - } + signInfo: signInfo }; sendCommandNew(this.group, 'CTC_SIGN_DISPATCH_COMMAND', data).then((res) => { console.log(res, '---res'); if (res.code == 200) { - const index = this.cmdTableData.findIndex(item => { - return item.id == this.commandId; - }); - if (index >= 0) { - const obj = this.cmdTableData[index]; - const mId = this.getActiveUser.memberId; - obj.receiverInfos[mId].signedBy = mId; - obj.receiverInfos[mId].signedStatus = status; - obj.receiverInfos[mId].time = parseTime(this.initTime); - this.cmdTableData.splice(index, 1, obj); - } + this.changeSignedStatus(signInfo); } else { this.$messageBox(`${this.signedStatusObj[status]}调度命令失败:${res.message}`); } @@ -247,6 +234,19 @@ export default { this.$messageBox(`${this.signedStatusObj[status]}调度命令失败:${error.message}`); }); }, + 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); + } + }, searchCmd() { sendCommandNew(this.group, 'CTC_QUERY_DISPATCH_COMMAND').then((res) => { console.log(res, '---res'); diff --git a/src/views/dispatcherStationManage/signedCmd.vue b/src/views/dispatcherStationManage/signedCmd.vue index 51ecbc4d6..38841a6e5 100644 --- a/src/views/dispatcherStationManage/signedCmd.vue +++ b/src/views/dispatcherStationManage/signedCmd.vue @@ -99,6 +99,7 @@ export default { needRead: false, needprint: false, dialogShow: false, + signedId: '', signedBy: '', typeObj: { NORMAL: '正常调度命令' @@ -182,11 +183,14 @@ export default { return val ? parseTime(val, f) : ''; }, getSenderName() { + this.signedBy = ''; + this.signedId = ''; const activeUser = this.simulationUserList.find(item => { return item.userId == this.$store.state.user.id; }); if (activeUser) { this.signedBy = activeUser.nickName; + this.signedId = activeUser.memberId; } }, doShow() { @@ -220,15 +224,13 @@ export default { }, signCmd(status) { if (!this.commandId) { return; } + const signInfo = { commandId: this.commandId, signedBy: this.signedId, signedStatus: status }; const data = { - signInfo: { - commandId: this.commandId, - signedBy: this.signedBy, - signedStatus: status - } + signInfo: signInfo }; sendCommandNew(this.group, 'CTC_SIGN_DISPATCH_COMMAND', data).then((res) => { console.log(res, '---res'); + this.$emit('changeSignedStatus', signInfo); this.doClose(); }).catch(error => { this.$messageBox('查询调度命令失败:' + error.message); From e2b2f80e4d6147d0ba134162af5fff5753ebe8bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=BA=20=E8=91=A3?= <58670809@qq.com> Date: Mon, 4 Jul 2022 14:28:06 +0800 Subject: [PATCH 46/51] =?UTF-8?q?=E8=B0=83=E5=BA=A6=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispatcherStationManage/cmdManage.vue | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/views/dispatcherStationManage/cmdManage.vue b/src/views/dispatcherStationManage/cmdManage.vue index ddf67e608..dbfb0745c 100644 --- a/src/views/dispatcherStationManage/cmdManage.vue +++ b/src/views/dispatcherStationManage/cmdManage.vue @@ -25,7 +25,7 @@ 收令箱-+ @@ -193,6 +193,13 @@ export default { this.searchCmd(); }, methods:{ + tableRowClassName({row, rowIndex}) { + const status = this.getSignInfo(row.receiverInfos).signedStatus; + if (status === 'SIGNED') { + return 'signed-row'; + } + return 'unsigned-row'; + }, doShow() { this.dialogShow = true; this.$store.commit('socket/clearDispatchCommandMsg'); @@ -298,6 +305,16 @@ export default { .content-box { width: calc(100% - 150px); padding-left: 10px; + .box-top { + .el-table { + /deep/ .signed-row { + color: red; + } + /deep/ .unsigned-row { + color: blue; + } + } + } .box-middle { padding-top: 10px; display: flex; From 8555ae081a5627d119b6f7c93d2dfbbad9584ea5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=BA=20=E8=91=A3?= <58670809@qq.com> Date: Mon, 4 Jul 2022 14:46:00 +0800 Subject: [PATCH 47/51] =?UTF-8?q?=E8=B0=83=E5=BA=A6=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/dispatcherStationManage/dispatchCmd.vue | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/views/dispatcherStationManage/dispatchCmd.vue b/src/views/dispatcherStationManage/dispatchCmd.vue index 140427c7e..53b3c352f 100644 --- a/src/views/dispatcherStationManage/dispatchCmd.vue +++ b/src/views/dispatcherStationManage/dispatchCmd.vue @@ -19,7 +19,7 @@ @@ -253,6 +253,16 @@ export default { beforeDestroy() {}, mounted() {}, methods:{ + createCmd() { + this.$confirm('当前调度命令已经被编辑修改过了,你要放弃所有的修改吗?', '操作提示', { + confirmButtonText: '是', + cancelButtonText: '否' + }).then(() => { + this.initData(); + }).catch(() => { + console.log('取消新建调度命令!'); + }); + }, initData() { this.command = { title: '', @@ -284,7 +294,6 @@ export default { } }, getSenderName() { - debugger; this.memberDataList = Object.values(this.memberData); const activeUser = this.memberDataList.find(item => { return item.userId == this.$store.state.user.id; From 2d89a10eae4ad874ba9bfedafeca7b4f96341f18 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 4 Jul 2022 16:09:08 +0800 Subject: [PATCH 48/51] =?UTF-8?q?=E9=93=81=E7=A7=91=E9=99=A2=20=E5=A4=A7?= =?UTF-8?q?=E9=93=81=E7=BA=BF=E8=B7=AF=20=E6=B7=BB=E5=8A=A0=20=E5=8C=BA?= =?UTF-8?q?=E6=AE=B5=E6=95=85=E9=9A=9C=E8=A7=A3=E9=94=81=20=E6=8C=87?= =?UTF-8?q?=E4=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/datie_tky/menus/menuSection.vue | 113 ++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 src/jmapNew/theme/datie_tky/menus/menuSection.vue diff --git a/src/jmapNew/theme/datie_tky/menus/menuSection.vue b/src/jmapNew/theme/datie_tky/menus/menuSection.vue new file mode 100644 index 000000000..1abfbb0d5 --- /dev/null +++ b/src/jmapNew/theme/datie_tky/menus/menuSection.vue @@ -0,0 +1,113 @@ + + -新建调度命令 +新建调度命令 ++ + From 4779efbc2386fc88691678d6b9f9edb9b8a061c2 Mon Sep 17 00:00:00 2001 From: fan+ + + Date: Tue, 5 Jul 2022 09:08:12 +0800 Subject: [PATCH 49/51] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4&?= =?UTF-8?q?=E5=8F=B8=E6=9C=BA=E9=A9=BE=E9=A9=B6=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/index.js | 6 + src/utils/baseUrl.js | 5 +- src/views/jlmap3d/drive/jl3ddrive.vue | 1089 ++++++++--------- src/views/newMap/jointTrainingNew/index.vue | 4 +- src/views/newMap/mapDraftPicture/index.vue | 660 ++++++++++ .../mapoperate/components/createOperate.vue | 50 + .../mapoperate/components/operateProperty.vue | 67 + .../mapoperate/config/list.vue | 477 ++++++++ .../mapDraftPicture/mapoperate/device.vue | 84 ++ .../mapDraftPicture/mapoperate/index.vue | 236 ++++ .../mapoperate/multiSelect.vue | 13 + src/views/newMap/newDesignUser/demonList.vue | 345 +++--- src/views/newMap/trainTicket/greenLicence.vue | 2 +- src/views/newMap/trainTicket/redLicence.vue | 2 +- src/views/newMap/trainTicket/trainTicket.vue | 3 + 15 files changed, 2325 insertions(+), 718 deletions(-) create mode 100644 src/views/newMap/mapDraftPicture/index.vue create mode 100644 src/views/newMap/mapDraftPicture/mapoperate/components/createOperate.vue create mode 100644 src/views/newMap/mapDraftPicture/mapoperate/components/operateProperty.vue create mode 100644 src/views/newMap/mapDraftPicture/mapoperate/config/list.vue create mode 100644 src/views/newMap/mapDraftPicture/mapoperate/device.vue create mode 100644 src/views/newMap/mapDraftPicture/mapoperate/index.vue create mode 100644 src/views/newMap/mapDraftPicture/mapoperate/multiSelect.vue diff --git a/src/router/index.js b/src/router/index.js index 180b90074..150820229 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -76,6 +76,7 @@ const IscsStationConfig = () => import('@/views/iscs/iscsSystem/stationConfig/in const NewMapDraft = () => import('@/views/newMap/newMapdraft/index'); const NewMapDraftSystem = () => import('@/views/newMap/newMapdraftSystem/index'); +const MapDraftPicture = () => import('@/views/newMap/mapDraftPicture/index'); const NewDesignPlatformUser = () => import('@/views/newMap/newDesignUser/index'); const Taskmanage = () => import('@/views/lesson/taskmanage/list'); @@ -1356,6 +1357,11 @@ export const asyncRouter = [ component: NewMapDraftSystem, hidden: true }, + { // 地图画面管理 + path: 'usermap/map/pictureDraw/:mapId/:view', + component: MapDraftPicture, + hidden: true + }, { path:'iscs/design', redirect: '/iscs/design', diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index d14ff73dc..30bf92c6f 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -24,10 +24,11 @@ export function handlerUrl(data) { if (process.env.NODE_ENV === 'development') { // const data = null; // BASE_API = 'https://joylink.club/jlcloud'; - // BASE_API = 'https://test.joylink.club/jlcloud'; + BASE_API = 'https://test.joylink.club/jlcloud'; + // BASE_API = 'http://192.168.3.233/rtss-server'; // BASE_API = 'http://114.116.51.125/jlcloud'; // BASE_API = 'http://192.168.8.152:9000'; // 袁琪 - BASE_API = 'http://192.168.3.94:9000'; // 旭强 + // BASE_API = 'http://192.168.3.94:9000'; // 旭强 // BASE_API = 'http://192.168.3.15:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 // BASE_API = 'http://192.168.3.37:9000'; // 卫志宏 diff --git a/src/views/jlmap3d/drive/jl3ddrive.vue b/src/views/jlmap3d/drive/jl3ddrive.vue index efa228ca0..8f29e416e 100644 --- a/src/views/jlmap3d/drive/jl3ddrive.vue +++ b/src/views/jlmap3d/drive/jl3ddrive.vue @@ -1,20 +1,19 @@ - +-{{ tuoguanbuttonmsg }}--+- -- -{{ tuoguanbuttonmsg }}+++ ++ ++ + {{ item.label }} ++ + ++++ + +{deviceChange(val, opt)})" /> + ++ {{ item.label }} ++ + + ++ ++++ ++ ++ ++ {{ $t('map.activate') }} ++ ++ ++ {{ $t('map.activate') }} ++ + + {{ item.label }} ++ + + ++ ++ + ++ {{ item.label }} ++ + ++ ++ + ++ + + +{deviceChange(val, item)})" /> + + + + ++ + + + ++ ++ ++ + + {{ item.label }} ++ + + + ++ ++ + ++ + + + + + + diff --git a/src/views/newMap/mapDraftPicture/mapoperate/device.vue b/src/views/newMap/mapDraftPicture/mapoperate/device.vue new file mode 100644 index 000000000..f22c94614 --- /dev/null +++ b/src/views/newMap/mapDraftPicture/mapoperate/device.vue @@ -0,0 +1,84 @@ + + ++ + + + + diff --git a/src/views/newMap/mapDraftPicture/mapoperate/index.vue b/src/views/newMap/mapDraftPicture/mapoperate/index.vue new file mode 100644 index 000000000..20b7f8573 --- /dev/null +++ b/src/views/newMap/mapDraftPicture/mapoperate/index.vue @@ -0,0 +1,236 @@ + ++ + + + + + diff --git a/src/views/newMap/mapDraftPicture/mapoperate/multiSelect.vue b/src/views/newMap/mapDraftPicture/mapoperate/multiSelect.vue new file mode 100644 index 000000000..26a859df9 --- /dev/null +++ b/src/views/newMap/mapDraftPicture/mapoperate/multiSelect.vue @@ -0,0 +1,13 @@ + + + + + + + diff --git a/src/views/newMap/newDesignUser/demonList.vue b/src/views/newMap/newDesignUser/demonList.vue index 412380d16..dd19c1b0a 100644 --- a/src/views/newMap/newDesignUser/demonList.vue +++ b/src/views/newMap/newDesignUser/demonList.vue @@ -45,173 +45,190 @@+++++ {{ $t('map.mapName') }} +++ {{ mapInfo.name }} + +{{ $t('map.save') }} ++ ++ ++