Merge branch 'test_dispaly' of https://git.code.tencent.com/lian-cbtc/jl-client into test_dispaly1

This commit is contained in:
fan 2022-12-12 17:00:38 +08:00
commit f6cdf07b06
17 changed files with 5067 additions and 545 deletions

View File

@ -109,12 +109,12 @@ class Theme {
} }
// 加载行调菜单组件 // 加载行调菜单组件
loadDispatchWorkMenuComponent(code) { loadDispatchWorkMenuComponent(code) {
if (['01', '02', '03', '04', '06', '07', '08', '09', '10', '11', '14', '16'].includes(code)) { if (['01', '02', '03', '04', '06', '07', '08', '09', '10', '11', '12', '14', '16'].includes(code)) {
return Object.assign({}, require(`./${this._mapMenu[code || this._code]}/menus/dispatchWorkMenu`).default); return Object.assign({}, require(`./${this._mapMenu[code || this._code]}/menus/dispatchWorkMenu`).default);
} }
} }
loadLocalWorkMenuComponent(code) { loadLocalWorkMenuComponent(code) {
if (['01', '02', '03', '04', '06', '07', '08', '09', '10', '11', '14', '16'].includes(code)) { if (['01', '02', '03', '04', '06', '07', '08', '09', '10', '11', '12', '14', '16'].includes(code)) {
return Object.assign({}, require(`./${this._mapMenu[code || this._code]}/menus/localWorkMenu`).default); return Object.assign({}, require(`./${this._mapMenu[code || this._code]}/menus/localWorkMenu`).default);
} }
} }

View File

@ -0,0 +1,438 @@
<template>
<div class="menus __socpe" :style="{width: width + 'px'}">
<menu-bar ref="menuBar" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-station-stand ref="menuStationStand" :selected="selected" :work="work" />
<menu-switch ref="menuSwitch" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-signal ref="menuSignal" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-section ref="menuSection" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-train ref="menuTrain" :selected="selected" :work="work" />
<menu-station ref="menuStation" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-limit ref="menuLimit" :selected="selected" :work="work" />
<!--<passive-alarm ref="passiveAlarm" />-->
<passive-contorl ref="passiveControl" pop-class="ningbo-01__systerm" :selected="selected" :work="work" />
<!--<passive-Timeout ref="passiveTimeout" />-->
</div>
</template>
<script>
import { mapGetters } from 'vuex';
import MenuSignal from './menuSignal';
import MenuStationStand from './menuStationStand';
import MenuSwitch from './menuSwitch';
import MenuSection from './menuSection';
import MenuTrain from './menuTrain';
import MenuStation from './menuStation';
import MenuBar from './dispatchWorkMenuBar';
import MenuLimit from './menuLimit';
// import PassiveAlarm from './passiveDialog/alarm';
import PassiveContorl from '@/jmapNew/theme/components/menus/passiveDialog/control';
// import PassiveTimeout from './passiveDialog/timeout';
export default {
name: 'DispatchWorkMenu',
components: {
MenuBar,
MenuSignal,
MenuSwitch,
MenuSection,
MenuStationStand,
MenuStation,
MenuTrain,
MenuLimit,
// PassiveAlarm,
PassiveContorl
// PassiveTimeout
},
props: {
selected: {
type: Object,
default() {
return null;
}
}
},
data() {
return {
initCacheMap: {},
initInfo: {},
updateDone: 0,
work: 'dispatchWork'
};
},
computed: {
...mapGetters('config', [
'width'
])
},
watch: {
isShowBar(val) {
val && this.$store.dispatch('config/updateMenuBar');
},
'$store.state.map.mapStateLoadedCount': function () {
this.$store.dispatch('map/flushMapRef');
}
},
mounted() {
this.$root.$on('iniCacheMap', (cmd, cacheMap) => {
this.initCacheMap[cmd] = cacheMap;
});
this.$root.$on('appendCache', (cmd, code, cache) => {
if (!this.initCacheMap[cmd]) {
this.initCacheMap[cmd] = {};
}
this.initCacheMap[cmd][code] = cache;
});
this.$root.$on('removeCache', (cmd, code) => {
if (this.initCacheMap[cmd]) {
delete this.initCacheMap[cmd][code];
}
});
this.$nextTick(() => {
this.$store.dispatch('config/updateMenuBar');
const _that = this;
window.onclick = function (e) {
if (!_that.$store.state.training.trainingStart) {
_that.$refs.menuBar && _that.$refs.menuBar.blankClickClose();
}
_that.$refs.menuStationStand.doClose();
_that.$refs.menuSwitch.doClose();
_that.$refs.menuSignal.doClose();
_that.$refs.menuSection.doClose();
_that.$refs.menuTrain.doClose();
_that.$refs.menuStation.doClose();
_that.$refs.menuLimit.doClose();
};
});
},
beforeDestroy() {
this.$root.$off('iniCacheMap');
this.$root.$off('appendCache');
this.$root.$off('removeCache');
window.onclick = function (e) {};
},
methods: {
onUpdateDone() {
this.updateDone++;
},
onChangeInitInfo(initSelect, initParams) {
this.initInfo = {
initSelect,
initParams
};
this.updateDone++;
}
}
};
</script>
<style>
.menus{
height:0px;
}
.menus .pop-menu {
background: #F0F0F0;
}
.menus .pop-menu span {
color: #000;
}
.menus .pop-menu .is-disabled span {
color: #B4B3B8;
}
.ningbo-01__systerm {
overflow: hidden !important;
}
.ningbo-01__systerm .el-dialog {
background: rgba(100, 100, 100, 0.3);
border: 2px solid rgba(144, 144, 144, 0.8);
border-radius: 6px;
color: #000;
font-size: 14px;
}
.ningbo-01__systerm .el-dialog .el-dialog__header {
padding: 10px;
height: 26px;
}
.ningbo-01__systerm .el-dialog .el-dialog__footer {
background: #F0F0F0;
opacity: 1;
}
.ningbo-01__systerm .el-dialog .el-dialog__body {
padding: 10px;
margin: 5px;
border: 2px solid rgba(120, 121, 123, 0.5);
box-shadow: 1px hsla(240, 0%, 100%, 0.5) inset;
background: #F0F0F0;
opacity: 1;
}
.ningbo-01__systerm .el-dialog .el-dialog__title {
position: absolute;
top: 6px;
color: #000;
border-radius: 4px;
padding: 0px 2px;
height: 20px;
line-height: 20px
}
.ningbo-01__systerm .el-dialog .el-dialog__title::before {
content: '';
position: absolute;
top: 0;
left: 0;
filter: blur(7px);
height: 20px;
width: -webkit-fill-available;
background: rgba(190, 190, 190, 0.8);
z-index: -1;
}
.ningbo-01__systerm .el-dialog .el-dialog__headerbtn {
background: linear-gradient(#CD98A0, #C27D6E, #B63022, #C68770);
border: 1px solid #fff;
border-radius: 4px;
top: 5px;
right: 5px;
line-height: 18px;
}
.ningbo-01__systerm .el-dialog .el-dialog__headerbtn .el-icon-close:before {
font-size: 16px;
}
.ningbo-01__systerm .el-dialog .el-dialog__headerbtn .el-dialog__close {
color: #fff;
}
.ningbo-01__systerm .el-dialog .el-button {
height: 32px;
line-height: 32px;
padding: 0px;
width: 80px;
border: 2px outset #E2E2E2;
border-radius: 0px !important;
color: #000;
background: #F0F0F0;
}
.ningbo-01__systerm .el-dialog .expand {
width: 120px;
}
.ningbo-01__systerm .el-dialog .el-button:focus span {
border: 1px dashed gray;
}
.ningbo-01__systerm .el-dialog .el-button:active {
border: 2px inset #E2E2E2;
}
.ningbo-01__systerm .el-dialog .el-button:disabled {
border: 2px inset #E2E2E2;
}
.ningbo-01__systerm .el-dialog .el-button:disabled span {
border: 0px;
}
.ningbo-01__systerm .el-dialog .el-input {
border: 2px inset #E9E9E9;
}
.ningbo-01__systerm .el-dialog .el-input .el-input__inner {
color: #000;
background: #fff !important;
border: 0px;
border-radius: 0px !important;
box-sizing: border-box;
}
.ningbo-01__systerm .el-dialog .el-input.is-disabled .el-input__inner {
background: #F0F0F0 !important;
}
.ningbo-01__systerm .el-dialog .el-textarea {
border: 2px inset #E9E9E9;
border-radius: 0px;
}
.ningbo-01__systerm .el-dialog .el-textarea .el-textarea__inner {
color: #000;
background: #fff !important;
border: 0px;
border-radius: 0px !important;
box-sizing: border-box;
}
.ningbo-01__systerm .el-dialog .el-textarea.is-disabled .el-textarea__inner {
background: #F0F0F0 !important;
}
.ningbo-01__systerm .el-dialog .el-table--border th.gutter {
background: #EBEADB !important;
}
.ningbo-01__systerm .el-dialog .el-table {
border: 2px inset #E9E9E9;
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .el-table .cell {
line-height: unset !important;
}
.ningbo-01__systerm .el-dialog .el-table th.is-leaf {
background: #F0F0F0 !important;
border-right: 1px solid #BDBDBD !important;
border-bottom: 1px solid #BDBDBD !important;
color: #000 !important;
height: 20px !important;
padding: 0px;
}
.ningbo-01__systerm.stand-detain-train .el-dialog .el-table th.is-leaf {
background: #fff !important;
border-right: 1px solid #fff !important;
border-bottom: 1px solid #EBEEF5 !important;
color: #000 !important;
height: 20px !important;
padding: 0px;
}
.ningbo-01__systerm.stand-detain-train .el-dialog .el-table th.el-table-column--selection{
border-right: 1px solid #e2e2e2 !important;
}
.ningbo-01__systerm.stand-detain-train .el-dialog .el-table .el-table__body-wrapper .el-table__row .el-table-column--selection {
border-right: 1px solid #e2e2e2 !important;
}
.ningbo-01__systerm .el-dialog .el-table tr td {
height: 20px !important;
padding: 0px;
}
.ningbo-01__systerm .el-dialog .el-table .el-table__empty-text {
top: 15px !important;
}
.ningbo-01__systerm .el-dialog .current-row>td {
background: #3399FF !important;
color: #fff !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__inner {
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__label {
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox.is-disabled .el-checkbox__inner {
background: #E6E6E6 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox.is-disabled .el-checkbox__label {
color: #C5C9CC !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__input.is-checked .el-checkbox__inner {
background: #fff !important;
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__input.is-checked .el-checkbox__inner::after {
position: absolute;
-webkit-box-sizing: content-box;
box-sizing: content-box;
content: "";
border: 1px solid #000;
border-left: 0;
border-top: 0;
height: 7px;
left: 4px;
top: 1px;
}
.ningbo-01__systerm .el-dialog .el-radio__inner {
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-radio__label {
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .el-radio__input.is-checked .el-radio__inner {
background: #fff !important;
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-radio__input.is-checked .el-radio__inner::after {
width: 4px;
height: 4px;
border-radius: 100%;
background-color: #000 !important;
position: absolute;
left: 50%;
top: 50%;
}
.ningbo-01__systerm .el-dialog .el-radio.is-disabled .el-radio__inner {
background: #E6E6E6 !important;
}
.ningbo-01__systerm .el-dialog .el-radio.is-disabled .el-radio__label {
color: #C5C9CC !important;
}
.ningbo-01__systerm .el-dialog .base-label {
background: #F0F0F0;
padding: 0 5px;
position: relative;
left: -15px;
top: -18px;
}
.ningbo-01__systerm .el-dialog .el-form-item label {
font-weight: normal !important;
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .context {
height: 100px;
border: 2px inset #E2E2E2;
overflow-y: scroll;
}
.ningbo-01__systerm .el-dialog .table {
margin-top: 10px;
}
.ningbo-01__systerm .el-dialog .notice {
margin-left: 62px;
line-height: 30px;
}
.ningbo-01__systerm .el-dialog .button-group {
margin-top: 10px;
}
</style>
<style lang="scss">
.__socpe {
.el-dialog,
.el-dialog__wrapper {
pointer-events: none !important;
}
.el-dialog__header,
.el-dialog__body {
pointer-events: all !important;
}
}
</style>

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="menus __socpe" :style="{width: width + 'px'}"> <div class="menus __socpe" :style="{width: width + 'px'}">
<menu-bar v-show="isShowBar" ref="menuBar" :selected="selected" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" /> <menu-bar ref="menuBar" :selected="selected" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-station-stand ref="menuStationStand" :selected="selected" /> <menu-station-stand ref="menuStationStand" :selected="selected" />
<menu-switch ref="menuSwitch" :selected="selected" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" /> <menu-switch ref="menuSwitch" :selected="selected" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-signal ref="menuSignal" :selected="selected" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" /> <menu-signal ref="menuSignal" :selected="selected" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
@ -61,15 +61,9 @@ export default {
computed: { computed: {
...mapGetters('config', [ ...mapGetters('config', [
'width' 'width'
]), ])
isShowBar() {
return this.$store.state.training.prdType && this.$store.state.training.prdType !== '07';
}
}, },
watch: { watch: {
isShowBar(val) {
val && this.$store.dispatch('config/updateMenuBar');
},
'$store.state.map.mapStateLoadedCount': function () { '$store.state.map.mapStateLoadedCount': function () {
this.$store.dispatch('map/flushMapRef'); this.$store.dispatch('map/flushMapRef');
} }

View File

@ -0,0 +1,435 @@
<template>
<div class="menus __socpe" :style="{width: width + 'px'}">
<menu-bar ref="menuBar" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-station-stand ref="menuStationStand" :selected="selected" :work="work" />
<menu-switch ref="menuSwitch" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-signal ref="menuSignal" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-section ref="menuSection" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-train ref="menuTrain" :selected="selected" :work="work" />
<menu-station ref="menuStation" :selected="selected" :work="work" :init-cache-map="initCacheMap" :init-info="initInfo" :update-done="updateDone" @onUpdateDone="onUpdateDone" @onChangeInitInfo="onChangeInitInfo" />
<menu-limit ref="menuLimit" :selected="selected" :work="work" />
<!--<passive-alarm ref="passiveAlarm" />-->
<passive-contorl ref="passiveControl" pop-class="ningbo-01__systerm" :selected="selected" :work="work" />
<!--<passive-Timeout ref="passiveTimeout" />-->
</div>
</template>
<script>
import { mapGetters } from 'vuex';
import MenuSignal from './menuSignal';
import MenuStationStand from './menuStationStand';
import MenuSwitch from './menuSwitch';
import MenuSection from './menuSection';
import MenuTrain from './menuTrain';
import MenuStation from './menuStation';
import MenuBar from './localWorkMenuBar';
import MenuLimit from './menuLimit';
// import PassiveAlarm from './passiveDialog/alarm';
import PassiveContorl from '@/jmapNew/theme/components/menus/passiveDialog/control';
// import PassiveTimeout from './passiveDialog/timeout';
export default {
name: 'LocalWorkMenu',
components: {
MenuBar,
MenuSignal,
MenuSwitch,
MenuSection,
MenuStationStand,
MenuStation,
MenuTrain,
MenuLimit,
// PassiveAlarm,
PassiveContorl
// PassiveTimeout
},
props: {
selected: {
type: Object,
default() {
return null;
}
}
},
data() {
return {
initCacheMap: {},
initInfo: {},
updateDone: 0,
work: 'localWork'
};
},
computed: {
...mapGetters('config', [
'width'
])
},
watch: {
'$store.state.map.mapStateLoadedCount': function () {
this.$store.dispatch('map/flushMapRef');
}
},
mounted() {
this.$root.$on('iniCacheMap', (cmd, cacheMap) => {
this.initCacheMap[cmd] = cacheMap;
});
this.$root.$on('appendCache', (cmd, code, cache) => {
if (!this.initCacheMap[cmd]) {
this.initCacheMap[cmd] = {};
}
this.initCacheMap[cmd][code] = cache;
});
this.$root.$on('removeCache', (cmd, code) => {
if (this.initCacheMap[cmd]) {
delete this.initCacheMap[cmd][code];
}
});
this.$nextTick(() => {
this.$store.dispatch('config/updateMenuBar');
const _that = this;
window.onclick = function (e) {
if (!_that.$store.state.training.trainingStart) {
_that.$refs.menuBar && _that.$refs.menuBar.blankClickClose();
}
_that.$refs.menuStationStand.doClose();
_that.$refs.menuSwitch.doClose();
_that.$refs.menuSignal.doClose();
_that.$refs.menuSection.doClose();
_that.$refs.menuTrain.doClose();
_that.$refs.menuStation.doClose();
_that.$refs.menuLimit.doClose();
};
});
},
beforeDestroy() {
this.$root.$off('iniCacheMap');
this.$root.$off('appendCache');
this.$root.$off('removeCache');
window.onclick = function (e) {};
},
methods: {
onUpdateDone() {
this.updateDone++;
},
onChangeInitInfo(initSelect, initParams) {
this.initInfo = {
initSelect,
initParams
};
this.updateDone++;
}
}
};
</script>
<style>
.menus{
height:0px;
}
.menus .pop-menu {
background: #F0F0F0;
}
.menus .pop-menu span {
color: #000;
}
.menus .pop-menu .is-disabled span {
color: #B4B3B8;
}
.ningbo-01__systerm {
overflow: hidden !important;
}
.ningbo-01__systerm .el-dialog {
background: rgba(100, 100, 100, 0.3);
border: 2px solid rgba(144, 144, 144, 0.8);
border-radius: 6px;
color: #000;
font-size: 14px;
}
.ningbo-01__systerm .el-dialog .el-dialog__header {
padding: 10px;
height: 26px;
}
.ningbo-01__systerm .el-dialog .el-dialog__footer {
background: #F0F0F0;
opacity: 1;
}
.ningbo-01__systerm .el-dialog .el-dialog__body {
padding: 10px;
margin: 5px;
border: 2px solid rgba(120, 121, 123, 0.5);
box-shadow: 1px hsla(240, 0%, 100%, 0.5) inset;
background: #F0F0F0;
opacity: 1;
}
.ningbo-01__systerm .el-dialog .el-dialog__title {
position: absolute;
top: 6px;
color: #000;
border-radius: 4px;
padding: 0px 2px;
height: 20px;
line-height: 20px
}
.ningbo-01__systerm .el-dialog .el-dialog__title::before {
content: '';
position: absolute;
top: 0;
left: 0;
filter: blur(7px);
height: 20px;
width: -webkit-fill-available;
background: rgba(190, 190, 190, 0.8);
z-index: -1;
}
.ningbo-01__systerm .el-dialog .el-dialog__headerbtn {
background: linear-gradient(#CD98A0, #C27D6E, #B63022, #C68770);
border: 1px solid #fff;
border-radius: 4px;
top: 5px;
right: 5px;
line-height: 18px;
}
.ningbo-01__systerm .el-dialog .el-dialog__headerbtn .el-icon-close:before {
font-size: 16px;
}
.ningbo-01__systerm .el-dialog .el-dialog__headerbtn .el-dialog__close {
color: #fff;
}
.ningbo-01__systerm .el-dialog .el-button {
height: 32px;
line-height: 32px;
padding: 0px;
width: 80px;
border: 2px outset #E2E2E2;
border-radius: 0px !important;
color: #000;
background: #F0F0F0;
}
.ningbo-01__systerm .el-dialog .expand {
width: 120px;
}
.ningbo-01__systerm .el-dialog .el-button:focus span {
border: 1px dashed gray;
}
.ningbo-01__systerm .el-dialog .el-button:active {
border: 2px inset #E2E2E2;
}
.ningbo-01__systerm .el-dialog .el-button:disabled {
border: 2px inset #E2E2E2;
}
.ningbo-01__systerm .el-dialog .el-button:disabled span {
border: 0px;
}
.ningbo-01__systerm .el-dialog .el-input {
border: 2px inset #E9E9E9;
}
.ningbo-01__systerm .el-dialog .el-input .el-input__inner {
color: #000;
background: #fff !important;
border: 0px;
border-radius: 0px !important;
box-sizing: border-box;
}
.ningbo-01__systerm .el-dialog .el-input.is-disabled .el-input__inner {
background: #F0F0F0 !important;
}
.ningbo-01__systerm .el-dialog .el-textarea {
border: 2px inset #E9E9E9;
border-radius: 0px;
}
.ningbo-01__systerm .el-dialog .el-textarea .el-textarea__inner {
color: #000;
background: #fff !important;
border: 0px;
border-radius: 0px !important;
box-sizing: border-box;
}
.ningbo-01__systerm .el-dialog .el-textarea.is-disabled .el-textarea__inner {
background: #F0F0F0 !important;
}
.ningbo-01__systerm .el-dialog .el-table--border th.gutter {
background: #EBEADB !important;
}
.ningbo-01__systerm .el-dialog .el-table {
border: 2px inset #E9E9E9;
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .el-table .cell {
line-height: unset !important;
}
.ningbo-01__systerm .el-dialog .el-table th.is-leaf {
background: #F0F0F0 !important;
border-right: 1px solid #BDBDBD !important;
border-bottom: 1px solid #BDBDBD !important;
color: #000 !important;
height: 20px !important;
padding: 0px;
}
.ningbo-01__systerm.stand-detain-train .el-dialog .el-table th.is-leaf {
background: #fff !important;
border-right: 1px solid #fff !important;
border-bottom: 1px solid #EBEEF5 !important;
color: #000 !important;
height: 20px !important;
padding: 0px;
}
.ningbo-01__systerm.stand-detain-train .el-dialog .el-table th.el-table-column--selection{
border-right: 1px solid #e2e2e2 !important;
}
.ningbo-01__systerm.stand-detain-train .el-dialog .el-table .el-table__body-wrapper .el-table__row .el-table-column--selection {
border-right: 1px solid #e2e2e2 !important;
}
.ningbo-01__systerm .el-dialog .el-table tr td {
height: 20px !important;
padding: 0px;
}
.ningbo-01__systerm .el-dialog .el-table .el-table__empty-text {
top: 15px !important;
}
.ningbo-01__systerm .el-dialog .current-row>td {
background: #3399FF !important;
color: #fff !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__inner {
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__label {
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox.is-disabled .el-checkbox__inner {
background: #E6E6E6 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox.is-disabled .el-checkbox__label {
color: #C5C9CC !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__input.is-checked .el-checkbox__inner {
background: #fff !important;
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-checkbox__input.is-checked .el-checkbox__inner::after {
position: absolute;
-webkit-box-sizing: content-box;
box-sizing: content-box;
content: "";
border: 1px solid #000;
border-left: 0;
border-top: 0;
height: 7px;
left: 4px;
top: 1px;
}
.ningbo-01__systerm .el-dialog .el-radio__inner {
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-radio__label {
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .el-radio__input.is-checked .el-radio__inner {
background: #fff !important;
border: 1px inset #dcdfe6 !important;
}
.ningbo-01__systerm .el-dialog .el-radio__input.is-checked .el-radio__inner::after {
width: 4px;
height: 4px;
border-radius: 100%;
background-color: #000 !important;
position: absolute;
left: 50%;
top: 50%;
}
.ningbo-01__systerm .el-dialog .el-radio.is-disabled .el-radio__inner {
background: #E6E6E6 !important;
}
.ningbo-01__systerm .el-dialog .el-radio.is-disabled .el-radio__label {
color: #C5C9CC !important;
}
.ningbo-01__systerm .el-dialog .base-label {
background: #F0F0F0;
padding: 0 5px;
position: relative;
left: -15px;
top: -18px;
}
.ningbo-01__systerm .el-dialog .el-form-item label {
font-weight: normal !important;
color: #000 !important;
}
.ningbo-01__systerm .el-dialog .context {
height: 100px;
border: 2px inset #E2E2E2;
overflow-y: scroll;
}
.ningbo-01__systerm .el-dialog .table {
margin-top: 10px;
}
.ningbo-01__systerm .el-dialog .notice {
margin-left: 62px;
line-height: 30px;
}
.ningbo-01__systerm .el-dialog .button-group {
margin-top: 10px;
}
</style>
<style lang="scss">
.__socpe {
.el-dialog,
.el-dialog__wrapper {
pointer-events: none !important;
}
.el-dialog__header,
.el-dialog__body {
pointer-events: all !important;
}
}
</style>

File diff suppressed because it is too large Load Diff

View File

@ -51,6 +51,14 @@ export default {
components: { components: {
NoticeInfo NoticeInfo
}, },
props: {
work: {
type: String,
default() {
return '';
}
}
},
data() { data() {
return { return {
status: true, status: true,
@ -96,9 +104,6 @@ export default {
domIdApply() { domIdApply() {
return this.dialogShow ? OperationEvent.Command.common.apply.domId : ''; return this.dialogShow ? OperationEvent.Command.common.apply.domId : '';
}, },
prdType() {
return this.$store.state.training.prdType;
},
concertrateStationList() { concertrateStationList() {
return this.stationList.filter(station=>{ return this.stationList.filter(station=>{
return station.centralized; return station.centralized;
@ -109,7 +114,7 @@ export default {
'selected': function(val) { 'selected': function(val) {
if (val) { if (val) {
const stationEle = this.$store.getters['map/getDeviceByCode'](val.code); const stationEle = this.$store.getters['map/getDeviceByCode'](val.code);
if (stationEle && this.$store.state.training.prdType == '02') { if (stationEle && this.work == 'dispatchWork') {
this.loading = false; this.loading = false;
if (stationEle.controller) { if (stationEle.controller) {
const memberData = this.$store.state.training.memberData; const memberData = this.$store.state.training.memberData;

View File

@ -70,6 +70,14 @@ export default {
components: { components: {
NoticeInfo NoticeInfo
}, },
props: {
work: {
type: String,
default() {
return '';
}
}
},
data() { data() {
return { return {
status: true, status: true,
@ -111,9 +119,6 @@ export default {
domIdApply() { domIdApply() {
return this.dialogShow ? OperationEvent.Command.common.apply.domId : ''; return this.dialogShow ? OperationEvent.Command.common.apply.domId : '';
}, },
prdType() {
return this.$store.state.training.prdType;
},
concertrateStationList() { concertrateStationList() {
return this.stationList.filter((station) => { return this.stationList.filter((station) => {
return station.centralized; return station.centralized;
@ -124,7 +129,7 @@ export default {
'selected': function(val) { 'selected': function(val) {
if (val) { if (val) {
const stationEle = this.$store.getters['map/getDeviceByCode'](val.code); const stationEle = this.$store.getters['map/getDeviceByCode'](val.code);
if (stationEle && this.$store.state.training.prdType == '02') { if (stationEle && this.work == 'dispatchWork') {
this.loading = false; this.loading = false;
if (stationEle.controller) { if (stationEle.controller) {
const memberData = this.$store.state.training.memberData; const memberData = this.$store.state.training.memberData;

View File

@ -52,6 +52,14 @@ export default {
components: { components: {
NoticeInfo NoticeInfo
}, },
props: {
work: {
type: String,
default() {
return '';
}
}
},
data() { data() {
return { return {
status: true, status: true,
@ -98,9 +106,6 @@ export default {
domIdApply() { domIdApply() {
return this.dialogShow ? OperationEvent.Command.common.apply.domId : ''; return this.dialogShow ? OperationEvent.Command.common.apply.domId : '';
}, },
prdType() {
return this.$store.state.training.prdType;
},
concertrateStationList() { concertrateStationList() {
return this.stationList.filter(station=>{ return this.stationList.filter(station=>{
return station.centralized; return station.centralized;
@ -113,7 +118,7 @@ export default {
const stationEle = this.$store.getters['map/getDeviceByCode'](val.code); const stationEle = this.$store.getters['map/getDeviceByCode'](val.code);
if (stationEle) { if (stationEle) {
this.loading = false; this.loading = false;
if (this.$store.state.training.prdType == '02') { if (this.work == 'dispatchWork') {
if (stationEle.controller) { if (stationEle.controller) {
const memberData = this.$store.state.training.memberData; const memberData = this.$store.state.training.memberData;
if (memberData[stationEle.controller].userId == this.$store.state.user.id) { if (memberData[stationEle.controller].userId == this.$store.state.user.id) {
@ -128,7 +133,7 @@ export default {
} else { } else {
this.status = false; this.status = false;
} }
} else if (this.$store.state.training.prdType == '01') { } else if (this.work == 'localWork') {
if (stationEle.controller) { if (stationEle.controller) {
const memberData = this.$store.state.training.memberData; const memberData = this.$store.state.training.memberData;
if (memberData[stationEle.controller].userId == this.$store.state.user.id) { if (memberData[stationEle.controller].userId == this.$store.state.user.id) {

View File

@ -73,6 +73,14 @@ export default {
components: { components: {
NoticeInfo NoticeInfo
}, },
props: {
work: {
type: String,
default() {
return '';
}
}
},
data() { data() {
return { return {
status: true, status: true,
@ -123,9 +131,6 @@ export default {
domIdApply() { domIdApply() {
return this.dialogShow ? OperationEvent.Command.common.apply.domId : ''; return this.dialogShow ? OperationEvent.Command.common.apply.domId : '';
}, },
prdType() {
return this.$store.state.training.prdType;
},
concertrateStationList() { concertrateStationList() {
return this.stationList.filter(station=>{ return this.stationList.filter(station=>{
return station.centralized; return station.centralized;

View File

@ -12,6 +12,7 @@ import { mapGetters } from 'vuex';
import { DeviceMenu } from '@/scripts/ConstDic'; import { DeviceMenu } from '@/scripts/ConstDic';
import CMD from '@/scripts/cmdPlugin/CommandEnum'; import CMD from '@/scripts/cmdPlugin/CommandEnum';
import { menuOperate, commitOperate } from '@/jmapNew/theme/components/utils/menuOperate'; import { menuOperate, commitOperate } from '@/jmapNew/theme/components/utils/menuOperate';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'MenuLimit', name: 'MenuLimit',
@ -25,28 +26,25 @@ export default {
default() { default() {
return null; return null;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
systemName:'ningbo-01__systerm', systemName:'ningbo-01__systerm',
menuNormal: { menuNormal: [
Local: [
{
label: '取消全线临时限速',
handler: this.cancelSpeed,
cmdType: CMD.LimitControl.CMD_CANCEL_ALL_LIMIT_SPEED
}
],
Center: [
{ {
label: '取消全线临时限速', label: '取消全线临时限速',
handler: this.cancelSpeed, handler: this.cancelSpeed,
cmdType: CMD.LimitControl.CMD_CANCEL_ALL_LIMIT_SPEED cmdType: CMD.LimitControl.CMD_CANCEL_ALL_LIMIT_SPEED
} }
] ]
}
}; };
}, },
computed: { computed: {
@ -71,6 +69,16 @@ export default {
initMenu() { initMenu() {
// //
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
}, },
doShow(point) { doShow(point) {
this.initMenu(); this.initMenu();

View File

@ -25,6 +25,7 @@ import { DeviceMenu, OperateMode } from '@/scripts/ConstDic';
import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate'; import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import LoadSpareTrain from '@/jmapNew/theme/components/menus/dialog/loadSpareTrain'; import LoadSpareTrain from '@/jmapNew/theme/components/menus/dialog/loadSpareTrain';
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'SectionMenu', name: 'SectionMenu',
@ -62,30 +63,18 @@ export default {
default() { default() {
return 0; return 0;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
menuNormal: { menuNormal: [
Local: [
// {
// label: '',
// handler: this.fault,
// cmdType: CMD.Section.CMD_SECTION_FAULT_UNLOCK
// },
// {
// label: '',
// handler: this.active,
// cmdType: CMD.Section.CMD_SECTION_ACTIVE
// },
// {
// label: '',
// handler: this.split,
// cmdType: CMD.Section.CMD_SECTION_CUT_OFF
// },
],
Center: [
{ {
label: '开放', label: '开放',
children: [ children: [
@ -147,8 +136,7 @@ export default {
label: '显示', label: '显示',
handler: this.handlerDetail handler: this.handlerDetail
} }
] ],
},
menuForce: [ menuForce: [
{ {
label: this.$t('menu.menuSection.setFault'), label: this.$t('menu.menuSection.setFault'),
@ -189,7 +177,7 @@ export default {
mounted() { mounted() {
const isDev = process.env.NODE_ENV === 'development'; const isDev = process.env.NODE_ENV === 'development';
if (isDev) { if (isDev) {
this.menuNormal.Center.push({ this.menuNormal.push({
label: '新建计划车', label: '新建计划车',
handler: this.addPlanTrain, handler: this.addPlanTrain,
cmdType: CMD.Section.CMD_Train_Init_Plan cmdType: CMD.Section.CMD_Train_Init_Plan
@ -201,7 +189,17 @@ export default {
// //
if (this.selected.type != '04') { if (this.selected.type != '04') {
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = this.menuNormal.Center; // this.menu = this.menuNormal.Center;
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
} else { } else {
this.menu = []; this.menu = [];
} }

View File

@ -29,6 +29,7 @@ import SignalModel from './menuDialog/signalModel';
import SignalBlock from './menuDialog/signalBlock'; import SignalBlock from './menuDialog/signalBlock';
import SignalDetail from './menuDialog/signalDetail'; import SignalDetail from './menuDialog/signalDetail';
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'SignalMenu', name: 'SignalMenu',
@ -68,15 +69,18 @@ export default {
default() { default() {
return 0; return 0;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
menuNormal: { menuNormal: [
Local: [
],
Center: [
{ {
label: '引导', label: '引导',
children: [ children: [
@ -93,6 +97,7 @@ export default {
handler: this.handlerCancelGuide handler: this.handlerCancelGuide
} }
] ]
}, },
{ {
label: '取消允许锁闭', label: '取消允许锁闭',
@ -164,8 +169,7 @@ export default {
label: '显示', label: '显示',
handler: this.handlerDetail handler: this.handlerDetail
} }
] ],
},
menuForce: [ menuForce: [
{ {
label: '设置故障', label: '设置故障',
@ -204,7 +208,17 @@ export default {
methods: { methods: {
initMenu() { initMenu() {
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = this.menuNormal.Center; // this.menu = this.menuNormal.Center;
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
// //
if (this.operatemode === OperateMode.FAULT) { if (this.operatemode === OperateMode.FAULT) {
this.menu = this.menuForce; this.menu = this.menuForce;

View File

@ -22,6 +22,7 @@ import { DeviceMenu } from '@/scripts/ConstDic';
// import MenuContextHandler from '@/scripts/cmdPlugin/MenuContextHandler'; // import MenuContextHandler from '@/scripts/cmdPlugin/MenuContextHandler';
import SetFault from '@/jmapNew/theme/components/menus/dialog/setFault'; import SetFault from '@/jmapNew/theme/components/menus/dialog/setFault';
import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate'; import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'StationMenu', name: 'StationMenu',
@ -39,61 +40,18 @@ export default {
default() { default() {
return null; return null;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
menuNormal: { menuNormal: [],
Local: [
// {
// label: '',
// handler: this.setAutoTrigger,
// cmdType: CMD.Station.CMD_STATION_SET_CI_AUTO_TRIGGER
// },
// {
// label: '',
// handler: this.cancelAutoTrigger,
// cmdType: CMD.Station.CMD_STATION_CANCEL_CI_AUTO_TRIGGER
// },
// {
// label: '',
// handler: this.powerUnLock,
// cmdType: CMD.Station.CMD_STATION_POWER_ON_UNLOCK
// },
// {
// label: '',
// handler: this.execKeyOperationTest,
// cmdType: CMD.Station.CMD_STATION_KEY_OPERATION_TEST
// }
],
Center: [
// {
// label: '/',
// handler: ''
// },
// {
// label: '/',
// handler: ''
// },
// {
// label: '',
// handler: ''
// },
// {
// label: '',
// handler: ''
// },
// {
// label: '',
// handler: ''
// },
// {
// label: '',
// handler: ''
// }
]
},
menuForce: [ menuForce: [
{ {
label: '设置ZC故障', label: '设置ZC故障',
@ -134,6 +92,16 @@ export default {
methods: { methods: {
initMenu() { initMenu() {
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
// //
if (this.operatemode === OperateMode.FAULT) { if (this.operatemode === OperateMode.FAULT) {
this.menu = this.menuForce; this.menu = this.menuForce;

View File

@ -24,6 +24,7 @@ import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuO
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { DeviceMenu, OperateMode } from '@/scripts/ConstDic'; import { DeviceMenu, OperateMode } from '@/scripts/ConstDic';
import CMD from '@/scripts/cmdPlugin/CommandEnum'; import CMD from '@/scripts/cmdPlugin/CommandEnum';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'StationStandMenu', name: 'StationStandMenu',
@ -43,35 +44,18 @@ export default {
default() { default() {
return null; return null;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
menuNormal: { menuNormal: [
Local: [
// {
// label: '',
// handler: this.setDetainTrain,
// cmdType:CMD.Stand.CMD_STAND_SET_HOLD_TRAIN
// },
// {
// label: '',
// handler: this.cancelDetainTrain,
// cmdType:CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN
// },
// {
// label: '',
// handler: this.earlyDeparture,
// cmdType:CMD.Stand.CMD_STAND_EARLY_DEPART
// },
// {
// label: '',
// handler: this.detail,
// cmdType:CMD.Stand.CMD_STAND_VIEW_STATUS
// }
],
Center: [
{ {
label: '开放/关闭', label: '开放/关闭',
handler: this.handlerOpenOrClose handler: this.handlerOpenOrClose
@ -96,8 +80,7 @@ export default {
label: '显示', label: '显示',
handler: this.handlerDetail handler: this.handlerDetail
} }
] ],
},
menuForce: [ menuForce: [
{ {
label: '设置故障', label: '设置故障',
@ -134,7 +117,17 @@ export default {
initMenu() { initMenu() {
// //
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = this.menuNormal.Center; // this.menu = this.menuNormal.Center;
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
// //
if (this.operatemode === OperateMode.FAULT) { if (this.operatemode === OperateMode.FAULT) {

View File

@ -21,6 +21,7 @@ import CMD from '@/scripts/cmdPlugin/CommandEnum';
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import { DeviceMenu, OperateMode } from '@/scripts/ConstDic'; import { DeviceMenu, OperateMode } from '@/scripts/ConstDic';
import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate'; import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'SwitchMenu', name: 'SwitchMenu',
@ -56,48 +57,22 @@ export default {
default() { default() {
return 0; return 0;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
menuNormal: { menuNormal: [
Local: [
// {
// label: '',
// handler: this.locate,
// cmdType: CMD.Switch.CMD_SWITCH_NORMAL_POSITION
// },
// {
// label: '',
// handler: this.reverse,
// cmdType: CMD.Switch.CMD_SWITCH_REVERSE_POSITION
// },
// {
// label: '',
// handler: this.lock,
// cmdType: CMD.Switch.CMD_SWITCH_SINGLE_LOCK
// },
// {
// label: '',
// handler: this.unlock,
// cmdType: CMD.Switch.CMD_SWITCH_SINGLE_UNLOCK
// },
// {
// label: '',
// handler: this.block,
// cmdType: CMD.Switch.CMD_SWITCH_BLOCK
// },
// {
// label: '',
// handler: this.unblock,
// cmdType: CMD.Switch.CMD_SWITCH_UNBLOCK
// }
],
Center: [
{ {
label: '命令', label: '命令',
handler: this.handlerCommand handler: this.handlerCommand
}, },
{ {
label: '封锁', label: '封锁',
@ -143,8 +118,7 @@ export default {
label: '显示', label: '显示',
handler: this.handlerDetail handler: this.handlerDetail
} }
] ],
},
menuForce: [ menuForce: [
{ {
label: '设置故障', label: '设置故障',
@ -181,7 +155,17 @@ export default {
initMenu() { initMenu() {
// //
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = this.menuNormal.Center; // this.menu = this.menuNormal.Center;
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
// //
if (this.operatemode === OperateMode.FAULT) { if (this.operatemode === OperateMode.FAULT) {
// if (!this.$store.state.scriptRecord.bgSet) { // if (!this.$store.state.scriptRecord.bgSet) {

View File

@ -34,6 +34,7 @@ import { DeviceMenu, OperateMode } from '@/scripts/ConstDic';
import CMD from '@/scripts/cmdPlugin/CommandEnum'; import CMD from '@/scripts/cmdPlugin/CommandEnum';
// import {mouseCancelState} from '@/jmapNew/theme/components/utils/menuItemStatus'; // import {mouseCancelState} from '@/jmapNew/theme/components/utils/menuItemStatus';
import { menuOperate, commitOperate } from '@/jmapNew/theme/components/utils/menuOperate'; import { menuOperate, commitOperate } from '@/jmapNew/theme/components/utils/menuOperate';
import { judgeStationControl } from '@/jmapNew/theme/components/utils/menuJudge.js';
export default { export default {
name: 'MenuTrain', name: 'MenuTrain',
@ -56,84 +57,18 @@ export default {
default() { default() {
return null; return null;
} }
},
work: {
type: String,
default() {
return '';
}
} }
}, },
data() { data() {
return { return {
menu: [], menu: [],
menuNormal: { menuNormal: [
Local: [
// {
// label: '',
// handler: this.addTrainId,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.delTrainId,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.moveTrainId,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.addPlanTrain,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// type: 'separator'
// },
// {
// label: '',
// handler: this.setPlanTrain,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.setHeadTrain,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.setWorkTrain,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.undeveloped,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// type: 'separator'
// },
// {
// label: 'ATP',
// handler: this.setTrainATPdel,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: 'ATP',
// handler: this.setTrainATPRec,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// type: 'separator'
// },
// {
// label: '',
// handler: this.undeveloped,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// },
// {
// label: '',
// handler: this.undeveloped,
// cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
// }
],
Center: [
{ {
label: '设置车组号', label: '设置车组号',
handler: this.addTrainId, handler: this.addTrainId,
@ -198,8 +133,7 @@ export default {
handler: this.undeveloped, handler: this.undeveloped,
cmdType: CMD.TrainWindow.CMD_Train_Init_Plan cmdType: CMD.TrainWindow.CMD_Train_Init_Plan
} }
] ],
},
menuForce: [ menuForce: [
{ {
label: '设置故障', label: '设置故障',
@ -304,6 +238,16 @@ export default {
initMenu() { initMenu() {
// //
// this.menu = MenuContextHandler.covert(this.menuNormal); // this.menu = MenuContextHandler.covert(this.menuNormal);
this.menu = [];
this.menuNormal.forEach(menuItem => {
let status = judgeStationControl(this.selected.belongStation, this.selected.stationCode, this.work);
if (menuItem.roleDisabled) {
status = true;
}
menuItem.disabled = menuItem.isDisabled ? menuItem.isDisabled(this.selected, this.work) || !status : false;
menuItem.show = menuItem.isShow ? menuItem.isShow(this.selected, this.work) : true;
this.menu.push(menuItem);
});
// //
if (this.operatemode === OperateMode.FAULT) { if (this.operatemode === OperateMode.FAULT) {
if (!this.$store.state.scriptRecord.bgSet) { if (!this.$store.state.scriptRecord.bgSet) {