宁波三菜单调整&表单记录页数

This commit is contained in:
fan 2020-09-09 17:41:51 +08:00
parent 06ecb8dd1a
commit 281bbc32f8
8 changed files with 745 additions and 23 deletions

View File

@ -191,6 +191,7 @@
<script>
// import QueryForm from '@/components/QueryListPage/QueryForm'
// import { mapGetters } from 'vuex'
import { getSessionStorage, setSessionStorage } from '@/utils/auth';
export default {
components: {
@ -241,9 +242,19 @@ export default {
return pagerConfig;
}
},
watch: {
pageSize(val) {
setSessionStorage(this.$route.path + '-pageSize', val);
},
pageIndex(val) {
setSessionStorage(this.$route.path + '-pageIndex', val);
}
},
created() {
const self = this;
// queryList data,[]
this.pageSize = parseInt(getSessionStorage(this.$route.path + '-pageSize')) || 10;
this.pageIndex = parseInt(getSessionStorage(this.$route.path + '-pageIndex')) || 1;
if (!this.queryList.data) {
this.$set(this.queryList, 'data', []);
}
@ -308,7 +319,7 @@ export default {
//
query(queryData) {
this.queryData = queryData;
this.pageIndex = 1;
// this.pageIndex = 1;
this.queryData[this.currentpagerConfig.pageSize] = this.pageSize;
this.queryData[this.currentpagerConfig.pageIndex] = this.pageIndex;
this.queryList.reload();

View File

@ -122,6 +122,11 @@
<train-depart ref="trainDepart" />
<train-jump-stop ref="trainJumpStop" />
<train-cancel-deviation ref="trainCancelDeviation" />
<train-update-deviation ref="trainUpdateDeviation" />
<cancel-route ref="cancelRoute" />
<train-id-associated ref="trainIdAssociated" />
<occupancy-train-correlation ref="occupancyTrainCorrelation" />
<modify-train-number ref="modifyTrainNumber" />
</div>
</template>
<script>
@ -166,6 +171,11 @@ import AdjustStrategy from './menuDialog/adjustStrategy';
import TrainDepart from './menuDialog/trainDepart';
import TrainJumpStop from './menuDialog/trainJumpStop';
import TrainCancelDeviation from './menuDialog/trainCancelDeviation';
import TrainUpdateDeviation from './menuDialog/trainUpdateDeviation';
import CancelRoute from './menuDialog/cancelRoute';
import TrainIdAssociated from './menuDialog/trainIdAssociated';
import OccupancyTrainCorrelation from './menuDialog/occupancyTrainCorrelation';
import ModifyTrainNumber from './menuDialog/modifyTrainNumber';
export default {
name: 'MenuBar',
@ -204,7 +214,12 @@ export default {
AdjustStrategy,
TrainDepart,
TrainJumpStop,
TrainCancelDeviation
TrainCancelDeviation,
TrainUpdateDeviation,
CancelRoute,
TrainIdAssociated,
OccupancyTrainCorrelation,
ModifyTrainNumber
},
props: {
selected: {
@ -312,11 +327,11 @@ export default {
},
{
title: '更新偏差',
click: this.undeveloped
click: this.updateDeviation
},
{
title: '取消CBTC列车进路',
click: this.undeveloped
click: this.cancelCbtcRoute
},
{
title: 'VOBC切换',
@ -334,15 +349,15 @@ export default {
children: [
{
title: '列车ID号关联',
click: this.undeveloped
click: this.setIdAssociated
},
{
title: '列车占用关联',
click: this.undeveloped
click: this.setOccupancyCorrelation
},
{
title: '修改列车描述号',
click: this.undeveloped
click: this.modifyTrainNumber
}
]
},
@ -779,11 +794,11 @@ export default {
},
{
title: '更新偏差',
click: this.undeveloped
click: this.updateDeviation
},
{
title: '取消CBTC列车进路',
click: this.undeveloped
click: this.cancelCbtcRoute
},
{
title: 'VOBC切换',
@ -801,15 +816,15 @@ export default {
children: [
{
title: '列车ID号关联',
click: this.undeveloped
click: this.setIdAssociated
},
{
title: '列车占用关联',
click: this.undeveloped
click: this.setOccupancyCorrelation
},
{
title: '修改列车描述号',
click: this.undeveloped
click: this.modifyTrainNumber
}
]
},
@ -1806,6 +1821,61 @@ export default {
this.$refs.trainCancelDeviation.doShow(operate);
}
});
},
updateDeviation() {
const operate = {
type: 'bar',
operation: ''
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.closeMenu(true);
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
this.$refs.trainUpdateDeviation.doShow(operate);
}
});
},
cancelCbtcRoute() {
const operate = {
type: 'bar',
operation: ''
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.closeMenu(true);
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
this.$refs.cancelRoute.doShow(operate);
}
});
},
setIdAssociated() {
const operate = {
type: 'bar',
operation: ''
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.closeMenu(true);
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
this.$refs.trainIdAssociated.doShow(operate);
}
});
},
setOccupancyCorrelation() {
const operate = {
type: 'bar',
operation: ''
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.closeMenu(true);
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
this.$refs.occupancyTrainCorrelation.doShow(operate);
}
});
},
modifyTrainNumber() {
}
}
};

View File

@ -0,0 +1,144 @@
<template>
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="600px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row>
<el-table :data="data" height="200px">
<el-table-column prop="code" label="进路" />
<el-table-column prop="area" label="区域" />
<el-table-column prop="status" label="状态" />
</el-table>
</el-row>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="1">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>应用(A)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdCancel" @click="cancel">关闭(C)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>帮助(H)</el-button>
</el-col>
</el-row>
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
</el-dialog>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
// import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import { mapGetters } from 'vuex';
export default {
name: 'CancelRoute',
components: {
NoticeInfo
},
data() {
return {
status: false,
command: true,
allChecked: false,
dialogShow: false,
loading: false,
selected: null,
activeName: 'first',
operate: {},
allCheck: false,
slidingTime: 0,
data: []
};
},
computed: {
...mapGetters('map', [
]),
show() {
return this.dialogShow && !this.$store.state.menuOperation.break;
},
domIdCancel() {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
},
domIdChoose() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
},
domIdConfirm() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
},
title() {
return '取消CBTC列车进路';
}
},
watch: {
'$store.state.map.keyboardEnterCount': function (val) {
if (this.show) {
this.commit();
}
}
},
mounted() {
this.$nextTick(() => {
this.$store.dispatch('training/tipReload');
});
},
methods: {
doShow(operate, selected) {
this.selected = selected;
this.operate = operate;
//
this.dialogShow = true;
this.$nextTick(function () {
this.$store.dispatch('training/emitTipFresh');
});
},
doClose() {
this.loading = false;
this.dialogShow = false;
this.$store.dispatch('training/emitTipFresh');
},
commit() {
},
handleClick() {
},
cancel() {
const operate = {
operation: OperationEvent.Command.cancel.menu.operation
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.doClose();
}
}).catch(() => {
this.doClose();
});
}
}
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.menu-li {
height: 30px;
line-height: 30px;
text-align: left;
list-style:none;
padding-left: 5px;
border-right: 2px solid #696969;
color: #000;
}
.set-status-box {
position: relative;
border: 1px solid #AFAFAF;
padding: 15px 5px 5px;
}
.set-status-title{
position: relative;
top: 15px;
background: #F0F0F0;
width: 40px;
text-align: center;
z-index: 22;
left: 10px;
}
</style>

View File

@ -0,0 +1,159 @@
<template>
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="500px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row>
<el-col :span="16">
<el-table :data="trainList" height="300px">
<el-table-column prop="code" label="列车" />
<el-table-column prop="area" label="列车描述号" />
<el-table-column prop="status" label="班次" />
</el-table>
</el-col>
<el-col :span="8" style="padding-left: 5px;">
<div class="set-status-title" style="width: 80px;">列车描述号</div>
<div class="set-status-box">
<div>001-159::</div>
<div>计划列车</div>
<div>160-999::</div>
<div>临时目的地列车</div>
<el-input v-model="groupNumber" size="mini" />
</div>
</el-col>
</el-row>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="1">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>应用(A)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdCancel" @click="cancel">关闭(C)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>帮助(H)</el-button>
</el-col>
</el-row>
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
</el-dialog>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
// import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import { mapGetters } from 'vuex';
export default {
name: 'ModifyTrainNumber',
components: {
NoticeInfo
},
data() {
return {
status: false,
command: true,
allChecked: false,
dialogShow: false,
loading: false,
selected: null,
activeName: 'first',
operate: {},
allCheck: false,
slidingTime: 0,
data: [],
trainId: '',
groupNumber: ''
};
},
computed: {
...mapGetters('map', [
'trainList'
]),
show() {
return this.dialogShow && !this.$store.state.menuOperation.break;
},
domIdCancel() {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
},
domIdChoose() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
},
domIdConfirm() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
},
title() {
return '修改列车描述号';
}
},
watch: {
'$store.state.map.keyboardEnterCount': function (val) {
if (this.show) {
this.commit();
}
}
},
mounted() {
this.$nextTick(() => {
this.$store.dispatch('training/tipReload');
});
},
methods: {
doShow(operate, selected) {
this.selected = selected;
this.operate = operate;
//
this.dialogShow = true;
this.$nextTick(function () {
this.$store.dispatch('training/emitTipFresh');
});
},
doClose() {
this.loading = false;
this.dialogShow = false;
this.$store.dispatch('training/emitTipFresh');
},
commit() {
},
handleClick() {
},
cancel() {
const operate = {
operation: OperationEvent.Command.cancel.menu.operation
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.doClose();
}
}).catch(() => {
this.doClose();
});
}
}
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.menu-li {
height: 30px;
line-height: 30px;
text-align: left;
list-style:none;
padding-left: 5px;
border-right: 2px solid #696969;
color: #000;
}
.set-status-box {
position: relative;
border: 1px solid #AFAFAF;
padding: 15px 5px 5px;
}
.set-status-title{
position: relative;
top: 15px;
background: #F0F0F0;
width: 40px;
text-align: center;
z-index: 22;
left: 10px;
}
</style>

View File

@ -0,0 +1,169 @@
<template>
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="900px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row>
<el-col :span="7">
<el-table :data="data" height="300px">
<el-table-column prop="code" label="ID" />
<el-table-column prop="sort" label="列车顺序" />
</el-table>
</el-col>
<el-col :span="3" style="padding-left: 5px">
<el-table :data="data" height="300px">
<el-table-column prop="sort" label="列车顺序" />
</el-table>
</el-col>
<el-col :span="9" style="padding-left: 5px">
<el-table :data="data" height="300px">
<el-table-column prop="code" label="列车ID" />
<el-table-column prop="groupNumber" label="车体号" />
<el-table-column prop="tripNumber" label="列车描述号" />
</el-table>
</el-col>
<el-col :span="5" style="padding-left: 5px">
<div class="set-status-title">关联</div>
<div class="set-status-box">
<el-radio v-model="command" label="up">在上行线尽头创建(U)</el-radio>
<br>
<el-radio v-model="command" label="down">在下行线尽头创建(D)</el-radio>
<br>
<el-radio v-model="command" label="delete">删除(I)</el-radio>
</div>
</el-col>
</el-row>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="1">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>应用(A)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdCancel" @click="cancel">关闭(C)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>帮助(H)</el-button>
</el-col>
</el-row>
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
</el-dialog>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
// import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import { mapGetters } from 'vuex';
export default {
name: 'CancelRoute',
components: {
NoticeInfo
},
data() {
return {
status: false,
command: 'up',
allChecked: false,
dialogShow: false,
loading: false,
selected: null,
activeName: 'first',
operate: {},
allCheck: false,
slidingTime: 0,
data: [],
trainId: '',
groupNumber: ''
};
},
computed: {
...mapGetters('map', [
]),
show() {
return this.dialogShow && !this.$store.state.menuOperation.break;
},
domIdCancel() {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
},
domIdChoose() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
},
domIdConfirm() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
},
title() {
return '占用列车关联';
}
},
watch: {
'$store.state.map.keyboardEnterCount': function (val) {
if (this.show) {
this.commit();
}
}
},
mounted() {
this.$nextTick(() => {
this.$store.dispatch('training/tipReload');
});
},
methods: {
doShow(operate, selected) {
this.selected = selected;
this.operate = operate;
//
this.dialogShow = true;
this.$nextTick(function () {
this.$store.dispatch('training/emitTipFresh');
});
},
doClose() {
this.loading = false;
this.dialogShow = false;
this.$store.dispatch('training/emitTipFresh');
},
commit() {
},
handleClick() {
},
cancel() {
const operate = {
operation: OperationEvent.Command.cancel.menu.operation
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.doClose();
}
}).catch(() => {
this.doClose();
});
}
}
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.menu-li {
height: 30px;
line-height: 30px;
text-align: left;
list-style:none;
padding-left: 5px;
border-right: 2px solid #696969;
color: #000;
}
.set-status-box {
position: relative;
border: 1px solid #AFAFAF;
padding: 15px 5px 5px;
}
.set-status-title{
position: relative;
top: 15px;
background: #F0F0F0;
width: 40px;
text-align: center;
z-index: 22;
left: 10px;
}
</style>

View File

@ -0,0 +1,159 @@
<template>
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="500px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row>
<el-col :span="18">
<el-table :data="data" height="300px">
<el-table-column prop="code" label="进路" />
<el-table-column prop="area" label="区域" />
<el-table-column prop="status" label="状态" />
</el-table>
</el-col>
<el-col :span="6" style="padding-left: 5px;">
<div class="set-status-title">关联</div>
<div class="set-status-box">
<div>列车ID</div>
<el-input v-model="trainId" size="mini" />
<div>车体号(R)</div>
<el-input v-model="groupNumber" size="mini" />
<el-button style="margin-top: 10px; margin-left: 10px;">插入(I)</el-button>
<el-button style="margin-top: 10px;">删除(D)</el-button>
</div>
</el-col>
</el-row>
<el-row justify="center" class="button-group">
<el-col :span="4" :offset="1">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>应用(A)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button :id="domIdCancel" @click="cancel">关闭(C)</el-button>
</el-col>
<el-col :span="4" :offset="2">
<el-button>帮助(H)</el-button>
</el-col>
</el-row>
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
</el-dialog>
</template>
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
// import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
import { mapGetters } from 'vuex';
export default {
name: 'CancelRoute',
components: {
NoticeInfo
},
data() {
return {
status: false,
command: true,
allChecked: false,
dialogShow: false,
loading: false,
selected: null,
activeName: 'first',
operate: {},
allCheck: false,
slidingTime: 0,
data: [],
trainId: '',
groupNumber: ''
};
},
computed: {
...mapGetters('map', [
]),
show() {
return this.dialogShow && !this.$store.state.menuOperation.break;
},
domIdCancel() {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
},
domIdChoose() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
},
domIdConfirm() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
},
title() {
return '列车ID关联';
}
},
watch: {
'$store.state.map.keyboardEnterCount': function (val) {
if (this.show) {
this.commit();
}
}
},
mounted() {
this.$nextTick(() => {
this.$store.dispatch('training/tipReload');
});
},
methods: {
doShow(operate, selected) {
this.selected = selected;
this.operate = operate;
//
this.dialogShow = true;
this.$nextTick(function () {
this.$store.dispatch('training/emitTipFresh');
});
},
doClose() {
this.loading = false;
this.dialogShow = false;
this.$store.dispatch('training/emitTipFresh');
},
commit() {
},
handleClick() {
},
cancel() {
const operate = {
operation: OperationEvent.Command.cancel.menu.operation
};
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
if (valid) {
this.doClose();
}
}).catch(() => {
this.doClose();
});
}
}
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.menu-li {
height: 30px;
line-height: 30px;
text-align: left;
list-style:none;
padding-left: 5px;
border-right: 2px solid #696969;
color: #000;
}
.set-status-box {
position: relative;
border: 1px solid #AFAFAF;
padding: 15px 5px 5px;
}
.set-status-title{
position: relative;
top: 15px;
background: #F0F0F0;
width: 40px;
text-align: center;
z-index: 22;
left: 10px;
}
</style>

View File

@ -2,19 +2,19 @@
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="600px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
<el-row>
<el-col :span="16">
<el-table :data="trainList" height="300px">
<el-table :data="trainList" height="200px">
<el-table-column prop="code" label="列车" />
<el-table-column prop="trip" label="班次" />
<el-table-column prop="deviation" label="偏差" />
</el-table>
</el-col>
<el-col :span="4" style="padding-left: 5px;">
<div class="set-status-title">跳停</div>
<el-col :span="8" style="padding-left: 5px;">
<div class="set-status-title" style="width: 90px;">滑动时间(S)</div>
<div class="set-status-box">
<el-radio v-model="command" :disabled="true" :label="true">设置(S)</el-radio>
<br>
<el-radio v-model="command" :label="false">清除(R)</el-radio>
<el-input-number v-model="slidingTime" :precision="0" controls-position="right" size="mini" :min="-9999" :max="9999" />
<div>范围-9999到9999秒</div>
</div>
<el-checkbox v-model="allChecked" style="margin-top: 15px;">所有列车(L)</el-checkbox>
</el-col>
</el-row>
<el-row justify="center" class="button-group">
@ -56,7 +56,8 @@ export default {
selected: null,
activeName: 'first',
operate: {},
allCheck: false
allCheck: false,
slidingTime: 0
};
},
computed: {
@ -77,7 +78,7 @@ export default {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
},
title() {
return '设置/清除站台跳停';
return '更新偏差';
}
},
watch: {
@ -139,13 +140,12 @@ export default {
}
.set-status-box {
position: relative;
top: 80px;
border: 1px solid #AFAFAF;
padding: 10px 5px;
padding: 15px 5px 5px;
}
.set-status-title{
position: relative;
top: 95px;
top: 15px;
background: #F0F0F0;
width: 40px;
text-align: center;

View File

@ -54,6 +54,13 @@ export default {
config: {
data: []
}
},
lineCode: {
type: 'select',
label: '所属线路',
config: {
data: []
}
}
}
@ -184,6 +191,9 @@ export default {
this.lineCodeList = [];
getLineCodeList().then(response => {
this.lineCodeList = response.data;
this.lineCodeList.forEach(elem => {
this.queryForm.queryObject.lineCode.config.data.push({ value: elem.code, label: elem.name });
});
});
},
handleSetProject(index, row) {