This commit is contained in:
sunzhenyu 2020-08-28 17:27:00 +08:00
commit 4668783e72
35 changed files with 411 additions and 87 deletions

View File

@ -6,7 +6,7 @@ NODE_ENV = 'development'
# VUE_APP_BASE_API = 'https://joylink.club/jlcloud' # VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
# VUE_APP_BASE_API = 'http://192.168.3.4:9000' # VUE_APP_BASE_API = 'http://192.168.3.4:9000'
VUE_APP_BASE_API = 'http://192.168.3.6:9000' VUE_APP_BASE_API = 'http://192.168.3.6:9000'
VUE_APP_VOICE_API = 'https://test.joylink.club/jlcloud' VUE_APP_VOICE_API = 'https://test.joylink.club/jlcloud/'
# vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable, # vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable,
# to control whether the babel-plugin-dynamic-import-node plugin is enabled. # to control whether the babel-plugin-dynamic-import-node plugin is enabled.

View File

@ -4,4 +4,4 @@ VUE_APP_PRO = 'local'
# base api # base api
VUE_APP_BASE_API = 'https://joylink.club/jlcloud' VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
VUE_APP_VOICE_API = 'https://joylink.club/jlcloud' VUE_APP_VOICE_API = 'https://joylink.club/jlcloud/'

View File

@ -3,4 +3,4 @@ NODE_ENV = 'production'
# base api # base api
VUE_APP_BASE_API = 'https://joylink.club/jlcloud' VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
VUE_APP_VOICE_API = 'https://joylink.club/jlcloud' VUE_APP_VOICE_API = 'https://joylink.club/jlcloud/'

View File

@ -3,4 +3,4 @@ NODE_ENV = 'production'
# base api # base api
VUE_APP_BASE_API = 'https://test.joylink.club/jlcloud' VUE_APP_BASE_API = 'https://test.joylink.club/jlcloud'
VUE_APP_VOICE_API = 'https://test.joylink.club/jlcloud' VUE_APP_VOICE_API = 'https://test.joylink.club/jlcloud/'

View File

@ -436,11 +436,11 @@ class SkinCode extends defaultStyle {
grayColor: '#7F7F7F' grayColor: '#7F7F7F'
} }
} }
}; };
this[deviceType.StationTurnBack] = { // 站后折返 this[deviceType.StationTurnBack] = { // 站后折返
displayCondition: '01', // 显示条件 01所有模式下显示 02 行调显示 03现地显示 displayCondition: '01', // 显示条件 01所有模式下显示 02 行调显示 03现地显示
spliceShow: true, // 西安二号线特殊显示 spliceShow: true, // 西安二号线特殊显示
lamp: { lamp: {
fill: '#FFFF00', // 填充色 fill: '#FFFF00', // 填充色
radiusR: 6 // 控制灯大小 radiusR: 6 // 控制灯大小
@ -646,14 +646,14 @@ class SkinCode extends defaultStyle {
} }
}; };
this[deviceType.ReturnModeGroup] = { this[deviceType.ReturnModeGroup] = {
displayCondition: '01', // 显示条件 01所有模式下显示 02 行调显示 03现地显示 displayCondition: '01', // 显示条件 01所有模式下显示 02 行调显示 03现地显示
insideDistance: 2, // 折返模块边框内部距离 insideDistance: 2, // 折返模块边框内部距离
outsideDistance: 10, // 折返模块边框之间距离 outsideDistance: 10, // 折返模块边框之间距离
rectWidth: 20, // 折返模块宽度 rectWidth: 20, // 折返模块宽度
lineWidth: 3, // 折返模块线宽 lineWidth: 3, // 折返模块线宽
fillColor: 'rgba(0,0,0,0)', // 填充色 fillColor: 'rgba(0,0,0,0)', // 填充色
strokeColor: '#9F9C9C', // 线颜色 strokeColor: '#9F9C9C', // 线颜色
highlightColor: '#fff' // 高亮颜色 highlightColor: '#fff' // 高亮颜色
}; };
this[deviceType.ModeStatusGroup] = { // 车站状态模式 this[deviceType.ModeStatusGroup] = { // 车站状态模式
displayCondition: '01', // 显示条件 01所有模式下显示 02 行调显示 03现地显示 displayCondition: '01', // 显示条件 01所有模式下显示 02 行调显示 03现地显示
@ -713,7 +713,7 @@ class SkinCode extends defaultStyle {
this[deviceType.Train] = { this[deviceType.Train] = {
trainBody: { trainBody: {
fontFamily: 'consolas', fontFamily: 'consolas',
trainBodyLineWidth: 2, // 车身line宽 trainBodyLineWidth: 0, // 车身line宽
changeTrainWidth: false, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度 changeTrainWidth: false, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度
specialTrainType: [], // 特殊列车类型需设置显示格式 specialTrainType: [], // 特殊列车类型需设置显示格式
lrPadding: 4, // 两边间隔 lrPadding: 4, // 两边间隔
@ -728,7 +728,7 @@ class SkinCode extends defaultStyle {
lrPaddingHSDA: 3, // HSDA两边间隔 lrPaddingHSDA: 3, // HSDA两边间隔
upPaddingHSDA: 4, // HSDA上边距离 upPaddingHSDA: 4, // HSDA上边距离
trainHSDATextFontSize: 8, // 列车HDSA字号 trainHSDATextFontSize: 8, // 列车HDSA字号
textHContent: '', // textH文本 textHContent: '', // textH文本
textSContent: '跳', // textS文本 textSContent: '跳', // textS文本
textDContent: '门', // textD文本 textDContent: '门', // textD文本
textAContent: '警' // textA文本 textAContent: '警' // textA文本
@ -769,11 +769,12 @@ class SkinCode extends defaultStyle {
}, },
common: { common: {
trainHeight: 20, // 列车高度 trainHeight: 20, // 列车高度
trainHeadDistance: 2, // 列车和车头之间的间距 trainHeadDistance: 0.3, // 列车和车头之间的间距
trainWidth: 55, // 列车长度 trainWidth: 55, // 列车长度
trainTextFontSize: 16, // 列车字号 trainTextFontSize: 16, // 列车字号
fontFamily: 'consolas', // 默认字体 族类 fontFamily: 'consolas', // 默认字体 族类
haveTextHSDA: true, // 是否需创建textHSDA对象 haveTextHSDA: false, // 是否需创建textHSDA对象
HSDASpliceShow: true, // 列车扣车特殊显示
haveArrowText: true, // 是否需创建arrowText对象 haveArrowText: true, // 是否需创建arrowText对象
textOffset: 4, // 字体偏移(用以控制字体据车头的距离) textOffset: 4, // 字体偏移(用以控制字体据车头的距离)
trainWidthMoreText: 8, // 计算列车长度时--列车长比text多出尺寸 trainWidthMoreText: 8, // 计算列车长度时--列车长比text多出尺寸

View File

@ -6,6 +6,7 @@ import EMouse from './EMouse';
import store from '@/store/index_APP_TARGET'; import store from '@/store/index_APP_TARGET';
import Circle from 'zrender/src/graphic/shape/Circle'; import Circle from 'zrender/src/graphic/shape/Circle';
import BoundingRect from 'zrender/src/core/BoundingRect'; import BoundingRect from 'zrender/src/core/BoundingRect';
import Vue from 'vue';
/** 车身*/ /** 车身*/
export default class TrainBody extends Group { export default class TrainBody extends Group {
@ -43,8 +44,11 @@ export default class TrainBody extends Group {
const tripNumber = style.Train.trainTarget.tripNumberPrefix + (style.Train.trainTarget.defaultDirectionCode const tripNumber = style.Train.trainTarget.tripNumberPrefix + (style.Train.trainTarget.defaultDirectionCode
? (model.directionCode || style.Train.trainTarget.defaultDirectionCode) + (model.tripNumber || style.Train.trainTarget.defaultTripNumber) ? (model.directionCode || style.Train.trainTarget.defaultDirectionCode) + (model.tripNumber || style.Train.trainTarget.defaultTripNumber)
: model.tripNumber || style.Train.trainTarget.defaultTripNumber); // 车次号 : model.tripNumber || style.Train.trainTarget.defaultTripNumber); // 车次号
const targetCode = style.Train.trainNumber.targetCodePrefix + (model.destinationCode || style.Train.trainNumber.defaultTargetCode); // 目的地码 let targetCode = style.Train.trainNumber.targetCodePrefix + (model.destinationCode || style.Train.trainNumber.defaultTargetCode); // 目的地码
const groupNumber = style.Train.trainTargetNumber.groupNumberPrefix + (style.Train.trainTargetNumber.lineNumber || '') + (model.groupNumber || style.Train.trainTargetNumber.defaultGroupNumber); // 车组号 const groupNumber = style.Train.trainTargetNumber.groupNumberPrefix + (style.Train.trainTargetNumber.lineNumber || '') + (model.groupNumber || style.Train.trainTargetNumber.defaultGroupNumber); // 车组号
if (Vue.prototype.$jlmap.lineCode == '09') { // 暂时先写死 后面有了删掉就好
targetCode = '01';
}
// 服务号 // 服务号
this.textTrainServer = new ETextName({ this.textTrainServer = new ETextName({
zlevel: model.zlevel, zlevel: model.zlevel,
@ -120,6 +124,7 @@ export default class TrainBody extends Group {
zlevel: model.zlevel, zlevel: model.zlevel,
z: model.z, z: model.z,
point: model.point, point: model.point,
speed: model.speed,
style: style style: style
}); });
const beginX = (model.point.x + style.Train.trainBody.lrPadding); const beginX = (model.point.x + style.Train.trainBody.lrPadding);
@ -280,6 +285,9 @@ export default class TrainBody extends Group {
if (this.textH) { if (this.textH) {
isShow ? this.textH.show() : this.textH.hide(); isShow ? this.textH.show() : this.textH.hide();
} }
if (this.style.Train.common.HSDASpliceShow) {
isShow ? this.trainBodyBox.buckleTrain() : this.trainBodyBox.release();
}
} }
setSShow(isShow) { setSShow(isShow) {
if (this.textS) { if (this.textS) {

View File

@ -37,4 +37,24 @@ export default class TrainBodyBox extends Group {
return tempRect; return tempRect;
} }
} }
// 列车扣车
buckleTrain() {
if (this.trainBodyBox) {
this.trainBodyBox.setStyle('fill', 'yellow');
if (this.model.speed) { // 列车停稳状态下开始闪烁
this.trainBodyBox.animateStyle(true)
.when(0, { fill: this.model.style.backgroundColor })
.when(1000, { fill: 'yellow' })
.when(2000, { fill: this.model.style.backgroundColor })
.start();
}
}
}
// 列车放行
release() {
if (this.trainBodyBox) {
this.trainBodyBox.setStyle('fill', this.model.style.Train.trainBody.trainBodyFillColor);
this.trainBodyBox.stopAnimation(false);
}
}
} }

View File

@ -260,14 +260,15 @@ export default {
this.model.confirmSectionName = ''; this.model.confirmSectionName = '';
if (selected) { if (selected) {
if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) { if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) {
if (selected.isSwitchSection) { if (selected.type == '03') {
const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode); const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode);
if (section) { if (section) {
this.model.sectionName = section.name; this.model.sectionName = section.name;
} }
} else { } else {
const hasParentCode = (this.selected.type == '02');
const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode); const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode);
if (section) { if (section && hasParentCode) {
this.model.sectionName = section.name; this.model.sectionName = section.name;
this.model.sectionName = `${section.name}-${selected.name}`; this.model.sectionName = `${section.name}-${selected.name}`;
} else { } else {

View File

@ -218,7 +218,8 @@ export default {
}, },
// //
split() { split() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.split, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.split, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.sectionControl.doShow(operate, this.selected); this.$refs.sectionControl.doShow(operate, this.selected);
@ -234,7 +235,8 @@ export default {
}, },
// //
active() { active() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.active, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.active, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.sectionControl.doShow(operate, this.selected); this.$refs.sectionControl.doShow(operate, this.selected);
@ -257,7 +259,8 @@ export default {
// }, // },
// //
setSpeed() { setSpeed() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.setSpeed, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.setSpeed, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.speedLimitControl.doShow(operate, this.selected); this.$refs.speedLimitControl.doShow(operate, this.selected);

View File

@ -80,7 +80,8 @@ export default {
// //
if (!this.dialogShow) { if (!this.dialogShow) {
if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) { if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) {
this.formModel.sectionName = selected.parentCode ? selected.parentName + '-' + selected.name : selected.name; const hasParentCode = (this.selected.type == '02');
this.formModel.sectionName = hasParentCode ? selected.parentName + '-' + selected.name : selected.name;
this.formModel.lengthFact = selected.lengthFact; this.formModel.lengthFact = selected.lengthFact;
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode); const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
if (station) { if (station) {

View File

@ -947,7 +947,7 @@ export default {
padding: 0px; padding: 0px;
margin: 0px; margin: 0px;
max-height: 550px; max-height: 550px;
overflow-y: scroll; /*overflow-y: scroll;*/
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 4px; width: 4px;
@ -972,10 +972,13 @@ export default {
line-height: $menuItemHeight; line-height: $menuItemHeight;
width: $menuItemWidth; width: $menuItemWidth;
bottom: $menuItemHeight; bottom: $menuItemHeight;
position: relative;
left: 180px;
padding-left: 0;
} }
.active { .active {
position: absolute; /*position: absolute;*/
display: block !important; display: block !important;
} }

View File

@ -189,7 +189,7 @@ export default {
if (controlTransfer.applicantId) { if (controlTransfer.applicantId) {
const member = this.$store.state.training.memberData[controlTransfer.applicantId]; const member = this.$store.state.training.memberData[controlTransfer.applicantId];
const simulationUserList = this.$store.state.training.simulationUserList; const simulationUserList = this.$store.state.training.simulationUserList;
if (member.type == 'DISPATCHER' && controlTransferList.length > 1) { if (member && member.type == 'DISPATCHER' && controlTransferList.length > 1) {
controlTransferList.forEach(each=>{ controlTransferList.forEach(each=>{
this.showDialog(this.$store.state.training.memberData[each.applicantId], each, simulationUserList, [each]); this.showDialog(this.$store.state.training.memberData[each.applicantId], each, simulationUserList, [each]);
}); });

View File

@ -49,7 +49,7 @@ export default {
{ deviceType: '05', orderNum: 4, operateCode: '204', tip: '鼠标左键点击【请求中控】', val: '{2}' }, { deviceType: '05', orderNum: 4, operateCode: '204', tip: '鼠标左键点击【请求中控】', val: '{2}' },
{ deviceType: '05', orderNum: 5, operateCode: '2043', tip: '鼠标左键点击【确认】按钮' }, { deviceType: '05', orderNum: 5, operateCode: '2043', tip: '鼠标左键点击【确认】按钮' },
{ deviceType: '05', orderNum: 6, operateCode: '0013', tip: '鼠标左键点击【确定】按钮' }, { deviceType: '05', orderNum: 6, operateCode: '0013', tip: '鼠标左键点击【确定】按钮' },
{ deviceType: 'bar', orderNum: 7, operateCode: '000', tip: '鼠标左键点击【关闭】按钮' } { deviceType: '05', orderNum: 7, operateCode: '000', tip: '鼠标左键点击【关闭】按钮' }
] ]
}, },
{ {
@ -68,7 +68,7 @@ export default {
{ deviceType: '05', orderNum: 4, operateCode: '202', tip: '鼠标左键点击【请求站控】', val: '{2}' }, { deviceType: '05', orderNum: 4, operateCode: '202', tip: '鼠标左键点击【请求站控】', val: '{2}' },
{ deviceType: '05', orderNum: 5, operateCode: '2023', tip: '鼠标左键点击【确认】按钮' }, { deviceType: '05', orderNum: 5, operateCode: '2023', tip: '鼠标左键点击【确认】按钮' },
{ deviceType: '05', orderNum: 6, operateCode: '0013', tip: '鼠标左键点击【确定】按钮' }, { deviceType: '05', orderNum: 6, operateCode: '0013', tip: '鼠标左键点击【确定】按钮' },
{ deviceType: 'bar', orderNum: 7, operateCode: '000', tip: '鼠标左键点击【关闭】按钮' } { deviceType: '05', orderNum: 7, operateCode: '000', tip: '鼠标左键点击【关闭】按钮' }
] ]
}, },
{ {
@ -88,7 +88,7 @@ export default {
{ deviceType: '05', orderNum: 5, operateCode: '203', tip: '鼠标左键点击【强制站控】', val: '{2}' }, { deviceType: '05', orderNum: 5, operateCode: '203', tip: '鼠标左键点击【强制站控】', val: '{2}' },
{ deviceType: '05', orderNum: 6, operateCode: '2033', tip: '鼠标左键点击【确认】按钮' }, { deviceType: '05', orderNum: 6, operateCode: '2033', tip: '鼠标左键点击【确认】按钮' },
{ deviceType: '05', orderNum: 7, operateCode: '0013', tip: '鼠标左键点击【确定】按钮' }, { deviceType: '05', orderNum: 7, operateCode: '0013', tip: '鼠标左键点击【确定】按钮' },
{ deviceType: 'bar', orderNum: 8, operateCode: '000', tip: '鼠标左键点击【关闭】按钮' } { deviceType: '05', orderNum: 8, operateCode: '000', tip: '鼠标左键点击【关闭】按钮' }
] ]
}, },
{ {
@ -119,7 +119,7 @@ export default {
{ deviceType: '06', orderNum: 2, operateCode: '505', tip: '鼠标左键点击【确定】按钮' } { deviceType: '06', orderNum: 2, operateCode: '505', tip: '鼠标左键点击【确定】按钮' }
] ]
}, },
{ { // 实训未生成
maxDuration: 15, maxDuration: 15,
minDuration: 8, minDuration: 8,
operateType: 'Stand_Force_Cancel_Hold_Train', operateType: 'Stand_Force_Cancel_Hold_Train',

View File

@ -230,7 +230,8 @@ export default {
this.model.sectionCode = selected.code; this.model.sectionCode = selected.code;
if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) { if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) {
const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode); const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode);
if (section) { const hasParentCode = (this.selected.type == '02');
if (section && hasParentCode) {
this.model.sectionName = `${section.name}-${selected.name}(${selected.code})`; this.model.sectionName = `${section.name}-${selected.name}(${selected.code})`;
} else { } else {
this.model.sectionName = `${selected.name}(${selected.code})`; this.model.sectionName = `${selected.name}(${selected.code})`;

View File

@ -195,7 +195,8 @@ export default {
}, },
// //
split() { split() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.split, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.split, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.sectionControl.doShow(operate, this.selected); this.$refs.sectionControl.doShow(operate, this.selected);
@ -212,7 +213,8 @@ export default {
}, },
// //
active() { active() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.active, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.active, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.sectionControl.doShow(operate, this.selected); this.$refs.sectionControl.doShow(operate, this.selected);

View File

@ -221,7 +221,6 @@ export default {
{ deviceType: '06', orderNum: 2, operateCode: '0012', tip: '鼠标左键点击【确定】按钮' } { deviceType: '06', orderNum: 2, operateCode: '0012', tip: '鼠标左键点击【确定】按钮' }
] ]
}, },
{ {
maxDuration: 15, maxDuration: 15,
minDuration: 8, minDuration: 8,
@ -766,8 +765,8 @@ export default {
minDuration: 8, minDuration: 8,
operateType: 'Signal_Set_Auto_Turn_Back', operateType: 'Signal_Set_Auto_Turn_Back',
skinCode: '06', skinCode: '06',
trainingName: '设置自动折返进路({3})', trainingName: '设置自动折返({3})',
trainingRemark: '设置自动折返进路', trainingRemark: '设置自动折返',
trainingType: 'Signal', trainingType: 'Signal',
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
@ -780,14 +779,32 @@ export default {
minDuration: 8, minDuration: 8,
operateType: 'Signal_Cancel_Auto_Turn_Back', operateType: 'Signal_Cancel_Auto_Turn_Back',
skinCode: '06', skinCode: '06',
trainingName: ' 取消自动折返进路({3})', trainingName: ' 取消自动折返({3})',
trainingRemark: ' 取消自动折返进路', trainingRemark: ' 取消自动折返',
trainingType: 'Signal', trainingType: 'Signal',
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '05', orderNum: 1, operateCode: '901', tip: '鼠标右键菜单选择【取消自动折返】'}, { deviceType: '05', orderNum: 1, operateCode: '901', tip: '鼠标右键菜单选择【取消自动折返】'},
{ deviceType: '05', orderNum: 2, operateCode: '901', tip: '鼠标左键点击【应用】' } { deviceType: '05', orderNum: 2, operateCode: '901', tip: '鼠标左键点击【应用】' }
] ]
},
{
maxDuration: 20,
minDuration: 15,
operateType: 'Cancel_All_Limit_Speed',
skinCode: '06',
trainingName: ' 取消全线临时限速',
trainingRemark: ' 取消全线临时限速',
trainingType: 'LimitControl',
productTypes: ['02'],
stepVOList: [
{ deviceType: '10', orderNum: 1, operateCode: '800', tip: '鼠标右键菜单选择【取消全线临时限速】'},
{ deviceType: '10', orderNum: 2, operateCode: '8001', tip: '鼠标左键点击【打开会话】'},
{ deviceType: '10', orderNum: 3, operateCode: '8003', tip: '鼠标左键点击【确认】'},
{ deviceType: '10', orderNum: 4, operateCode: '8004', tip: '鼠标左键点击【确认】'},
{ deviceType: '10', orderNum: 5, operateCode: '8005', tip: '鼠标左键点击【关闭】'},
{ deviceType: '10', orderNum: 6, operateCode: '8006', tip: '鼠标左键点击【确认】' }
]
} }
] ]
}; };

View File

@ -230,7 +230,8 @@ export default {
this.model.sectionCode = selected.code; this.model.sectionCode = selected.code;
if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) { if (selected && selected._type.toUpperCase() === 'Section'.toUpperCase()) {
const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode); const section = this.$store.getters['map/getDeviceByCode'](selected.parentCode);
if (section) { const hasParentCode = (this.selected.type == '02');
if (section && hasParentCode) {
this.model.sectionName = `${section.name}-${selected.name}(${selected.code})`; this.model.sectionName = `${section.name}-${selected.name}(${selected.code})`;
} else { } else {
this.model.sectionName = `${selected.name}(${selected.code})`; this.model.sectionName = `${selected.name}(${selected.code})`;

View File

@ -195,7 +195,8 @@ export default {
}, },
// //
split() { split() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.split, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.split, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.sectionControl.doShow(operate, this.selected); this.$refs.sectionControl.doShow(operate, this.selected);
@ -212,7 +213,8 @@ export default {
}, },
// //
active() { active() {
const sectionCode = this.selected.parentCode ? this.selected.parentCode : this.selected.code; const hasParentCode = (this.selected.type == '02' || this.selected.type == '03');
const sectionCode = hasParentCode ? this.selected.parentCode : this.selected.code;
commitOperate(menuOperate.Section.active, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{ commitOperate(menuOperate.Section.active, {sectionCode:sectionCode}, 0).then(({valid, operate})=>{
if (valid) { if (valid) {
this.$refs.sectionControl.doShow(operate, this.selected); this.$refs.sectionControl.doShow(operate, this.selected);

View File

@ -66,6 +66,7 @@
<script> <script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import CMD from '@/scripts/cmdPlugin/CommandEnum';
export default { export default {
name: 'ChangeTID', name: 'ChangeTID',
@ -116,13 +117,48 @@ export default {
this.dialogShow = true; this.dialogShow = true;
this.selected = selected; this.selected = selected;
this.groupNumber = selected.code; this.groupNumber = selected.code;
this.tid = selected.tripNumber; this.tid = selected.serviceNumber;
this.operate = step; this.operate = step;
}, },
cancel() { cancel() {
this.doClose(); this.doClose();
}, },
commit() { commit() {
if (this.isUpdate) {
this.setTrainNumber();
}
},
//
setTrainNumber() {
const step = {
over: true,
code: `${this.selected.code}`,
operation: OperationEvent.Train.setTrainNumber.menu.operation,
cmdType: CMD.Train.CMD_TRAIN_CHANGE_TRIP_NUMBER,
param: {
groupNumber: this.selected.groupNumber,
serviceNumber: this.newTid
}
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
if (valid) {
// this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
// this.$store.dispatch('menuOperation/pushRequestList', {
// device: this.selected,
// operation: { code: OperationEvent.Train.setTrainNumber.menu.operation, name: ''},
// cmdType: CMD.Train.CMD_TRAIN_CHANGE_TRIP_NUMBER,
// param: step.param
// });
this.doClose();
} else {
this.$refs.noticeInfo.doShow();
this.doClose();
}
}).catch(() => {
this.doClose();
this.$refs.noticeInfo.doShow();
});
} }
} }
}; };

View File

@ -126,12 +126,12 @@ export default {
children:[ children:[
{ {
label: '扣车', label: '扣车',
handler: this.undeveloped, handler: this.setDetainTrain,
cmdType: CMD.TrainWindow.CMD_TRAIN_UPDATE_TYPE cmdType: CMD.TrainWindow.CMD_TRAIN_UPDATE_TYPE
}, },
{ {
label: '发车 ', label: '发车 ',
handler: this.undeveloped, handler: this.setTrainDeparture,
cmdType: CMD.TrainWindow.CMD_TRAIN_UPDATE_TYPE cmdType: CMD.TrainWindow.CMD_TRAIN_UPDATE_TYPE
} }
] ]
@ -445,6 +445,40 @@ export default {
} }
}); });
}, },
//
setDetainTrain() {
const step = {
over: true,
code: `${this.selected.code}`,
operation: OperationEvent.Train.setDetainTrain.menu.operation,
cmdType: CMD.Train.CMD_TRAIN_HOLD,
param: {
groupNumber: this.selected.groupNumber
}
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
}).catch(() => {
this.$refs.noticeInfo.doShow();
});
},
//
setTrainDeparture() {
const step = {
over: true,
code: `${this.selected.code}`,
operation: OperationEvent.Train.setTrainDeparture.menu.operation,
cmdType: CMD.Train.CMD_TRAIN_CANCEL_HOLD,
param: {
groupNumber: this.selected.groupNumber
}
};
this.$store.dispatch('training/nextNew', step).then(({ valid }) => {
}).catch(() => {
this.$refs.noticeInfo.doShow(step);
});
},
deletDestionation() { deletDestionation() {
const operate = { const operate = {
start: true, start: true,

View File

@ -149,7 +149,8 @@ export default {
{ label: '控制模式', value: 'ControlConvertMenu' }, { label: '控制模式', value: 'ControlConvertMenu' },
{ label: '车次窗', value: 'TrainWindow' }, { label: '车次窗', value: 'TrainWindow' },
{ label: '全线限速', value: 'LimitControl' }, { label: '全线限速', value: 'LimitControl' },
{ label: '司机', value: 'Driver' } { label: '司机', value: 'Driver' },
{ label: '列车', value: 'Train' }
], ],
simulationDeviceList:[ simulationDeviceList:[

View File

@ -220,7 +220,10 @@ export default {
/** 越信号机红灯 */ /** 越信号机红灯 */
CMD_TRAIN_PASS_RED_SIGNAL: {value:'Train_Pass_Red_Signal', label: '越信号机红灯'}, CMD_TRAIN_PASS_RED_SIGNAL: {value:'Train_Pass_Red_Signal', label: '越信号机红灯'},
/** 引导信号行车 */ /** 引导信号行车 */
CMD_TRAIN_DRIVE_BY_GUIDE_SIGNAL: {value:'Train_Drive_By_Guide_Signal', label: '引导信号行车'} CMD_TRAIN_DRIVE_BY_GUIDE_SIGNAL: {value:'Train_Drive_By_Guide_Signal', label: '引导信号行车'},
CMD_TRAIN_HOLD: {value:'Train_Hold', label: '列车扣车'},
CMD_TRAIN_CANCEL_HOLD: {value:'Train_Cancel_Hold', label: '列车发车'},
CMD_TRAIN_CHANGE_TRIP_NUMBER: {value:'Train_Change_Trip_Number', label: '更改列车车次'}
}, },
TrainWindow: { TrainWindow: {
/** 修改列车识别号 */ /** 修改列车识别号 */

View File

@ -2262,6 +2262,27 @@ export const OperationEvent = {
operation: '70j2', operation: '70j2',
domId: '_Tips-Train-updateIdleRunningMode-Choose' domId: '_Tips-Train-updateIdleRunningMode-Choose'
} }
},
// 设置扣车
setDetainTrain: {
menu: {
operation: '70k',
domId: '_Tips-Train-setDetainTrain-Menu'
}
},
// 列车发车
setTrainDeparture: {
menu: {
operation: '70l',
domId: '_Tips-Train-setTrainDeparture-Menu'
}
},
// 更改列车车次
setTrainNumber: {
menu: {
operation: '70m',
domId: '_Tips-Train-setTrainNumber-Menu'
}
} }
}, },

View File

@ -490,7 +490,7 @@ const training = {
// 处理operation // 处理operation
Handler.handle(operate).then(rtn => { Handler.handle(operate).then(rtn => {
if (state.started) { if (state.started) {
// 教学和联系模式需要给出过程步骤提示 // 教学和联系模式需要给出过程步骤提示
if (TrainingMode.TEACH === state.mode || TrainingMode.PRACTICE === state.mode) { if (TrainingMode.TEACH === state.mode || TrainingMode.PRACTICE === state.mode) {
if (rtn && rtn.valid) { if (rtn && rtn.valid) {
commit('next'); commit('next');

View File

@ -34,7 +34,8 @@ export default {
{ label: this.$t('lesson.platform'), value: '06' }, { label: this.$t('lesson.platform'), value: '06' },
{ label: this.$t('lesson.train'), value: '07' }, { label: this.$t('lesson.train'), value: '07' },
{ label: this.$t('lesson.station'), value: '08' }, { label: this.$t('lesson.station'), value: '08' },
{ label: this.$t('lesson.trainWindow'), value: '09' } { label: this.$t('lesson.trainWindow'), value: '09' },
{ label: '全线限速', value: '10' }
], ],
pagerConfig: { pagerConfig: {
pageSize: 'pageSize', pageSize: 'pageSize',
@ -119,6 +120,7 @@ export default {
} }
return fieldValue; return fieldValue;
} }
return fieldValue;
}, },
queryFunction(params) { queryFunction(params) {
return getOperateStepDataList(this.dicId, params); return getOperateStepDataList(this.dicId, params);

View File

@ -167,7 +167,8 @@ export default {
this.memberIdList = []; this.memberIdList = [];
if (memberList && memberList.length) { if (memberList && memberList.length) {
memberList.forEach(member => { memberList.forEach(member => {
if (member && !(member.children) && (member.userId == '' || member.userId)) { // (!member.userId)
if (member && !(member.children)) {
this.userString += member.label + ','; this.userString += member.label + ',';
this.memberIdList.push(member.id); this.memberIdList.push(member.id);
} }

View File

@ -51,6 +51,7 @@
@switchMode="switchMode" --> @switchMode="switchMode" -->
<set-time ref="setTime" @ConfirmSelectBeginTime="start" /> <set-time ref="setTime" @ConfirmSelectBeginTime="start" />
<scene-list ref="sceneList" @selectQuest="selectQuest" />
</div> </div>
</template> </template>
@ -60,6 +61,7 @@
import SetTime from '../demon/setTime'; import SetTime from '../demon/setTime';
import DemonMenu from '../demonMenu'; import DemonMenu from '../demonMenu';
import DemonChat from '../demonChat'; import DemonChat from '../demonChat';
import SceneList from './sceneList';
import MenuSchema from '@/views/newMap/displayNew/menuSchema'; import MenuSchema from '@/views/newMap/displayNew/menuSchema';
import { getGoodsTryUse } from '@/api/management/goods'; import { getGoodsTryUse } from '@/api/management/goods';
import { ranAsPlan, exitRunPlan, clearSimulation, getSimulationInfoNew } from '@/api/simulation'; import { ranAsPlan, exitRunPlan, clearSimulation, getSimulationInfoNew } from '@/api/simulation';
@ -80,7 +82,8 @@ export default {
SetTime, SetTime,
DemonChat, DemonChat,
MenuSchema, MenuSchema,
DemonMenu DemonMenu,
SceneList
}, },
props: { props: {
offset: { offset: {
@ -436,7 +439,7 @@ export default {
} }
}, },
fieldPractice() { fieldPractice() {
this.$refs.menuSchema.viewRunQuest(); this.$refs.sceneList.doShow();
} }
} }
}; };

View File

@ -0,0 +1,149 @@
<template>
<div>
<el-dialog v-dialogDrag title="场景列表" :visible.sync="dialogVisible" width="800px" center>
<el-tabs v-model="activeName" type="card" style="height: 450px;">
<el-tab-pane label="主场景列表" name="first">
<el-table :data="mainSceneData" border :span-method="objectSpanMethod" stripe :cell-style="{padding: '8px 0'}">
<el-table-column type="index" width="50" label="序号" />
<el-table-column prop="type" width="200" label="类别" />
<el-table-column prop="scene" width="350" label="场景" />
<el-table-column label="操作">
<template slot-scope="scope">
<el-button v-if="scope.row.id" type="primary" size="small" @click="handleLoad(scope.row)">加载</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="副场景列表" name="second">
<el-table :data="deputySceneData" border stripe>
<el-table-column type="index" width="50" label="序号" />
<el-table-column prop="scene" width="550" label="场景" />
<el-table-column label="操作">
<template slot-scope="scope">
<el-button v-if="scope.row.id" type="text" size="small" @click="handleLoad(scope.row)">加载</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
</el-dialog>
</div>
</template>
<script>
import {getScriptByIdNew } from '@/api/script';
import { EventBus } from '@/scripts/event-bus';
import Cookies from 'js-cookie';
export default {
name:'ChangeMap',
data() {
return {
projectMapList:[],
dialogVisible: false,
selectMapId:'',
form: {
type: ''
},
row: '',
activeName: 'first',
memberList: [],
memberId:'',
selectMapLineCode:'',
mainSceneData: [
{type: '车辆故障', scene: '列车救援'},
{type: '信号系统故障', scene: '道岔故障', id: '11'},
{type: '信号系统故障', scene: '区域控制器故障'},
{type: '信号系统故障', scene: '联锁故障'},
{type: '供电系统故障', scene: '接触轨(网)断电'},
{type: '供电系统故障', scene: '车站照明熄灭影响乘降'},
{type: '车站机电设备故障', scene: '站台门故障'},
{type: '轨道故障', scene: '线路故障影响列车运行'}
],
deputySceneData: [
{ scene: '列车在站停车超时' },
{ scene: '列车无移动授权(站间区间或车站)' },
{ scene: '信号机故障(防护、分界点、出站等)' },
{ scene: '站台门关不上(单个或多个)' },
{ scene: '客流激增行车处置' },
{ scene: '路网协调请求(限流、换乘站通过)' }
]
};
},
mounted() {
},
methods:{
doShow(row) {
this.dialogVisible = true;
},
doClose() {
this.dialogVisible = false;
},
async handleLoad(row) {
this.row = row;
const res = await getScriptByIdNew(row.id);
this.memberId = '';
if (res.code == 200) {
EventBus.$emit('clearRunSeries');
if (res.data.memberList && res.data.memberList.length > 0) {
this.form.type = '';
this.$store.dispatch('training/setMemberList', {memberList:res.data.memberList, userId:this.$store.state.user.id});
const activeMemberList = [];
res.data.actionList.forEach((activeMember)=>{
if (!(activeMemberList.length > 0 && activeMemberList.includes(activeMember.memberId))) {
activeMemberList.push(activeMember.memberId);
}
});
const playerList = res.data.memberList.filter(member=>{
return activeMemberList.includes(member.id);
});
playerList.map(member=>{
if (!member.deviceName && member.deviceCode) {
const device = this.$store.getters['map/getDeviceByCode'](member.deviceCode);
if (device.name) {
member.deviceName = device.name;
} else {
member.deviceName = member.deviceCode;
}
}
if (member.type === 'DISPATCHER') {
this.memberId = member.id;
}
});
}
if (res.data.mapLocation) {
this.mapLocation = res.data.mapLocation;
}
}
this.confirm();
},
confirm() {
this.$emit('selectQuest', {row:this.row, id:this.memberId, mapLocation:this.mapLocation});
this.doClose();
},
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
if (rowIndex === 1 && columnIndex === 1) {
return {
rowspan: 3,
colspan: 1
};
} else if (rowIndex === 4 && columnIndex === 1) {
return {
rowspan: 2,
colspan: 1
};
} else if ((rowIndex === 2 || rowIndex === 3 || rowIndex === 5) && columnIndex === 1) {
return {
rowspan: 0,
colspan: 0
};
} else {
return {
rowspan: 1,
colspan: 1
};
}
}
}
};
</script>

View File

@ -209,7 +209,6 @@ export default {
this.textStatusHeight = textStatus.offsetHeight || 0; this.textStatusHeight = textStatus.offsetHeight || 0;
textStatus.style.top = this.offset - 15 + 'px'; textStatus.style.top = this.offset - 15 + 'px';
} }
console.log(this.offset, '*************');
}); });
}, },
// //

View File

@ -155,7 +155,7 @@ function covertOperation(deviceType, operationParamMap, operationType) {
deviceName += '【车站-' + station.name + '】/'; deviceName += '【车站-' + station.name + '】/';
} }
if (device._type == 'Section') { if (device._type == 'Section') {
if (device.parentCode) { if (device.parentCode && device.type == '02') {
const parentSection = store.getters['map/getDeviceByCode'](device.parentCode); const parentSection = store.getters['map/getDeviceByCode'](device.parentCode);
deviceName += '【' + operateEnum[deviceType].type + ' ' + parentSection.name + '-' + device.name + '】'; deviceName += '【' + operateEnum[deviceType].type + ' ' + parentSection.name + '-' + device.name + '】';
} }

View File

@ -3,6 +3,8 @@
</template> </template>
<script> <script>
import {covertOperate} from './covertOperation.js'; import {covertOperate} from './covertOperation.js';
import LangStorage from '@/utils/lang';
export default { export default {
name:'ScriptTip', name:'ScriptTip',
props: { props: {
@ -61,11 +63,22 @@ export default {
'$store.state.socket.simulationScriptTipFinish':function(val, old) { '$store.state.socket.simulationScriptTipFinish':function(val, old) {
// //
this.scriptTipMessage = ''; this.scriptTipMessage = '';
this.tipInfo({ message: LangStorage.getLang() == 'en' ? "Correct operation! That's great!" : '操作正确!真棒!', color: 'green' });
} }
}, },
methods:{ methods:{
resetScriptTip() { resetScriptTip() {
this.scriptTipMessage = ''; this.scriptTipMessage = '';
},
tipInfo(opt) {
if (opt && opt.hasOwnProperty('color') && opt.hasOwnProperty('message')) {
const h = this.$createElement;
this.$notify({
title: this.$t('global.tips'),
message: h('i', { style: 'color:' + opt.color }, opt.message)
});
}
} }
} }
}; };

View File

@ -129,7 +129,7 @@ export default {
}, },
'$store.state.training.rezoomCount': function () { '$store.state.training.rezoomCount': function () {
let code = this.$store.state.training.offsetStationCode; // let code = this.$store.state.training.offsetStationCode; //
if (code && code.includes('TurnedAround')) { // if (code && code.includes('Cycle')) { //
const cycleButtonList = this.$store.state.map.map.cycleButtonList; const cycleButtonList = this.$store.state.map.map.cycleButtonList;
if (cycleButtonList && cycleButtonList.length > 0) { if (cycleButtonList && cycleButtonList.length > 0) {
cycleButtonList.forEach(element => { cycleButtonList.forEach(element => {

View File

@ -106,7 +106,7 @@ export default {
var position = null; var position = null;
// //
const newStep = Object.assign({}, step); const newStep = Object.assign({}, step);
if (newStep.code.includes('TurnedAround')) { if (newStep.code.includes('Cycle')) {
const buttonList = this.$store.state.map.map.cycleButtonList; const buttonList = this.$store.state.map.map.cycleButtonList;
if (buttonList && buttonList.length > 0) { if (buttonList && buttonList.length > 0) {
buttonList.forEach(element => { buttonList.forEach(element => {

View File

@ -4,14 +4,14 @@
<div class="view-control-content"> <div class="view-control-content">
<config-list ref="dataform" :form="form" :form-model="editModel" :rules="rules"> <config-list ref="dataform" :form="form" :form-model="editModel" :rules="rules">
<fieldset v-if="editModel.type == 'StationTurnBack'" class="card-box"> <fieldset v-if="editModel.type == 'StationTurnBack'" class="card-box">
<legend class="card_title">站后折返数据</legend> <legend class="card_title">站后折返数据</legend>
<div> <div>
<el-table :data="editModel.optionList" border style="width: 100%"> <el-table :data="editModel.optionList" border style="width: 100%">
<el-table-column prop="id" label="编号" width="50px" /> <el-table-column prop="id" label="编号" width="50px" />
<el-table-column prop="label" label="描述" /> <el-table-column prop="label" label="描述" />
<el-table-column label="配置默认" width="100px"> <el-table-column label="配置默认" width="100px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-checkbox @click.native.prevent="checkOverlab(editModel.optionList, scope.$index)" v-model="scope.row.checked"></el-checkbox> <el-checkbox v-model="scope.row.checked" @click.native.prevent="checkOverlab(editModel.optionList, scope.$index)" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="100px"> <el-table-column label="操作" width="100px">
@ -127,8 +127,8 @@ export default {
type: '', type: '',
name: '', name: '',
show: true, // show: true, //
subtitleName: '', subtitleName: '',
initId: '', initId: '',
optionList: [], // optionList: [], //
automaticRouteCode: '', // code automaticRouteCode: '', // code
cycleCode: '', // code cycleCode: '', // code
@ -316,8 +316,8 @@ export default {
code: '', code: '',
type: '', type: '',
name: '', name: '',
show: true, // show: true, //
initId: '', initId: '',
subtitleName: '', subtitleName: '',
optionList: [], // optionList: [], //
automaticRouteCode: '', // code automaticRouteCode: '', // code
@ -387,13 +387,15 @@ export default {
this.handleTypes(selected._type); this.handleTypes(selected._type);
this.$refs.dataform && this.$refs.dataform.resetFields(); this.$refs.dataform && this.$refs.dataform.resetFields();
this.$refs.make && this.$refs.make.resetFields(); this.$refs.make && this.$refs.make.resetFields();
this.activeName = 'first'; this.activeName = 'first';
selected.optionList.forEach(item => { if (selected.optionList) {
item.checked = false; selected.optionList.forEach(item => {
if (item.id == selected.initId) { item.checked = false;
item.checked = true; if (item.id == selected.initId) {
} item.checked = true;
}); }
});
}
this.editModel = deepAssign(this.editModel, selected); this.editModel = deepAssign(this.editModel, selected);
this.editModel.type = selected._type; this.editModel.type = selected._type;
this.$nextTick(() => { this.$nextTick(() => {
@ -454,8 +456,8 @@ export default {
edit() { edit() {
this.$refs['dataform'].validate((valid) => { this.$refs['dataform'].validate((valid) => {
if (valid) { if (valid) {
const data = Object.assign({_type: this.editModel.type}, this.editModel); const data = Object.assign({_type: this.editModel.type}, this.editModel);
console.log(data, '====='); console.log(data, '=====');
this.$emit('updateMapModel', data); this.$emit('updateMapModel', data);
} }
}); });
@ -483,18 +485,18 @@ export default {
} else { } else {
this.$emit('deviceSelect', ''); this.$emit('deviceSelect', '');
} }
}, },
checkOverlab(list, index) { checkOverlab(list, index) {
list.forEach((item, i) => { list.forEach((item, i) => {
if (i != index) { if (i != index) {
item.checked = false; item.checked = false;
} }
}) });
list[index].checked = !list[index].checked; list[index].checked = !list[index].checked;
if (list[index].checked) { if (list[index].checked) {
this.editModel.initId = list[index].id; this.editModel.initId = list[index].id;
} }
}, },
deleteOverlab(list, index) { deleteOverlab(list, index) {
list.splice(index, 1); list.splice(index, 1);
this.cardMode = 'generate'; this.cardMode = 'generate';
@ -510,8 +512,8 @@ export default {
const data = { const data = {
id: this.addBackModel.id, id: this.addBackModel.id,
type: this.addBackModel.type, type: this.addBackModel.type,
label: this.addBackModel.label, label: this.addBackModel.label,
checked: false, checked: false,
sectionList: this.addBackModel.type == 'NONE' ? [] : this.addBackModel.sectionList sectionList: this.addBackModel.type == 'NONE' ? [] : this.addBackModel.sectionList
}; };
this.editModel.optionList.splice(this.addBackModel.parentIndex, 1, data); this.editModel.optionList.splice(this.addBackModel.parentIndex, 1, data);
@ -528,8 +530,8 @@ export default {
this.editModel.optionList.push({ this.editModel.optionList.push({
id: id, id: id,
type: this.addBackModel.type, type: this.addBackModel.type,
label: this.addBackModel.label, label: this.addBackModel.label,
checked: false, checked: false,
sectionList: this.addBackModel.type == 'NONE' ? [] : this.addBackModel.sectionList sectionList: this.addBackModel.type == 'NONE' ? [] : this.addBackModel.sectionList
}); });
this.$refs.hostileForm.resetFields(); this.$refs.hostileForm.resetFields();

View File

@ -136,7 +136,7 @@ export default {
{ prop: 'namePosition.x', firstLevel: 'namePosition', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px' }, { prop: 'namePosition.x', firstLevel: 'namePosition', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px' },
{ prop: 'namePosition.y', firstLevel: 'namePosition', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px' } { prop: 'namePosition.y', firstLevel: 'namePosition', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px' }
] }, ] },
{ prop: 'type', label: this.$t('map.sectionType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SectionTypeList }, // { prop: 'type', label: this.$t('map.sectionType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SectionTypeList, disabled: true }, //
{ prop: 'roadType', label: '线路类型:', type: 'select', optionLabel: 'name', optionValue: 'code', options: this.sectionRoadTypeList, clearable: true, isHidden: !this.isSwitchSectionType, deviceChange: this.roadTypeChange }, { prop: 'roadType', label: '线路类型:', type: 'select', optionLabel: 'name', optionValue: 'code', options: this.sectionRoadTypeList, clearable: true, isHidden: !this.isSwitchSectionType, deviceChange: this.roadTypeChange },
{ prop: 'leftSectionCode', label: this.$t('map.leftAssociatedSection'), type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchAndPhySicalSectionList, hover: this.hover, buttonType: 'leftSection', buttonShowType: this.isLeftSectionButtonShow, isHidden: !this.hasAssociatedSection }, // { prop: 'leftSectionCode', label: this.$t('map.leftAssociatedSection'), type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchAndPhySicalSectionList, hover: this.hover, buttonType: 'leftSection', buttonShowType: this.isLeftSectionButtonShow, isHidden: !this.hasAssociatedSection }, //
{ prop: 'rightSectionCode', label: this.$t('map.rightAssociatedSection'), type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchAndPhySicalSectionList, hover: this.hover, buttonType: 'rightSection', buttonShowType: this.isRightSectionButtonShow, isHidden: !this.hasAssociatedSection }, // { prop: 'rightSectionCode', label: this.$t('map.rightAssociatedSection'), type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchAndPhySicalSectionList, hover: this.hover, buttonType: 'rightSection', buttonShowType: this.isRightSectionButtonShow, isHidden: !this.hasAssociatedSection }, //