Merge remote-tracking branch 'remotes/origin/test'
This commit is contained in:
commit
a776dac447
@ -409,7 +409,8 @@ class SkinCode extends defaultStyle {
|
|||||||
grayColor: '#7F7F7F', // 控制模式灰色
|
grayColor: '#7F7F7F', // 控制模式灰色
|
||||||
greenColor: '#00FF00', // 控制模式绿色
|
greenColor: '#00FF00', // 控制模式绿色
|
||||||
redColor: '#FF0000', // 控制模式红色
|
redColor: '#FF0000', // 控制模式红色
|
||||||
yellowColor: '#FFFF00' // 控制模式黄色
|
yellowColor: '#FFFF00', // 控制模式黄色
|
||||||
|
purpleColor:'#840084' // 控制模式紫色
|
||||||
},
|
},
|
||||||
emergencyControl: { // 紧急站控
|
emergencyControl: { // 紧急站控
|
||||||
show: true,
|
show: true,
|
||||||
|
@ -302,7 +302,7 @@ class Jlmap {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
setUpdateMapDevice(list = []) {
|
setUpdateMapDevice(list = []) {
|
||||||
store.commit('map/updateMapDevice', list);
|
store.commit('map/updateMapDevice', list);
|
||||||
@ -314,7 +314,7 @@ class Jlmap {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
// 模式选择 -> 更新
|
// 模式选择 -> 更新
|
||||||
updateShowMode(list=[], showMode=false) {
|
updateShowMode(list = [], showMode = false) {
|
||||||
this.showConfig.showMode = showMode;
|
this.showConfig.showMode = showMode;
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
const code = elem.code;
|
const code = elem.code;
|
||||||
@ -328,7 +328,7 @@ class Jlmap {
|
|||||||
getShowConfig() {
|
getShowConfig() {
|
||||||
return this.showConfig;
|
return this.showConfig;
|
||||||
}
|
}
|
||||||
updateShowStation(list=[], stationCode=false) {
|
updateShowStation(list = [], stationCode = false) {
|
||||||
this.stationCode = stationCode;
|
this.stationCode = stationCode;
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
const code = elem.code;
|
const code = elem.code;
|
||||||
@ -348,7 +348,11 @@ class Jlmap {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.$painter.$transformHandle.revisibleAll();
|
this.$painter.$transformHandle.revisibleAll();
|
||||||
this.$painter.$transformHandle.setStationFlag(stationCode);
|
if (stationCode) {
|
||||||
|
this.$painter.$transformHandle.setFoldLines(store.state.map.foldLineMap[stationCode]);
|
||||||
|
} else {
|
||||||
|
this.$painter.$transformHandle.setFoldLines([]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
showStationHandlePsd(oDevice, stationCode) {
|
showStationHandlePsd(oDevice, stationCode) {
|
||||||
const standDevice = this.mapDevice[oDevice.standCode];
|
const standDevice = this.mapDevice[oDevice.standCode];
|
||||||
@ -393,16 +397,16 @@ class Jlmap {
|
|||||||
this.$painter.updateShowMode(oDevice);
|
this.$painter.updateShowMode(oDevice);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
update(list=[]) {
|
update(list = []) {
|
||||||
this.setUpdateMapDevice(list); // 增加一个 前数据 处理 为了在区段中 获取全部的 道岔信息
|
this.setUpdateMapDevice(list); // 增加一个 前数据 处理 为了在区段中 获取全部的 道岔信息
|
||||||
const codeList = [];
|
const codeList = [];
|
||||||
const controlTransferList = [];
|
const controlTransferList = [];
|
||||||
const signalDeviceList = [];
|
const signalDeviceList = [];
|
||||||
const selected = store.state.menuOperation.selected;
|
const selected = store.state.menuOperation.selected;
|
||||||
|
|
||||||
list.forEach((elem, index) => {
|
list.forEach((elem, index) => {
|
||||||
const code = elem.code;
|
const code = elem.code;
|
||||||
const type = elem._type;
|
const type = elem._type;
|
||||||
|
|
||||||
if (elem.deviceType === 'ROUTE' && this.logicData.routeData) { // 处理进路数据状态
|
if (elem.deviceType === 'ROUTE' && this.logicData.routeData) { // 处理进路数据状态
|
||||||
store.dispatch('map/updateRouteState', elem);
|
store.dispatch('map/updateRouteState', elem);
|
||||||
@ -458,7 +462,7 @@ class Jlmap {
|
|||||||
}
|
}
|
||||||
store.commit('map/mapStationStateUpdate');
|
store.commit('map/mapStationStateUpdate');
|
||||||
} else {
|
} else {
|
||||||
if (elem.deviceType === 'TRAIN') {
|
if (elem.deviceType === 'TRAIN') {
|
||||||
this.isUpdateShowTrainList = true;
|
this.isUpdateShowTrainList = true;
|
||||||
store.commit('map/updateActiveTrainList', elem);
|
store.commit('map/updateActiveTrainList', elem);
|
||||||
} else if (elem.deviceType === 'STAND') {
|
} else if (elem.deviceType === 'STAND') {
|
||||||
@ -469,34 +473,34 @@ class Jlmap {
|
|||||||
this.$painter.update(psdDevice);
|
this.$painter.update(psdDevice);
|
||||||
}
|
}
|
||||||
} else if (elem.deviceType == 'SWITCH') {
|
} else if (elem.deviceType == 'SWITCH') {
|
||||||
const oDevice = this.mapDevice[code]
|
const oDevice = this.mapDevice[code];
|
||||||
if (oDevice) {
|
if (oDevice) {
|
||||||
const sectionA = this.mapDevice[oDevice.sectionACode];
|
const sectionA = this.mapDevice[oDevice.sectionACode];
|
||||||
const sectionB = this.mapDevice[oDevice.sectionBCode];
|
const sectionB = this.mapDevice[oDevice.sectionBCode];
|
||||||
const sectionC = this.mapDevice[oDevice.sectionCCode];
|
const sectionC = this.mapDevice[oDevice.sectionCCode];
|
||||||
if (sectionA && sectionB && sectionC) {
|
if (sectionA && sectionB && sectionC) {
|
||||||
oDevice['cutOff'] = sectionA.cutOff;
|
oDevice['cutOff'] = sectionA.cutOff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.$painter.update(oDevice);
|
this.$painter.update(oDevice);
|
||||||
} else if (elem.deviceType == 'SECTION') {
|
} else if (elem.deviceType == 'SECTION') {
|
||||||
const oDevice = this.mapDevice[code]
|
const oDevice = this.mapDevice[code];
|
||||||
if (oDevice) {
|
if (oDevice) {
|
||||||
const sDevice = this.mapDevice[oDevice.relSwitchCode];
|
const sDevice = this.mapDevice[oDevice.relSwitchCode];
|
||||||
if (sDevice) {
|
if (sDevice) {
|
||||||
const sectionA = this.mapDevice[sDevice.sectionACode];
|
const sectionA = this.mapDevice[sDevice.sectionACode];
|
||||||
const sectionB = this.mapDevice[sDevice.sectionBCode];
|
const sectionB = this.mapDevice[sDevice.sectionBCode];
|
||||||
const sectionC = this.mapDevice[sDevice.sectionCCode];
|
const sectionC = this.mapDevice[sDevice.sectionCCode];
|
||||||
if (sectionA && sectionB && sectionC) {
|
if (sectionA && sectionB && sectionC) {
|
||||||
sDevice['cutOff'] = sectionA.cutOff;
|
sDevice['cutOff'] = sectionA.cutOff;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.$painter.update(sDevice);
|
this.$painter.update(sDevice);
|
||||||
codeList.push(sDevice.code);
|
codeList.push(sDevice.code);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (elem.deviceType === 'DIRECTION_ROD' && elem.uniqueCode) {
|
} else if (elem.deviceType === 'DIRECTION_ROD' && elem.uniqueCode) {
|
||||||
store.state.map.map.directionRodList.forEach(item => {
|
store.state.map.map.directionRodList.forEach(item => {
|
||||||
if (elem.uniqueCode === item.uniqueCode) {
|
if (elem.uniqueCode === item.uniqueCode) {
|
||||||
const updateRod = this.mapDevice[item.code];
|
const updateRod = this.mapDevice[item.code];
|
||||||
@ -504,17 +508,17 @@ class Jlmap {
|
|||||||
this.$painter.update(updateRod);
|
this.$painter.update(updateRod);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
const oDevice = this.mapDevice[code] || deviceFactory(type, elem, this.showConfig);
|
const oDevice = this.mapDevice[code] || deviceFactory(type, elem, this.showConfig);
|
||||||
if (elem.dispose) {
|
if (elem.dispose) {
|
||||||
this.$painter.delete(oDevice);
|
this.$painter.delete(oDevice);
|
||||||
} else {
|
} else {
|
||||||
this.$painter.update(oDevice);
|
this.$painter.update(oDevice);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
codeList.push(code);
|
codeList.push(code);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (controlTransferList.length > 0) {
|
if (controlTransferList.length > 0) {
|
||||||
@ -524,11 +528,11 @@ class Jlmap {
|
|||||||
if (this.isUpdateShowTrainList) {
|
if (this.isUpdateShowTrainList) {
|
||||||
store.dispatch('map/setActiveTrainList');
|
store.dispatch('map/setActiveTrainList');
|
||||||
this.isUpdateShowTrainList = false;
|
this.isUpdateShowTrainList = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (selected && codeList.includes(selected.code)) {
|
if (selected && codeList.includes(selected.code)) {
|
||||||
store.commit('menuOperation/setSelected', {device: {...selected}});
|
store.commit('menuOperation/setSelected', {device: {...selected}});
|
||||||
}
|
}
|
||||||
|
|
||||||
this.handleRouteSignalStatus(signalDeviceList);
|
this.handleRouteSignalStatus(signalDeviceList);
|
||||||
|
|
||||||
|
@ -62,4 +62,8 @@ export default class Arrow extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
const rect = this.arrow.getBoundingRect();
|
||||||
|
return { x:rect.x, y:rect.y };
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -207,4 +207,7 @@ export default class AutoTurnBack extends Group {
|
|||||||
screenShow() {
|
screenShow() {
|
||||||
this.hideMode();
|
this.hideMode();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -156,4 +156,7 @@ export default class AutomacticRoute extends Group {
|
|||||||
this.text && this.text.hide();
|
this.text && this.text.hide();
|
||||||
this.subtitleText && this.subtitleText.hide();
|
this.subtitleText && this.subtitleText.hide();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -151,4 +151,7 @@ export default class AxleReset extends Group {
|
|||||||
this.text && this.text.hide();
|
this.text && this.text.hide();
|
||||||
this.subtitleText && this.subtitleText.hide();
|
this.subtitleText && this.subtitleText.hide();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,95 +0,0 @@
|
|||||||
import Group from 'zrender/src/container/Group';
|
|
||||||
import Polyline from 'zrender/src/graphic/shape/Polyline';
|
|
||||||
|
|
||||||
export default class Cross extends Group {
|
|
||||||
// _type: 'Cross',
|
|
||||||
// code: getUID('Cross', this.crossList),
|
|
||||||
// position:each.position,
|
|
||||||
// relatedSwitch:each.relatedSwitch
|
|
||||||
constructor(model, style) {
|
|
||||||
super();
|
|
||||||
this._code = model.code;
|
|
||||||
this._type = model._type;
|
|
||||||
this.zlevel = model.zlevel;
|
|
||||||
this.z = 0;
|
|
||||||
this.model = model;
|
|
||||||
this.style = style;
|
|
||||||
this.isShowShape = true;
|
|
||||||
this.create();
|
|
||||||
this.setState(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
create() {
|
|
||||||
const model = this.model;
|
|
||||||
// position;
|
|
||||||
// relatedSwitch;
|
|
||||||
// model.position.x,
|
|
||||||
// model.position.y,
|
|
||||||
// const relatedSwitchList = model.relatedSwitch;
|
|
||||||
const offset = this.style.Section.line.width / (2 * 0.7071);
|
|
||||||
const points = [
|
|
||||||
[model.position.x, model.position.y + offset],
|
|
||||||
[model.position.x + offset, model.position.y + offset],
|
|
||||||
[model.position.x, model.position.y + 2 * offset],
|
|
||||||
[model.position.x - offset, model.position.y + offset],
|
|
||||||
[model.position.x, model.position.y + offset]
|
|
||||||
];
|
|
||||||
this.centerSquare = new Polyline({
|
|
||||||
zlevel: this.zlevel,
|
|
||||||
z:this.z + 1,
|
|
||||||
shape: {
|
|
||||||
points:points
|
|
||||||
},
|
|
||||||
style: {
|
|
||||||
stroke: this.style.Cross.centerSquare.defaultColor,
|
|
||||||
fill:this.style.Cross.centerSquare.defaultColor
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.add(this.centerSquare);
|
|
||||||
// let relatedSwitchList[0].sectionCCode
|
|
||||||
// if (model && model.points.length > 1) {
|
|
||||||
// const points = [];
|
|
||||||
// const modelPoints = model.points;
|
|
||||||
// const length = modelPoints.length;
|
|
||||||
// for (let i = 0; i < length; i++) {
|
|
||||||
// points.push([modelPoints[i].x, modelPoints[i].y]);
|
|
||||||
// }
|
|
||||||
// this.segment = new Polyline({
|
|
||||||
// zlevel: this.zlevel,
|
|
||||||
// z:this.z,
|
|
||||||
// shape: {
|
|
||||||
// points:points
|
|
||||||
// },
|
|
||||||
// style: {
|
|
||||||
// lineWidth: model.width,
|
|
||||||
// stroke: model.lineColor || this.style.lineColor
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
// this.add(this.segment);
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
|
|
||||||
setLineType(type) {
|
|
||||||
switch (type) {
|
|
||||||
case '01': break;
|
|
||||||
case '02':
|
|
||||||
this.segment && this.segment.setStyle('lineDash', this.style.lineDash || [4]);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
setState(model) {
|
|
||||||
if (!this.isShowShape) return;
|
|
||||||
this.setLineType(model.type);
|
|
||||||
}
|
|
||||||
setShowStation(stationCode) {
|
|
||||||
if (!stationCode || this.model.stationCode === stationCode) {
|
|
||||||
this.segment && this.segment.show();
|
|
||||||
this.isShowShape = true;
|
|
||||||
this.setState(this.model);
|
|
||||||
} else {
|
|
||||||
this.segment && this.segment.hide();
|
|
||||||
this.isShowShape = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -114,4 +114,8 @@ export default class DirectionRod extends Group {
|
|||||||
this.rod && this.rod.hide();
|
this.rod && this.rod.hide();
|
||||||
this.tipText && this.tipText.hide();
|
this.tipText && this.tipText.hide();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
const rect = this.rod.getBoundingRect();
|
||||||
|
return {x: rect.x, y: rect.y};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -76,4 +76,7 @@ export default class FloodGate extends Group {
|
|||||||
hideMode() {
|
hideMode() {
|
||||||
this.floodGate && this.floodGate.hide();
|
this.floodGate && this.floodGate.hide();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -156,4 +156,7 @@ export default class GuideLock extends Group {
|
|||||||
this.text && this.text.hide();
|
this.text && this.text.hide();
|
||||||
this.subtitleText && this.subtitleText.hide();
|
this.subtitleText && this.subtitleText.hide();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -88,4 +88,7 @@ export default class LcControl extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -93,4 +93,7 @@ export default class LimitControl extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,23 +20,58 @@ export default class Line2 extends Group {
|
|||||||
const model = this.model;
|
const model = this.model;
|
||||||
if (model && model.points.length > 1) {
|
if (model && model.points.length > 1) {
|
||||||
const points = [];
|
const points = [];
|
||||||
|
const vicePoints = [];
|
||||||
const modelPoints = model.points;
|
const modelPoints = model.points;
|
||||||
const length = modelPoints.length;
|
const length = modelPoints.length;
|
||||||
for (let i = 0; i < length; i++) {
|
const path = window.location.href;
|
||||||
points.push([modelPoints[i].x, modelPoints[i].y]);
|
if (model.type === '03' && !path.includes('/map/draw')) {
|
||||||
}
|
for (let i = 0; i < length; i++) {
|
||||||
this.segment = new Polyline({
|
points.push([modelPoints[i].x + 10, modelPoints[i].y]);
|
||||||
zlevel: this.zlevel,
|
|
||||||
z:this.z,
|
|
||||||
shape: {
|
|
||||||
points:points
|
|
||||||
},
|
|
||||||
style: {
|
|
||||||
lineWidth: model.width,
|
|
||||||
stroke: model.lineColor || this.style.lineColor
|
|
||||||
}
|
}
|
||||||
});
|
this.segment = new Polyline({
|
||||||
this.add(this.segment);
|
zlevel: this.zlevel,
|
||||||
|
z:this.z,
|
||||||
|
shape: {
|
||||||
|
points:points
|
||||||
|
},
|
||||||
|
style: {
|
||||||
|
lineWidth: model.width,
|
||||||
|
stroke: model.lineColor || this.style.lineColor
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.add(this.segment);
|
||||||
|
for (let i = 0; i < length; i++) {
|
||||||
|
vicePoints.push([modelPoints[i].x - model.offsetX, modelPoints[i].y + model.offsetY]);
|
||||||
|
}
|
||||||
|
this.viceSegment = new Polyline({
|
||||||
|
zlevel: this.zlevel,
|
||||||
|
z:this.z,
|
||||||
|
shape: {
|
||||||
|
points:vicePoints
|
||||||
|
},
|
||||||
|
style: {
|
||||||
|
lineWidth: model.width,
|
||||||
|
stroke: model.lineColor || this.style.lineColor
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.add(this.viceSegment);
|
||||||
|
} else {
|
||||||
|
for (let i = 0; i < length; i++) {
|
||||||
|
points.push([modelPoints[i].x, modelPoints[i].y]);
|
||||||
|
}
|
||||||
|
this.segment = new Polyline({
|
||||||
|
zlevel: this.zlevel,
|
||||||
|
z:this.z,
|
||||||
|
shape: {
|
||||||
|
points:points
|
||||||
|
},
|
||||||
|
style: {
|
||||||
|
lineWidth: model.width,
|
||||||
|
stroke: model.lineColor || this.style.lineColor
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.add(this.segment);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -46,6 +81,10 @@ export default class Line2 extends Group {
|
|||||||
case '02':
|
case '02':
|
||||||
this.segment && this.segment.setStyle('lineDash', this.style.lineDash || [4]);
|
this.segment && this.segment.setStyle('lineDash', this.style.lineDash || [4]);
|
||||||
break;
|
break;
|
||||||
|
case '03':
|
||||||
|
this.segment && this.segment.setStyle('lineDash', this.style.lineDash || [4]);
|
||||||
|
this.viceSegment && this.viceSegment.setStyle('lineDash', this.style.lineDash || [4]);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -59,18 +98,30 @@ export default class Line2 extends Group {
|
|||||||
const showConditions = this.model.showConditions;
|
const showConditions = this.model.showConditions;
|
||||||
if (!showConditions || showConditions === '01' || showMode === showConditions) {
|
if (!showConditions || showConditions === '01' || showMode === showConditions) {
|
||||||
this.segment && this.segment.show();
|
this.segment && this.segment.show();
|
||||||
|
this.viceSegment && this.viceSegment.show();
|
||||||
} else {
|
} else {
|
||||||
this.segment && this.segment.hide();
|
this.segment && this.segment.hide();
|
||||||
|
this.viceSegment && this.viceSegment.hide();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setShowStation(stationCode) {
|
setShowStation(stationCode) {
|
||||||
if (!stationCode || this.model.stationCode === stationCode) {
|
if (!stationCode || this.model.stationCode === stationCode) {
|
||||||
this.segment && this.segment.show();
|
this.segment && this.segment.show();
|
||||||
|
this.viceSegment && this.viceSegment.show();
|
||||||
this.isShowShape = true;
|
this.isShowShape = true;
|
||||||
this.setState(this.model);
|
this.setState(this.model);
|
||||||
} else {
|
} else {
|
||||||
this.segment && this.segment.hide();
|
this.segment && this.segment.hide();
|
||||||
|
this.viceSegment && this.viceSegment.hide();
|
||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
if (this.segment) {
|
||||||
|
const rect = this.segment.getBoundingRect();
|
||||||
|
return {x:rect.x, y:rect.y};
|
||||||
|
} else {
|
||||||
|
return {x:0, y:0};
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -69,4 +69,10 @@ export default class OutFrame extends Group {
|
|||||||
screenShow() {
|
screenShow() {
|
||||||
this.box && this.box.hide();
|
this.box && this.box.hide();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return {
|
||||||
|
x: this.model.position.x - this.model.width / 2,
|
||||||
|
y: this.model.position.y - this.model.height / 2
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -78,4 +78,8 @@ export default class OverAp extends Group {
|
|||||||
screenShow() {
|
screenShow() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
const rect = this.getBoundingRect();
|
||||||
|
return {x: rect.x, y: rect.y};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -153,4 +153,8 @@ export default class Line2 extends Group {
|
|||||||
child.hide();
|
child.hide();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
const rect = this.getBoundingRect();
|
||||||
|
return {x: rect.x, y: rect.y};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -82,4 +82,7 @@ export default class Line2 extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -79,4 +79,7 @@ export default class Resource extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -31,6 +31,7 @@ export default class Responder extends Group {
|
|||||||
this.model = model;
|
this.model = model;
|
||||||
this.style = style;
|
this.style = style;
|
||||||
this.isShowShape = true;
|
this.isShowShape = true;
|
||||||
|
this.anchorPoint = {x: 0, y: 0};
|
||||||
this.z = model.z || 19;
|
this.z = model.z || 19;
|
||||||
if (model.previewOrMapDraw) {
|
if (model.previewOrMapDraw) {
|
||||||
this.create();
|
this.create();
|
||||||
@ -40,19 +41,20 @@ export default class Responder extends Group {
|
|||||||
|
|
||||||
create() {
|
create() {
|
||||||
const model = this.model;
|
const model = this.model;
|
||||||
const responderStyle = this.style.Responder || defaultStyle;
|
const responderStyle = this.style.Responder || defaultStyle;
|
||||||
const radian = -Math.PI / 180 * Number(model.rotate-90);
|
const radian = -Math.PI / 180 * Number(model.rotate - 90);
|
||||||
const distanceX = -responderStyle.distance * Math.cos(radian);
|
const distanceX = -responderStyle.distance * Math.cos(radian);
|
||||||
const distanceY = -responderStyle.distance * Math.sin(radian);
|
const distanceY = -responderStyle.distance * Math.sin(radian);
|
||||||
const blockWidth = responderStyle.block.width || 5;
|
const blockWidth = responderStyle.block.width || 5;
|
||||||
const blockHeight = responderStyle.block.height || 12;
|
const blockHeight = responderStyle.block.height || 12;
|
||||||
const blockStyle = responderStyle.block.mapStyle[model.type] || { fill: '#fff'};
|
const blockStyle = responderStyle.block.mapStyle[model.type] || { fill: '#fff'};
|
||||||
const blockX = model.position.x - blockWidth / 2 - distanceX;
|
const blockX = model.position.x - blockWidth / 2 - distanceX;
|
||||||
const blockY = model.position.y - blockHeight / 2 - distanceY;
|
const blockY = model.position.y - blockHeight / 2 - distanceY;
|
||||||
const textRadian = -Math.PI / 180 * Number(180-model.textRotate);
|
this.anchorPoint = {x:blockX, y:blockY};
|
||||||
const textDistanceX = model.textOffset.y * Math.sin(textRadian) + model.textOffset.x * Math.cos(textRadian);
|
const textRadian = -Math.PI / 180 * Number(180 - model.textRotate);
|
||||||
const textDistanceY = model.textOffset.y * Math.cos(textRadian) - model.textOffset.x * Math.sin(textRadian);
|
const textDistanceX = model.textOffset.y * Math.sin(textRadian) + model.textOffset.x * Math.cos(textRadian);
|
||||||
const textX = blockX + textDistanceX + blockWidth;
|
const textDistanceY = model.textOffset.y * Math.cos(textRadian) - model.textOffset.x * Math.sin(textRadian);
|
||||||
|
const textX = blockX + textDistanceX + blockWidth;
|
||||||
const textY = blockY + textDistanceY;
|
const textY = blockY + textDistanceY;
|
||||||
const textName = `${model.type}-${model.name}`;
|
const textName = `${model.type}-${model.name}`;
|
||||||
const textFill = responderStyle.text.textFill;
|
const textFill = responderStyle.text.textFill;
|
||||||
@ -106,27 +108,27 @@ export default class Responder extends Group {
|
|||||||
|
|
||||||
this.text = this.name = new Text({
|
this.text = this.name = new Text({
|
||||||
zlevel: this.zlevel,
|
zlevel: this.zlevel,
|
||||||
z: this.z + 1,
|
z: this.z + 1,
|
||||||
style: {
|
style: {
|
||||||
x: textX,
|
x: textX,
|
||||||
y: textY,
|
y: textY,
|
||||||
text: textName,
|
text: textName,
|
||||||
fontFamily: this.style.fontFamily,
|
fontFamily: this.style.fontFamily,
|
||||||
fontSize: this.style.fontSize,
|
fontSize: this.style.fontSize,
|
||||||
textFill: textFill,
|
textFill: textFill,
|
||||||
textAlign: 'left'
|
textAlign: 'left'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
if (model.rotate) {
|
if (model.rotate) {
|
||||||
const rotation = -Math.PI / 180 * Number(model.rotate+180);
|
const rotation = -Math.PI / 180 * Number(model.rotate + 180);
|
||||||
[this.block, this.delta1, this.delta2].forEach(el => {
|
[this.block, this.delta1, this.delta2].forEach(el => {
|
||||||
this.transformRotation(el, origin, rotation);
|
this.transformRotation(el, origin, rotation);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (model.textRotate) {
|
if (model.textRotate) {
|
||||||
const rotation = -Math.PI / 180 * Number(model.textRotate+180);
|
const rotation = -Math.PI / 180 * Number(model.textRotate + 180);
|
||||||
this.transformRotation(this.text, origin, rotation);
|
this.transformRotation(this.text, origin, rotation);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -174,4 +176,7 @@ export default class Responder extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.anchorPoint;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -229,6 +229,8 @@ export default class SaidLamp extends Group {
|
|||||||
.when(2000, { fill: this.style.backgroundColor })
|
.when(2000, { fill: this.style.backgroundColor })
|
||||||
.start();
|
.start();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -154,9 +154,9 @@ export default class Section extends Group {
|
|||||||
|
|
||||||
/** 非通信车占用状态 03*/
|
/** 非通信车占用状态 03*/
|
||||||
unCommunicationOccupied() {
|
unCommunicationOccupied() {
|
||||||
if (this.style.Section.preAxleIgnoreFault && this.model.preReset) {
|
if (this.style.Section.preAxleIgnoreFault && this.model.preReset) {
|
||||||
return ;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.line) {
|
if (this.line) {
|
||||||
this.line.setStyle({
|
this.line.setStyle({
|
||||||
@ -174,9 +174,9 @@ export default class Section extends Group {
|
|||||||
}
|
}
|
||||||
/** ARB故障 */
|
/** ARB故障 */
|
||||||
invalid() {
|
invalid() {
|
||||||
if (this.style.Section.preAxleIgnoreFault && this.model.preReset) {
|
if (this.style.Section.preAxleIgnoreFault && this.model.preReset) {
|
||||||
return ;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.line && this.line.setStyle({
|
this.line && this.line.setStyle({
|
||||||
stroke: this.style.Section.line.invalidColor,
|
stroke: this.style.Section.line.invalidColor,
|
||||||
@ -300,7 +300,7 @@ export default class Section extends Group {
|
|||||||
if (this.style.Section.sectionMiddle && this.style.Section.sectionMiddle.preResetColor && !blockade) { // 南京二号线
|
if (this.style.Section.sectionMiddle && this.style.Section.sectionMiddle.preResetColor && !blockade) { // 南京二号线
|
||||||
this.sectionMiddle.setStyle({stroke: this.style.Section.sectionMiddle.preResetColor});
|
this.sectionMiddle.setStyle({stroke: this.style.Section.sectionMiddle.preResetColor});
|
||||||
this.sectionMiddle.show();
|
this.sectionMiddle.show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 延时解锁
|
// 延时解锁
|
||||||
delayUnlock() {
|
delayUnlock() {
|
||||||
@ -364,13 +364,13 @@ export default class Section extends Group {
|
|||||||
setState(model, flag = false) {
|
setState(model, flag = false) {
|
||||||
if (!this.isShowShape) return;
|
if (!this.isShowShape) return;
|
||||||
this.recover();
|
this.recover();
|
||||||
this.handleSwitchSection(model, flag);
|
this.handleSwitchSection(model, flag);
|
||||||
// 顺序代表优先级
|
// 顺序代表优先级
|
||||||
/** 道岔保护区段锁闭 */
|
/** 道岔保护区段锁闭 */
|
||||||
model.overlapLock && this.protectiveLock(model.lockRight);
|
model.overlapLock && this.protectiveLock(model.lockRight);
|
||||||
/** 空闲锁闭或者叫进路锁闭 */
|
/** 空闲锁闭或者叫进路锁闭 */
|
||||||
model.routeLock && this.routeLock(model.lockRight);
|
model.routeLock && this.routeLock(model.lockRight);
|
||||||
/** 计轴故障 */
|
/** 计轴故障 */
|
||||||
model.invalid && this.invalid();
|
model.invalid && this.invalid();
|
||||||
/** 轨道封锁 */
|
/** 轨道封锁 */
|
||||||
model.blockade && this.block(model.routeLock);
|
model.blockade && this.block(model.routeLock);
|
||||||
@ -519,4 +519,11 @@ export default class Section extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
const rect = this.getBoundingRect();
|
||||||
|
return {
|
||||||
|
x:rect.x,
|
||||||
|
y:rect.y
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -954,6 +954,12 @@ class Signal extends Group {
|
|||||||
setLowButtonRecover() {
|
setLowButtonRecover() {
|
||||||
this.lowButton && this.lowButton.setLowButtonRecover();
|
this.lowButton && this.lowButton.setLowButtonRecover();
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return {
|
||||||
|
x:this.model.position.x + this.model.positionPoint.x,
|
||||||
|
y:this.model.position.y + this.model.positionPoint.y
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default Signal;
|
export default Signal;
|
||||||
|
@ -152,4 +152,7 @@ export default class SplitStation extends Group {
|
|||||||
child.hide();
|
child.hide();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -402,6 +402,17 @@ export default class Station extends Group {
|
|||||||
this.stationText.setColor('#fff');
|
this.stationText.setColor('#fff');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
handleInterlock() { // 联锁控 成都三号线
|
||||||
|
this.emergencyControl && this.emergencyControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.emergencyControl && this.emergencyControl.setTextColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.substationControl && this.substationControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.substationControl && this.substationControl.setTextColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.centerControl && this.centerControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.centerControl && this.centerControl.setTextColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.interconnectedControl && this.interconnectedControl.setColor(this.style.Station.StationControl.lamp.purpleColor);
|
||||||
|
this.interconnectedControl && this.interconnectedControl.setTextColor(this.style.Station.StationControl.lamp.purpleColor);
|
||||||
|
}
|
||||||
|
|
||||||
handleNone() { // 空
|
handleNone() { // 空
|
||||||
if (this.style.Station.stationText.noneModeColor) {
|
if (this.style.Station.stationText.noneModeColor) {
|
||||||
this.stationText.setColor(this.style.Station.stationText.noneModeColor);
|
this.stationText.setColor(this.style.Station.stationText.noneModeColor);
|
||||||
@ -418,6 +429,8 @@ export default class Station extends Group {
|
|||||||
this.substationControl && this.substationControl.setTextColor(this.style.Station.StationControl.text.fontColor);
|
this.substationControl && this.substationControl.setTextColor(this.style.Station.StationControl.text.fontColor);
|
||||||
this.centerControl && this.centerControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
this.centerControl && this.centerControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
this.centerControl && this.centerControl.setTextColor(this.style.Station.StationControl.text.fontColor);
|
this.centerControl && this.centerControl.setTextColor(this.style.Station.StationControl.text.fontColor);
|
||||||
|
this.interconnectedControl && this.interconnectedControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
|
this.interconnectedControl && this.interconnectedControl.setTextColor(this.style.Station.StationControl.text.fontColor);
|
||||||
|
|
||||||
this.substationArrowsControl && this.substationArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
this.substationArrowsControl && this.substationArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
this.emergencyArrowsControl && this.emergencyArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
this.emergencyArrowsControl && this.emergencyArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor);
|
||||||
@ -460,27 +473,27 @@ export default class Station extends Group {
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
getShapeTipPoint(opts) {
|
getShapeTipPoint(opts) {
|
||||||
let rect;
|
let rect;
|
||||||
switch(opts.subDeviceType) {
|
switch (opts.subDeviceType) {
|
||||||
case 'button':
|
case 'button':
|
||||||
rect = this.centerControlButton.getArcBoundingRect();
|
rect = this.centerControlButton.getArcBoundingRect();
|
||||||
break;
|
break;
|
||||||
case 'center':
|
case 'center':
|
||||||
rect = this.centerControl.getArcBoundingRect();
|
rect = this.centerControl.getArcBoundingRect();
|
||||||
break;
|
break;
|
||||||
case 'substation':
|
case 'substation':
|
||||||
rect = this.substationControl.getArcBoundingRect();
|
rect = this.substationControl.getArcBoundingRect();
|
||||||
break;
|
break;
|
||||||
case 'emergency':
|
case 'emergency':
|
||||||
rect = this.emergencyControl.getArcBoundingRect()
|
rect = this.emergencyControl.getArcBoundingRect();
|
||||||
break;
|
break;
|
||||||
case 'interconnected':
|
case 'interconnected':
|
||||||
rect = this.interconnectedControl.getArcBoundingRect()
|
rect = this.interconnectedControl.getArcBoundingRect();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
rect = this.stationText.getBoundingRect();
|
rect = this.stationText.getBoundingRect();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
x: rect.x + rect.width,
|
x: rect.x + rect.width,
|
||||||
@ -542,4 +555,7 @@ export default class Station extends Group {
|
|||||||
this.eachChild(elem => { elem.hide(); });
|
this.eachChild(elem => { elem.hide(); });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -103,5 +103,8 @@ export default class StationCounter extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,4 +121,7 @@ export default class StationDelayUnlock extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -184,12 +184,12 @@ class StationStand extends Group {
|
|||||||
}
|
}
|
||||||
case 'trainSetButton': {
|
case 'trainSetButton': {
|
||||||
rect = this.trainSetButton.getBoundingRect();
|
rect = this.trainSetButton.getBoundingRect();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 'StationPlatform': {
|
case 'StationPlatform': {
|
||||||
rect = this.stationPlatform.getBoundingRect();
|
rect = this.stationPlatform.getBoundingRect();
|
||||||
break
|
break;
|
||||||
}
|
}
|
||||||
default: {
|
default: {
|
||||||
rect = this.getBoundingRect();
|
rect = this.getBoundingRect();
|
||||||
break;
|
break;
|
||||||
@ -238,5 +238,8 @@ class StationStand extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
export default StationStand;
|
export default StationStand;
|
||||||
|
@ -185,4 +185,7 @@ export default class StationTurnBack extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -745,4 +745,7 @@ export default class Switch extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.intersection;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -89,4 +89,7 @@ export default class Text2 extends Group {
|
|||||||
this.text && this.text.show();
|
this.text && this.text.show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -454,4 +454,7 @@ export default class Train extends Group {
|
|||||||
// // this.text && this.text.hide();
|
// // this.text && this.text.hide();
|
||||||
// this.setState(this.model);
|
// this.setState(this.model);
|
||||||
// }
|
// }
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.point;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -98,6 +98,9 @@ class TrainWindow extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.point || this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default TrainWindow;
|
export default TrainWindow;
|
||||||
|
@ -112,4 +112,7 @@ export default class ZcControl extends Group {
|
|||||||
this.isShowShape = false;
|
this.isShowShape = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getAnchorPoint() {
|
||||||
|
return this.model.position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -217,7 +217,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
this.buttonDown(this.Command.cancel.clearMbm.operation);
|
this.resetMbmButton();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
passWordCommit(data) {
|
passWordCommit(data) {
|
||||||
@ -325,6 +325,11 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
resetMbmButton() {
|
||||||
|
this.commandTypeList = [];
|
||||||
|
this.$store.dispatch('menuOperation/setButtonOperation', null);
|
||||||
|
Handler.clear(); // 清空操作组
|
||||||
|
},
|
||||||
// 排列进路 OR 信号重开操作
|
// 排列进路 OR 信号重开操作
|
||||||
arrangementRouteOperation(deviceList) {
|
arrangementRouteOperation(deviceList) {
|
||||||
const operate = {
|
const operate = {
|
||||||
@ -384,7 +389,6 @@ export default {
|
|||||||
},
|
},
|
||||||
//
|
//
|
||||||
handelFunctionButton(model, subType) {
|
handelFunctionButton(model, subType) {
|
||||||
// debugger;
|
|
||||||
const operate = {
|
const operate = {
|
||||||
over: true,
|
over: true,
|
||||||
operation: this.$store.state.menuOperation.buttonOperation,
|
operation: this.$store.state.menuOperation.buttonOperation,
|
||||||
@ -428,17 +432,26 @@ export default {
|
|||||||
operate.param = {stationCodes: [model.code]};
|
operate.param = {stationCodes: [model.code]};
|
||||||
operate.code = model.code;
|
operate.code = model.code;
|
||||||
break;
|
break;
|
||||||
|
case 'interconnected':
|
||||||
|
// operate.cmdType = CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL;
|
||||||
|
delete operate.over;
|
||||||
|
operate.subType = 'interconnected';
|
||||||
|
operate.param = {stationCodes: [model.code]};
|
||||||
|
operate.code = model.code;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {
|
this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => {
|
||||||
// 判断是否需要 弹窗密码框
|
// 判断是否需要 弹窗密码框
|
||||||
// const operate = Object.assign({}, operate);
|
// const operate = Object.assign({}, operate);
|
||||||
if (subType == 'center' || subType == 'emergency') {
|
if (subType == 'center ' || subType == 'emergency' || subType == 'interconnected' ) {
|
||||||
operate['operateNext'] = operate.operation = this.Command.close.password.operation;
|
operate['operateNext'] = operate.operation = this.Command.close.password.operation;
|
||||||
if (subType == 'center') {
|
if (subType == 'center') {
|
||||||
operate['nextCmdType'] = CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL;
|
operate['nextCmdType'] = CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL;
|
||||||
} else {
|
} else if (subType == 'emergency') {
|
||||||
operate['nextCmdType'] = CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL;
|
operate['nextCmdType'] = CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL;
|
||||||
|
} else {
|
||||||
|
operate['nextCmdType'] = CMD.ControlConvertMenu.CMD_CM_INTERLOCK_CONTROL;
|
||||||
}
|
}
|
||||||
this.$refs.password.doShow(operate);
|
this.$refs.password.doShow(operate);
|
||||||
}
|
}
|
||||||
@ -651,7 +664,9 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
operate.cmdType = CMD.Station.CMD_STATION_SET_MASTER_GUIDE_LOCK;
|
operate.cmdType = CMD.Station.CMD_STATION_SET_MASTER_GUIDE_LOCK;
|
||||||
}
|
}
|
||||||
this.$store.dispatch('training/nextNew', operate).then(({valid, response}) => {}).catch((error) => {
|
this.$store.dispatch('training/nextNew', operate).then(({valid, response}) => {
|
||||||
|
this.resetMbmButton();
|
||||||
|
}).catch((error) => {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
this.$refs.noticeInfo.doShow();
|
this.$refs.noticeInfo.doShow();
|
||||||
});
|
});
|
||||||
|
@ -82,7 +82,7 @@ export default {
|
|||||||
operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL.value,
|
operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL.value,
|
||||||
skinCode: '04',
|
skinCode: '04',
|
||||||
trainingName: '请求中控({2})',
|
trainingName: '请求中控({2})',
|
||||||
trainingRemark: '请求请求中控功能',
|
trainingRemark: '请求中控功能',
|
||||||
trainingType: 'ControlConvertMenu',
|
trainingType: 'ControlConvertMenu',
|
||||||
productTypes: ['01'],
|
productTypes: ['01'],
|
||||||
stepVOList: [
|
stepVOList: [
|
||||||
@ -91,6 +91,21 @@ export default {
|
|||||||
{ deviceType: '04', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }
|
{ deviceType: '04', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
maxDuration: 15,
|
||||||
|
minDuration: 8,
|
||||||
|
operateType: CMD.ControlConvertMenu.CMD_CM_INTERLOCK_CONTROL.value,
|
||||||
|
skinCode: '04',
|
||||||
|
trainingName: '请求联锁控({2})',
|
||||||
|
trainingRemark: '请求联锁控功能',
|
||||||
|
trainingType: 'ControlConvertMenu',
|
||||||
|
productTypes: ['01'],
|
||||||
|
stepVOList: [
|
||||||
|
{ deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' },
|
||||||
|
{ deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【联锁控】', codeType:'STATION', subType:'interconnected' },
|
||||||
|
{ deviceType: '04', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }
|
||||||
|
]
|
||||||
|
},
|
||||||
// 信号机列表
|
// 信号机列表
|
||||||
{
|
{
|
||||||
maxDuration: 15,
|
maxDuration: 15,
|
||||||
@ -878,23 +893,42 @@ export default {
|
|||||||
],
|
],
|
||||||
// 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置
|
// 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置
|
||||||
config:{autoCycleBT:true}
|
config:{autoCycleBT:true}
|
||||||
|
},
|
||||||
|
/** 引导总锁 */
|
||||||
|
{
|
||||||
|
maxDuration: 15,
|
||||||
|
minDuration: 8,
|
||||||
|
operateType: CMD.Station.CMD_STATION_SET_MASTER_GUIDE_LOCK.value,
|
||||||
|
skinCode: '04',
|
||||||
|
trainingName: '引导总锁({26})',
|
||||||
|
trainingRemark: '设置引导总锁',
|
||||||
|
trainingType: 'Station',
|
||||||
|
productTypes: ['01'],
|
||||||
|
stepVOList: [
|
||||||
|
{ deviceType: '04', orderNum: 1, operateCode: '609', tip: '鼠标左键点击【引导总锁】' },
|
||||||
|
{ deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' },
|
||||||
|
{ deviceType: '04', orderNum: 3, operateCode: '609', tip: '鼠标左键点击【{26}】', codeType:'BUTTON' }
|
||||||
|
],
|
||||||
|
config:{guideTotalLockBT:true}
|
||||||
|
},
|
||||||
|
/** 取消引导总锁 */
|
||||||
|
{
|
||||||
|
maxDuration: 15,
|
||||||
|
minDuration: 8,
|
||||||
|
operateType: CMD.Station.CMD_STATION_CANCEL_MASTER_GUIDE_LOCK.value,
|
||||||
|
skinCode: '04',
|
||||||
|
trainingName: '取消引导总锁({26})',
|
||||||
|
trainingRemark: '取消引导总锁',
|
||||||
|
trainingType: 'Station',
|
||||||
|
productTypes: ['01'],
|
||||||
|
stepVOList: [
|
||||||
|
{ deviceType: '04', orderNum: 1, operateCode: '609', tip: '鼠标左键点击【引导总锁】' },
|
||||||
|
{ deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' },
|
||||||
|
{ deviceType: '04', orderNum: 3, operateCode: '609', tip: '鼠标左键点击【{26}】', codeType:'BUTTON' }
|
||||||
|
],
|
||||||
|
config:{guideTotalLockBT:true}
|
||||||
}
|
}
|
||||||
/** 暂时不生成实训 */
|
// totalGuideLock
|
||||||
// {
|
//
|
||||||
// maxDuration: 15,
|
|
||||||
// minDuration: 8,
|
|
||||||
// operateType: CMD.Station.CMD_STATION_SET_MASTER_GUIDE_LOCK.value,
|
|
||||||
// skinCode: '04',
|
|
||||||
// trainingName: '引导总锁({3})',
|
|
||||||
// trainingRemark: '进路办理引导总锁',
|
|
||||||
// trainingType: 'Station',
|
|
||||||
// productTypes: ['01'],
|
|
||||||
// stepVOList: [
|
|
||||||
// { deviceType: '04', orderNum: 1, operateCode: '1190', tip: '鼠标左键点击【引导总锁】' },
|
|
||||||
// { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' },
|
|
||||||
// { deviceType: '04', orderNum: 3, operateCode: '1190', tip: '鼠标左键点击【{5}】', codeType:'GUIDELOCK' }
|
|
||||||
// ]
|
|
||||||
// }
|
|
||||||
|
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
@ -104,7 +104,8 @@ export default {
|
|||||||
message: '',
|
message: '',
|
||||||
timeCountCommand: -1,
|
timeCountCommand: -1,
|
||||||
timeCountConfirm: -1,
|
timeCountConfirm: -1,
|
||||||
stationName: ''
|
stationName: '',
|
||||||
|
selected: {}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -232,6 +233,7 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
doShow(operate, selected) {
|
doShow(operate, selected) {
|
||||||
if (!this.dialogShow) {
|
if (!this.dialogShow) {
|
||||||
|
this.selected = selected;
|
||||||
this.stationName = '';
|
this.stationName = '';
|
||||||
if (selected && selected._type.toUpperCase() === 'Station'.toUpperCase()) {
|
if (selected && selected._type.toUpperCase() === 'Station'.toUpperCase()) {
|
||||||
this.stationName = selected.name;
|
this.stationName = selected.name;
|
||||||
|
@ -25,13 +25,16 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||||
|
import {commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
|
||||||
|
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
||||||
export default {
|
export default {
|
||||||
name: 'ConfirmTip',
|
name: 'ConfirmTip',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
dialogShow: false,
|
dialogShow: false,
|
||||||
message: '',
|
message: '',
|
||||||
confirmId: ''
|
operation: ''
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -40,6 +43,13 @@ export default {
|
|||||||
},
|
},
|
||||||
title() {
|
title() {
|
||||||
return '确认对话框';
|
return '确认对话框';
|
||||||
|
},
|
||||||
|
confirmId() {
|
||||||
|
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
||||||
|
return OperationEvent.Signal.arrangementRoute.secondaryConfirm.operation;
|
||||||
|
} else {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -47,12 +57,23 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
doShow(operate) {
|
doShow(operate) {
|
||||||
this.message = operate.message || '<div>命令:进路设置</div><div>始端信号机:xxx</div><div>进路:测试进路 </div>';
|
this.message = operate.message || '';
|
||||||
this.dialogShow = true;
|
this.dialogShow = true;
|
||||||
this.confirmId = operate.confirmId;
|
this.operation = operate.operation;
|
||||||
},
|
},
|
||||||
confirm() {
|
confirm() {
|
||||||
this.$emit('close');
|
if (this.operation === OperationEvent.Signal.arrangementRoute.menu.operation) {
|
||||||
|
const step = {
|
||||||
|
operation: OperationEvent.Signal.arrangementRoute.secondaryConfirm.operation,
|
||||||
|
cmdType: CMD.Signal.CMD_SIGNAL_SET_ROUTE
|
||||||
|
};
|
||||||
|
commitOperate(step, {}, 2).then(({valid, operate})=>{
|
||||||
|
if (valid) {
|
||||||
|
this.$emit('close');
|
||||||
|
this.doClose();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
doClose() {
|
doClose() {
|
||||||
this.dialogShow = false;
|
this.dialogShow = false;
|
||||||
|
@ -217,10 +217,13 @@ export default {
|
|||||||
commit() {
|
commit() {
|
||||||
if (this.row && this.row.canSetting) {
|
if (this.row && this.row.canSetting) {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
commitOperate(menuOperate.Signal.arrangementRoute, {routeCode:this.row.code}, 2).then(({valid})=>{
|
commitOperate(menuOperate.Signal.arrangementRoute, {routeCode:this.row.code}, 1).then(({valid, operate})=>{
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
if (valid) {
|
if (valid) {
|
||||||
this.doClose();
|
this.doClose();
|
||||||
|
const signal = this.$store.getters['map/getDeviceByCode'](this.row.startSignalCode);
|
||||||
|
operate.message = `<div>命令:进路设置</div><div>始端信号机:${signal.name}</div><div>进路:${this.row.name} </div>`;
|
||||||
|
this.$refs.confirmTip.doShow(operate);
|
||||||
}
|
}
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
|
@ -430,7 +430,7 @@ export default {
|
|||||||
minDuration: 8,
|
minDuration: 8,
|
||||||
operateType: 'Switch_Confirm_Axis_Valid',
|
operateType: 'Switch_Confirm_Axis_Valid',
|
||||||
skinCode: '06',
|
skinCode: '06',
|
||||||
trainingName: '确认计轴有效({8}{9})',
|
trainingName: '确认计轴有效({7})',
|
||||||
trainingRemark: '确认计轴有效功能',
|
trainingRemark: '确认计轴有效功能',
|
||||||
trainingType: 'Switch',
|
trainingType: 'Switch',
|
||||||
productTypes: ['02'],
|
productTypes: ['02'],
|
||||||
|
@ -1,11 +1,10 @@
|
|||||||
import store from '@/store/index';
|
|
||||||
import {createTransform, createBoundingRect} from './utils/parser';
|
import {createTransform, createBoundingRect} from './utils/parser';
|
||||||
|
|
||||||
class TransformHandle {
|
class TransformHandle {
|
||||||
constructor(painter) {
|
constructor(painter) {
|
||||||
this.$painter = painter;
|
this.$painter = painter;
|
||||||
|
|
||||||
this.stationFlag = false;
|
this.foldLines = [];
|
||||||
|
|
||||||
this.parentLevel = painter.getParentLevel();
|
this.parentLevel = painter.getParentLevel();
|
||||||
|
|
||||||
@ -27,49 +26,84 @@ class TransformHandle {
|
|||||||
}
|
}
|
||||||
view.dirty();
|
view.dirty();
|
||||||
}
|
}
|
||||||
setStationFlag(stationCode) {
|
setFoldLines(lines) {
|
||||||
this.stationFlag = !!stationCode;
|
this.foldLines = lines;
|
||||||
}
|
}
|
||||||
// 视图进行缩放/平移
|
// 视图进行缩放/平移
|
||||||
transformView(view) {
|
transformView(view) {
|
||||||
if (view) {
|
if (view) {
|
||||||
view.transform = this.transform;
|
view.transform = this.transform;
|
||||||
if (this.stationFlag) {
|
if (this.foldLines && this.foldLines.length) {
|
||||||
this.handleStationShow(view);
|
this.handleFoldShow(view);
|
||||||
}
|
}
|
||||||
view.decomposeTransform();
|
view.decomposeTransform();
|
||||||
this.revisibleView(view);
|
this.revisibleView(view);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
handleStationShow(view) {
|
handleFoldShow(view) {
|
||||||
if (view.model && view.model._type === 'Station') {
|
if (view.model && view.model.instance && !(view.model._type === 'Line' && view.model.type === '03')) {
|
||||||
const station = view.model;
|
const anchorPoint = view.model.instance.getAnchorPoint();
|
||||||
this.handleStationViewTransform(view, station);
|
if (!anchorPoint) { return; }
|
||||||
} else if (view.model && view.model._type === 'StationStand') {
|
this.foldLines.forEach(item => {
|
||||||
const station = store.getters['map/getDeviceByCode'](view.model.stationCode);
|
const conditionsList = [];
|
||||||
this.handleStationViewTransform(view, station);
|
let index = 0; let minIndex = 0; let maxIndex = 0; let minValue; let maxValue;
|
||||||
} else if (view.model && view.model._type === 'Psd') {
|
for (let i = 0; i < item.points.length - 1; i++) {
|
||||||
const stand = store.getters['map/getDeviceByCode'](view.model.standCode);
|
if (item.points[i].y === item.points[i + 1].y) {
|
||||||
const station = store.getters['map/getDeviceByCode'](stand.stationCode);
|
continue;
|
||||||
this.handleStationViewTransform(view, station);
|
} else if (item.points[i].x === item.points[i + 1].x) {
|
||||||
} else if (view.model && view.model._type === 'Train' && view.model.sectionModel) {
|
const condition = {
|
||||||
const belongStation = view.model.sectionModel.belongStation;
|
minValue: Math.min(item.points[i].y, item.points[i + 1].y),
|
||||||
const station = store.getters['map/getDeviceByCode'](belongStation);
|
maxValue: Math.max(item.points[i].y, item.points[i + 1].y),
|
||||||
this.handleStationViewTransform(view, station);
|
getStandardX: () => { return item.points[i].x; }
|
||||||
} else if (view.model && (view.model.belongStation || view.model.belongStationCode)) {
|
};
|
||||||
const belongStation = view.model.belongStation || view.model.belongStationCode;
|
conditionsList.push(condition);
|
||||||
const station = store.getters['map/getDeviceByCode'](belongStation);
|
if ((minValue && minValue > condition.minValue) || !minValue) {
|
||||||
this.handleStationViewTransform(view, station);
|
minValue = condition.minValue;
|
||||||
}
|
minIndex = conditionsList.length;
|
||||||
}
|
}
|
||||||
handleStationViewTransform(view, station) {
|
if ((maxValue && maxValue < condition.maxValue) || !maxValue) {
|
||||||
if (station && station.foldLine) {
|
maxValue = condition.maxValue;
|
||||||
view.transform = createTransform({
|
maxIndex = conditionsList.length;
|
||||||
scaleRate: this.$painter.$jmap.$options.scaleRate,
|
}
|
||||||
offsetX: this.$painter.$jmap.$options.offsetX + station.foldLineOffset.x * this.$painter.$jmap.$options.scaleRate,
|
if ((anchorPoint.y >= condition.minValue && anchorPoint.y <= condition.maxValue)) {
|
||||||
offsetY: this.$painter.$jmap.$options.offsetY - station.foldLineOffset.y * this.$painter.$jmap.$options.scaleRate
|
index = conditionsList.length;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
const condition = {
|
||||||
|
minValue: Math.min(item.points[i].y, item.points[i + 1].y),
|
||||||
|
maxValue: Math.max(item.points[i].y, item.points[i + 1].y),
|
||||||
|
getStandardX: (val) => {
|
||||||
|
const m = (item.points[i].x - item.points[i + 1].x) / (item.points[i].y - item.points[i + 1].y);
|
||||||
|
const n = item.points[i].x - (item.points[i].y * m);
|
||||||
|
return val * m + n;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
conditionsList.push(condition);
|
||||||
|
if ((anchorPoint.y >= condition.minValue && anchorPoint.y <= condition.maxValue)) {
|
||||||
|
index = conditionsList.length;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (index) {
|
||||||
|
const standardX = conditionsList[index - 1].getStandardX(anchorPoint.y);
|
||||||
|
anchorPoint.x >= standardX && this.handleFoldViewTransform(view, item);
|
||||||
|
} else if ( anchorPoint.y > maxValue) {
|
||||||
|
const standardX = conditionsList[maxIndex - 1].getStandardX(anchorPoint.y);
|
||||||
|
anchorPoint.x >= standardX && this.handleFoldViewTransform(view, item);
|
||||||
|
} else if (anchorPoint.y < minValue) {
|
||||||
|
const standardX = conditionsList[minIndex - 1].getStandardX(anchorPoint.y);
|
||||||
|
anchorPoint.x >= standardX && this.handleFoldViewTransform(view, item);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
handleFoldViewTransform(view, line) {
|
||||||
|
view.transform = createTransform({
|
||||||
|
scaleRate: this.$painter.$jmap.$options.scaleRate,
|
||||||
|
offsetX: this.$painter.$jmap.$options.offsetX + line.offsetX * this.$painter.$jmap.$options.scaleRate,
|
||||||
|
offsetY: this.$painter.$jmap.$options.offsetY - line.offsetY * this.$painter.$jmap.$options.scaleRate
|
||||||
|
});
|
||||||
}
|
}
|
||||||
// 处理所有视图缩放/平移
|
// 处理所有视图缩放/平移
|
||||||
transformAll() {
|
transformAll() {
|
||||||
|
@ -95,7 +95,8 @@ export default {
|
|||||||
controlMode: [
|
controlMode: [
|
||||||
{ label: '中控', value: 'OperateCenterControl' },
|
{ label: '中控', value: 'OperateCenterControl' },
|
||||||
{ label: '站控', value: 'LocalStationControl' },
|
{ label: '站控', value: 'LocalStationControl' },
|
||||||
{ label: '紧急站控', value: 'EmergencyStationControl' }
|
{ label: '紧急站控', value: 'EmergencyStationControl' },
|
||||||
|
{ label: '联锁控', value: 'InterlockStationControl' }
|
||||||
],
|
],
|
||||||
|
|
||||||
simulationRole: [
|
simulationRole: [
|
||||||
|
@ -52,6 +52,9 @@ export default {
|
|||||||
CMD_CM_FORCE_STATION_CONTROL: {value:'CM_Force_Station_Control', label: '强制站控'},
|
CMD_CM_FORCE_STATION_CONTROL: {value:'CM_Force_Station_Control', label: '强制站控'},
|
||||||
/** 紧急站控 */
|
/** 紧急站控 */
|
||||||
CMD_CM_EMERGENCY_STATION_CONTROL: {value:'CM_Emergency_Station_Control', label: '紧急站控'},
|
CMD_CM_EMERGENCY_STATION_CONTROL: {value:'CM_Emergency_Station_Control', label: '紧急站控'},
|
||||||
|
/** 联锁控 */
|
||||||
|
CMD_CM_INTERLOCK_CONTROL:{value:'CM_Interlock_Control', label: '请求联锁控'},
|
||||||
|
|
||||||
/** 回复站控请求(同意/拒绝) */
|
/** 回复站控请求(同意/拒绝) */
|
||||||
CMD_CM_REPLY_STATION_CONTROL: {value:'CM_Reply_Station_Control', label: '回复站控请求'},
|
CMD_CM_REPLY_STATION_CONTROL: {value:'CM_Reply_Station_Control', label: '回复站控请求'},
|
||||||
/** 回复中控请求(同意/拒绝) */
|
/** 回复中控请求(同意/拒绝) */
|
||||||
|
@ -7,7 +7,8 @@ export const State2SimulationMap = {
|
|||||||
export const State2ControlMap = {
|
export const State2ControlMap = {
|
||||||
'Center': 'OperateCenterControl', // 中控
|
'Center': 'OperateCenterControl', // 中控
|
||||||
'Local': 'LocalStationControl', // 站控
|
'Local': 'LocalStationControl', // 站控
|
||||||
'Emergency': 'EmergencyStationControl'
|
'Emergency': 'EmergencyStationControl', // 紧急站控
|
||||||
|
'Interlock':'InterlockStationControl' // 联锁控
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -22,7 +22,7 @@ export const OperationEvent = {
|
|||||||
close: {
|
close: {
|
||||||
operation: 'com05',
|
operation: 'com05',
|
||||||
domId: '_Tips-Cmd-Common-Close'
|
domId: '_Tips-Cmd-Common-Close'
|
||||||
},
|
},
|
||||||
|
|
||||||
choose1: {
|
choose1: {
|
||||||
operation: 'com06',
|
operation: 'com06',
|
||||||
@ -43,9 +43,9 @@ export const OperationEvent = {
|
|||||||
close1: {
|
close1: {
|
||||||
operation: 'com10',
|
operation: 'com10',
|
||||||
domId: '_Tips-Cmd-Common-Close1'
|
domId: '_Tips-Cmd-Common-Close1'
|
||||||
},
|
},
|
||||||
|
|
||||||
choose2: {
|
choose2: {
|
||||||
operation: 'com11',
|
operation: 'com11',
|
||||||
domId: '_Tips-Cmd-Common-Choose2'
|
domId: '_Tips-Cmd-Common-Choose2'
|
||||||
},
|
},
|
||||||
@ -1084,6 +1084,10 @@ export const OperationEvent = {
|
|||||||
menuButton:{
|
menuButton:{
|
||||||
operation: '3013',
|
operation: '3013',
|
||||||
domId: '_Tips-Signal-ArrangementRoute-Menu{BOTTOM}'
|
domId: '_Tips-Signal-ArrangementRoute-Menu{BOTTOM}'
|
||||||
|
},
|
||||||
|
secondaryConfirm: {
|
||||||
|
operation: '3014',
|
||||||
|
domId: '_Tips-Signal-ArrangementRoute-SecondaryConfirm'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 取消进路
|
// 取消进路
|
||||||
|
@ -3,7 +3,6 @@ import { parser, updateMapData } from '@/jmapNew/utils/parser';
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import { deepAssign } from '@/utils/index';
|
import { deepAssign } from '@/utils/index';
|
||||||
import store from '@/store/index';
|
import store from '@/store/index';
|
||||||
import {updateForList} from '../../jmapNew/utils/parser';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询受影响的Devices并删除
|
* 查询受影响的Devices并删除
|
||||||
@ -242,7 +241,8 @@ const map = {
|
|||||||
// selectDeviceFlag: false, // 设备管理激活判断
|
// selectDeviceFlag: false, // 设备管理激活判断
|
||||||
keyboardEnterCount: 0, // 键盘enter键触发
|
keyboardEnterCount: 0, // 键盘enter键触发
|
||||||
controlTransfer:[], // 控制权转移消息
|
controlTransfer:[], // 控制权转移消息
|
||||||
mapDataParseCount: 0
|
mapDataParseCount: 0,
|
||||||
|
foldLineMap: {} // 现地折行线map数据
|
||||||
},
|
},
|
||||||
|
|
||||||
getters: {
|
getters: {
|
||||||
@ -669,6 +669,15 @@ const map = {
|
|||||||
if (Vue.prototype.$jlmap && ( typeof (Vue.prototype.$jlmap.getShowConfig) === 'function')) {
|
if (Vue.prototype.$jlmap && ( typeof (Vue.prototype.$jlmap.getShowConfig) === 'function')) {
|
||||||
showConfig = Vue.prototype.$jlmap.getShowConfig();
|
showConfig = Vue.prototype.$jlmap.getShowConfig();
|
||||||
}
|
}
|
||||||
|
const foldLineMap = {};
|
||||||
|
(map.lineList || []).forEach(item => {
|
||||||
|
if (item.type === '03' && foldLineMap[item.stationCode]) {
|
||||||
|
foldLineMap[item.stationCode].push(item);
|
||||||
|
} else if (item.type === '03') {
|
||||||
|
foldLineMap[item.stationCode] = [item];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
state.foldLineMap = foldLineMap;
|
||||||
state.mapDevice = parser(map, map.skinVO.code, showConfig);
|
state.mapDevice = parser(map, map.skinVO.code, showConfig);
|
||||||
Vue.prototype.$jlmap && Vue.prototype.$jlmap.setMapDevice(state.mapDevice);
|
Vue.prototype.$jlmap && Vue.prototype.$jlmap.setMapDevice(state.mapDevice);
|
||||||
} else {
|
} else {
|
||||||
|
@ -2,9 +2,9 @@ export function getBaseUrl() {
|
|||||||
let BASE_API;
|
let BASE_API;
|
||||||
if (process.env.NODE_ENV === 'development') {
|
if (process.env.NODE_ENV === 'development') {
|
||||||
// BASE_API = 'https://api.joylink.club/jlcloud';
|
// BASE_API = 'https://api.joylink.club/jlcloud';
|
||||||
// BASE_API = 'https://test.joylink.club/jlcloud';
|
BASE_API = 'https://test.joylink.club/jlcloud';
|
||||||
// BASE_API = 'http://192.168.8.107:9000'; // 袁琪
|
// BASE_API = 'http://192.168.8.107:9000'; // 袁琪
|
||||||
BASE_API = 'http://192.168.8.129:9000'; // 旭强
|
// BASE_API = 'http://192.168.8.129:9000'; // 旭强
|
||||||
// BASE_API = 'http://192.168.8.119:9000'; // 张赛
|
// BASE_API = 'http://192.168.8.119:9000'; // 张赛
|
||||||
// BASE_API = 'http://192.168.8.140:9000'; // 杜康
|
// BASE_API = 'http://192.168.8.140:9000'; // 杜康
|
||||||
// BASE_API = 'http://b29z135112.zicp.vip';
|
// BASE_API = 'http://b29z135112.zicp.vip';
|
||||||
|
@ -6,20 +6,47 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bigLPFStrategyR">
|
<div class="bigLPFStrategyR">
|
||||||
<div class="LPFstrategyTop">
|
<div class="LPFstrategyTop">
|
||||||
<div class="LPFstrategyTitle">客流策略</div>
|
<div class="LPFstrategyTitle">
|
||||||
<!-- <div class="LPFstrategyClose" @click="closeLPFstrategy"><span class="el-icon-close" /></div> -->
|
<span class="LPFstrategyTitleL">客流策略</span>
|
||||||
|
<span v-if="LPFstrategyList.length>0" class="LPFstrategyTitleR">【 推算时长:{{ recoimemmandTime }}分钟 】</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="LPFstrategyListOut">
|
<div id="LPFstrategyListOut">
|
||||||
<div v-if="LPFstrategyList.length<=0" class="noLPFstrategy">暂无策略</div>
|
<div v-if="LPFstrategyList.length<=0" class="noLPFstrategy">暂无策略</div>
|
||||||
<div v-for="(eachLPFstrategy,index) in LPFstrategyList" v-else :key="index" class="eachLPFstrategy">
|
<!-- <el-tabs v-model="activeName" class="border-card">
|
||||||
|
<el-tab-pane class="view-control" label="策略列表" name="first"> -->
|
||||||
|
<!-- <div class=""></div> -->
|
||||||
|
<!-- <el-tabs v-else v-model="activeName" type="card" class="LPFstrategyListIn">
|
||||||
|
<el-tab-pane label="策略列表" name="first"> -->
|
||||||
|
<!-- <div v-else class="eachLPFstrategy">
|
||||||
|
<div class="eachLPFstrategyData1">大客流站台列表</div>
|
||||||
|
<div v-for="(eachLPFstand,index) in LPFstandList" :key="index">
|
||||||
|
<div class="eachLPFstrategyData">站台{{ index+1 }}:{{ eachLPFstand.name }}</div>
|
||||||
|
<div class="eachLPFstrategyData">等待人数:{{ eachLPFstand.wait }}</div>
|
||||||
|
</div>
|
||||||
|
</div> -->
|
||||||
|
<div v-for="(eachLPFstrategy,index) in LPFstrategyList" :key="index" class="eachLPFstrategy">
|
||||||
<div class="eachLPFstrategyData1">策略{{ index+1 }}:{{ eachLPFstrategy.description }}</div>
|
<div class="eachLPFstrategyData1">策略{{ index+1 }}:{{ eachLPFstrategy.description }}</div>
|
||||||
<div class="eachLPFstrategyData">指标数据:</div>
|
<div class="eachLPFstrategyData">指标数据:</div>
|
||||||
<div class="eachLPFstrategyData">
|
<div class="eachLPFstrategyData">
|
||||||
<span>时刻表偏移指标: {{ eachLPFstrategy.target1 }}</span>
|
<span> 影响的列车数量: {{ eachLPFstrategy.effectTrainNum }}</span>
|
||||||
<span class="eachLPFstrategySpan">乘客等待指标: {{ eachLPFstrategy.target2 }}</span>
|
<span class="eachLPFstrategySpan">时刻表总偏移量: {{ eachLPFstrategy.scheduleOffset }}秒 </span>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="eachLPFstrategyData">影响的列车: {{ eachLPFstrategy.effectTrainSet.toString() }}</div> -->
|
||||||
|
<div class="eachLPFstrategyData">
|
||||||
|
<span> 可多载离的乘客数量(累计的): {{ eachLPFstrategy.extraNum }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="eachLPFstrategyData">综合指标: {{ eachLPFstrategy.coTarget }}</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
<!-- </el-tab-pane> -->
|
||||||
|
<!-- <el-tab-pane label="大客流站台列表" name="second"> -->
|
||||||
|
|
||||||
|
<!-- </el-tab-pane> -->
|
||||||
|
<!-- </el-tabs> -->
|
||||||
|
<!-- </el-tab-pane>
|
||||||
|
<el-tab-pane class="view-control" label="大客流站台列表" name="second">
|
||||||
|
{{ 111 }}
|
||||||
|
</el-tab-pane>
|
||||||
|
</el-tabs> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="quitLPFstrategy"><el-button type="primary" class="quitLPFButton" @click="quitLPFstrategy">退出</el-button></div>
|
<div class="quitLPFstrategy"><el-button type="primary" class="quitLPFButton" @click="quitLPFstrategy">退出</el-button></div>
|
||||||
@ -38,11 +65,14 @@ export default {
|
|||||||
return {
|
return {
|
||||||
group:'',
|
group:'',
|
||||||
myChart: null,
|
myChart: null,
|
||||||
|
activeName:'first',
|
||||||
LPFstrategyList:[],
|
LPFstrategyList:[],
|
||||||
|
recoimemmandTime:0,
|
||||||
bigLPFStrategyId:'bigLPFStrategyId',
|
bigLPFStrategyId:'bigLPFStrategyId',
|
||||||
upStandList:[],
|
upStandList:[],
|
||||||
downStandList:[],
|
downStandList:[],
|
||||||
stationNameList:[]
|
stationNameList:[],
|
||||||
|
LPFstandList:[]
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -51,48 +81,65 @@ export default {
|
|||||||
'stationStandList',
|
'stationStandList',
|
||||||
'mapConfig'
|
'mapConfig'
|
||||||
])
|
])
|
||||||
// maxWidth() {
|
|
||||||
// return this.$store.state.app.width > 1920 ? 1920 * 0.66 : this.$store.state.app.width * 0.66;
|
|
||||||
// },
|
|
||||||
// maxHeight() {
|
|
||||||
// return this.$store.state.app.height > 1080 ? 1080 - 40 : this.$store.state.app.height - 40;
|
|
||||||
// }
|
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
'$store.state.socket.LPFstrategy':function(val) {
|
'$store.state.socket.LPFstrategy':function(val) {
|
||||||
if (val && val.recommendList && val.recommendList.length > 0) {
|
if (val && val.recommendList && val.recommendList.length > 0) {
|
||||||
this.LPFstrategyList = [];
|
this.LPFstrategyList = [];
|
||||||
|
this.recoimemmandTime = val.duration;
|
||||||
val.recommendList.forEach(strategy=>{
|
val.recommendList.forEach(strategy=>{
|
||||||
const eachStrategy = {};
|
const eachStrategy = {};
|
||||||
switch (strategy.type) {
|
switch (strategy.type) {
|
||||||
case 'JUMP': {
|
case 'JUMP': {
|
||||||
const stand = this.$store.getters['map/getDeviceByCode'](strategy.standCode);
|
// {"type":"JUMP","description":"为列车[132056],设置罗汉山-上行站台跳停",
|
||||||
const station = this.$store.getters['map/getDeviceByCode'](stand.stationCode);
|
// "effectTrainSet":["004"],"effectTrainNum":1,"scheduleOffset":-50,
|
||||||
eachStrategy.description = '为列车[' + strategy.groupNumber +
|
// "extraNum":0,"groupNumber":"004","serviceNumber":"13","tripNumber":"2056","standCode":"PF61848"}]}
|
||||||
'-' + strategy.serviceNumber + '|' + strategy.tripNumber +
|
// const stand = this.$store.getters['map/getDeviceByCode'](strategy.standCode);
|
||||||
'],设置站台' + station.name + '-' + (stand.right ? '右行' : '左行') +
|
// const station = this.$store.getters['map/getDeviceByCode'](stand.stationCode);
|
||||||
stand.name + ' (' + stand.code + ') 跳停';
|
// eachStrategy.description = '为列车[' + strategy.groupNumber +
|
||||||
eachStrategy.target1 = strategy.target1;
|
// '-' + strategy.serviceNumber + '|' + strategy.tripNumber +
|
||||||
eachStrategy.target2 = strategy.target2;
|
// '],设置站台' + station.name + '-' + (stand.right ? '右行' : '左行') +
|
||||||
eachStrategy.coTarget = strategy.coTarget;
|
// stand.name + ' (' + stand.code + ') 跳停';
|
||||||
// 为列车[005-02|2057],设置站台秀山-右行-PF42(PF44165)跳停",
|
// 为列车[005-02|2057],设置站台秀山-右行-PF42(PF44165)跳停",
|
||||||
// eachStrategy.description = strategy.description;
|
eachStrategy.description = strategy.description;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
// "type":"PARK_TIME",
|
||||||
|
// "description":"福州火车站-上行站台设置停站时间[85]",
|
||||||
|
// "effectTrainSet":["012","004","005","009"],"effectTrainNum":4,
|
||||||
|
// "scheduleOffset":160,"extraNum":2540,"time":85,"standCode":"PF83991"
|
||||||
case 'PARK_TIME': {
|
case 'PARK_TIME': {
|
||||||
const stand = this.$store.getters['map/getDeviceByCode'](strategy.standCode);
|
// const stand = this.$store.getters['map/getDeviceByCode'](strategy.standCode);
|
||||||
const station = this.$store.getters['map/getDeviceByCode'](stand.stationCode);
|
// const station = this.$store.getters['map/getDeviceByCode'](stand.stationCode);
|
||||||
// eachStrategy.description = strategy.description;
|
eachStrategy.description = strategy.description;
|
||||||
eachStrategy.target1 = strategy.target1;
|
// eachStrategy.description = '为站台[' + station.name + '-' + (stand.right ? '右行' : '左行') +
|
||||||
eachStrategy.target2 = strategy.target2;
|
// stand.name + '(' + stand.code + ')] 设置停站时间,' + strategy.time + '秒';
|
||||||
eachStrategy.coTarget = strategy.coTarget;
|
|
||||||
eachStrategy.description = '为站台[' + station.name + '-' + (stand.right ? '右行' : '左行') +
|
|
||||||
stand.name + '(' + stand.code + ') 设置停站时间,' + strategy.time + '秒';
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case 'J_P': {
|
||||||
|
// const stand = this.$store.getters['map/getDeviceByCode'](strategy.standCode);
|
||||||
|
// const station = this.$store.getters['map/getDeviceByCode'](stand.stationCode);
|
||||||
|
// eachStrategy.description = '为列车[' + strategy.groupNumber +
|
||||||
|
// '-' + strategy.serviceNumber + '|' + strategy.tripNumber +
|
||||||
|
// '],设置站台' + station.name + '-' + (stand.right ? '右行' : '左行') +
|
||||||
|
// stand.name + ' (' + stand.code + ') 跳停,并且为站台[' + station.name + '-' + (stand.right ? '右行' : '左行') +
|
||||||
|
// stand.name + '(' + stand.code + ')] 设置停站时间,' + strategy.time + '秒';
|
||||||
|
eachStrategy.description = strategy.description;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
eachStrategy.effectTrainNum = strategy.effectTrainNum;
|
||||||
|
eachStrategy.scheduleOffset = strategy.scheduleOffset;
|
||||||
|
eachStrategy.extraNum = strategy.extraNum;
|
||||||
|
eachStrategy.effectTrainSet = strategy.effectTrainSet;
|
||||||
this.LPFstrategyList.push(eachStrategy);
|
this.LPFstrategyList.push(eachStrategy);
|
||||||
});
|
});
|
||||||
|
this.LPFstandList = [];
|
||||||
|
val.lpfList.forEach(standInfo=>{
|
||||||
|
const stand = this.$store.getters['map/getDeviceByCode'](standInfo.standCode);
|
||||||
|
const station = this.$store.getters['map/getDeviceByCode'](stand.stationCode);
|
||||||
|
this.LPFstandList.push({name:station.name + '-' + (stand.right ? '右行' : '左行') +
|
||||||
|
stand.name + '(' + stand.code + ')', wait:standInfo.wait});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
'$store.state.socket.simulationOver':function(val) {
|
'$store.state.socket.simulationOver':function(val) {
|
||||||
@ -276,7 +323,7 @@ export default {
|
|||||||
this.myChart = echarts.init(document.getElementById(this.bigLPFStrategyId));
|
this.myChart = echarts.init(document.getElementById(this.bigLPFStrategyId));
|
||||||
if (this.myChart) {
|
if (this.myChart) {
|
||||||
this.myChart.setOption(option);
|
this.myChart.setOption(option);
|
||||||
this.reSize({ width: this.$store.state.app.width * 0.66, height: this.$store.state.app.height - 40 });
|
this.reSize({ width: this.$store.state.app.width * 0.74, height: this.$store.state.app.height - 40 });
|
||||||
}
|
}
|
||||||
resolve(true);
|
resolve(true);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@ -285,7 +332,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
setWindowSize() {
|
setWindowSize() {
|
||||||
this.reSize({ width: this.$store.state.app.width * 0.66, height: this.$store.state.app.height - 40 });
|
this.reSize({ width: this.$store.state.app.width * 0.74, height: this.$store.state.app.height - 40 });
|
||||||
},
|
},
|
||||||
reSize(opt) {
|
reSize(opt) {
|
||||||
if (this.myChart) {
|
if (this.myChart) {
|
||||||
@ -319,8 +366,9 @@ export default {
|
|||||||
background: #fff;
|
background: #fff;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin-left: 2%;
|
margin-left: 2%;
|
||||||
|
border-radius: 5px;
|
||||||
}
|
}
|
||||||
.LPFstrategyTop,.bigLPFStrategyLTitle{
|
.LPFstrategyTop{
|
||||||
background:#fff;
|
background:#fff;
|
||||||
height: 40px;
|
height: 40px;
|
||||||
border-bottom: 1px #d4d4d4 solid;
|
border-bottom: 1px #d4d4d4 solid;
|
||||||
@ -330,14 +378,22 @@ export default {
|
|||||||
left:0;
|
left:0;
|
||||||
}
|
}
|
||||||
.bigLPFStrategyLTitle{
|
.bigLPFStrategyLTitle{
|
||||||
padding: 10px;
|
padding: 15px 20px 0px 20px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
|
background: #fff;
|
||||||
|
height: 40px;
|
||||||
|
width: 100%;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
}
|
}
|
||||||
.LPFstrategyTitle{
|
.LPFstrategyTitle{
|
||||||
float: left;
|
float: left;
|
||||||
|
width:100%;
|
||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
padding-left: 10px;
|
padding-left: 15px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
|
padding-right: 20px;
|
||||||
}
|
}
|
||||||
.LPFstrategyClose{
|
.LPFstrategyClose{
|
||||||
float: right;
|
float: right;
|
||||||
@ -345,11 +401,11 @@ export default {
|
|||||||
padding: 5px;
|
padding: 5px;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
}
|
}
|
||||||
.LPFstrategyListOut{
|
#LPFstrategyListOut{
|
||||||
height: 100%;
|
height: 100%;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
padding-bottom: 10px;
|
padding-bottom:20px;
|
||||||
border-bottom: 1px #d4d4d4 solid;
|
border-bottom: 1px #d4d4d4 solid;
|
||||||
&::-webkit-scrollbar {
|
&::-webkit-scrollbar {
|
||||||
width: 5px;
|
width: 5px;
|
||||||
@ -376,18 +432,20 @@ export default {
|
|||||||
margin-left:50px;
|
margin-left:50px;
|
||||||
}
|
}
|
||||||
.bigLPFStrategyL{
|
.bigLPFStrategyL{
|
||||||
width: 66%;
|
width: 74%;
|
||||||
float: left;
|
float: left;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding: 40px 0px 0px 0px;
|
padding: 40px 0px 0px 0px;
|
||||||
|
position: relative;
|
||||||
}
|
}
|
||||||
.bigLPFStrategyR{
|
.bigLPFStrategyR{
|
||||||
width: 34%;
|
width: 26%;
|
||||||
float: right;
|
float: right;
|
||||||
border-left: 1px #eee solid;
|
border-left: 1px #eee solid;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding: 40px 0px;
|
padding: 40px 0px;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
box-shadow: -5px 0px 5px #dedede;
|
||||||
}
|
}
|
||||||
.bigLPFStrategy{
|
.bigLPFStrategy{
|
||||||
width:100%;
|
width:100%;
|
||||||
@ -408,9 +466,45 @@ export default {
|
|||||||
padding-top: 5px;
|
padding-top: 5px;
|
||||||
padding-bottom: 5px;
|
padding-bottom: 5px;
|
||||||
}
|
}
|
||||||
.bigLPFStrategyLChart{}
|
|
||||||
#bigLPFStrategyId{
|
#bigLPFStrategyId{
|
||||||
width:100%;
|
width:100%;
|
||||||
height:100%;
|
height:100%;
|
||||||
}
|
}
|
||||||
|
.LPFstrategyTitleL{}
|
||||||
|
.LPFstrategyTitleR{
|
||||||
|
// float:right
|
||||||
|
}
|
||||||
|
.LPFstrategyListIn{height:100%;overflow:hidden;padding-top: 41px;position:relative;}
|
||||||
|
</style>
|
||||||
|
<style lang="scss">
|
||||||
|
#LPFstrategyListOut .LPFstrategyListIn .el-tabs__header.is-top{
|
||||||
|
margin-bottom: 10px;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
background: #fff;
|
||||||
|
width: 100%;
|
||||||
|
border-bottom: 1px #ccc solid;
|
||||||
|
}
|
||||||
|
#LPFstrategyListOut .LPFstrategyListIn .el-tabs__content{
|
||||||
|
height: 100%;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
overflow: auto;
|
||||||
|
&::-webkit-scrollbar {
|
||||||
|
width: 5px;
|
||||||
|
}
|
||||||
|
&::-webkit-scrollbar-thumb {
|
||||||
|
border-radius: 10px;
|
||||||
|
background: #c3c3c3;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::-webkit-scrollbar-track {
|
||||||
|
border-radius: 0;
|
||||||
|
background: #f0f0f0;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#LPFstrategyListOut .el-tabs--card>.el-tabs__header .el-tabs__item.is-active{
|
||||||
|
border-bottom-color:#dedede;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -59,7 +59,9 @@ export default {
|
|||||||
lineColor: '',
|
lineColor: '',
|
||||||
showConditions: '01',
|
showConditions: '01',
|
||||||
points: [],
|
points: [],
|
||||||
stationCode: ''
|
stationCode: '',
|
||||||
|
offsetX: 0,
|
||||||
|
offsetY: 0
|
||||||
},
|
},
|
||||||
addModel: {
|
addModel: {
|
||||||
type: '',
|
type: '',
|
||||||
@ -69,7 +71,9 @@ export default {
|
|||||||
points: [
|
points: [
|
||||||
{ x: 0, y: 0 },
|
{ x: 0, y: 0 },
|
||||||
{ x: 100, y: 100 }
|
{ x: 100, y: 100 }
|
||||||
]
|
],
|
||||||
|
offsetX: 0,
|
||||||
|
offsetY: 0
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
code: [
|
code: [
|
||||||
@ -113,7 +117,9 @@ export default {
|
|||||||
{ prop: 'width', label: this.$t('map.lineWidth'), type: 'number', min: 1, placeholder: 'px' },
|
{ prop: 'width', label: this.$t('map.lineWidth'), type: 'number', min: 1, placeholder: 'px' },
|
||||||
{ prop: 'showConditions', label: this.$t('map.showConditions'), type: 'radio', optionLabel: 'label', optionValue:'value', radioList: this.showConditionsList},
|
{ prop: 'showConditions', label: this.$t('map.showConditions'), type: 'radio', optionLabel: 'label', optionValue:'value', radioList: this.showConditionsList},
|
||||||
{ prop: 'points', label: this.$t('map.segmentCoordinates'), type: 'points', width: '100px', isHidden: !this.isPointsShow, addPoint: this.addPoint, delPoint: this.delPoint },
|
{ prop: 'points', label: this.$t('map.segmentCoordinates'), type: 'points', width: '100px', isHidden: !this.isPointsShow, addPoint: this.addPoint, delPoint: this.delPoint },
|
||||||
{ prop: 'stationCode', label: this.$t('map.equipmentStation') + ':', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.centralizedStationList }
|
{ prop: 'stationCode', label: this.$t('map.equipmentStation') + ':', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.centralizedStationList },
|
||||||
|
{ prop: 'offsetX', label: '右侧设备X偏移:', type: 'number', min: 0, isHidden: !this.isFoldLine },
|
||||||
|
{ prop: 'offsetY', label: '左侧设备Y偏移:', type: 'number', min: 0, isHidden: !this.isFoldLine }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
@ -145,6 +151,9 @@ export default {
|
|||||||
},
|
},
|
||||||
isPointsShow() {
|
isPointsShow() {
|
||||||
return this.editModel.points.length > 0;
|
return this.editModel.points.length > 0;
|
||||||
|
},
|
||||||
|
isFoldLine() {
|
||||||
|
return this.editModel.type == '03';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
@ -217,12 +217,7 @@ export default {
|
|||||||
{ prop: 'relStationCodeList', label: '联锁站关联车站:', type: 'multiSelect', optionLabel: 'name', optionValue: 'code', options: this.relStationList, isHidden: !this.idCiStation},
|
{ prop: 'relStationCodeList', label: '联锁站关联车站:', type: 'multiSelect', optionLabel: 'name', optionValue: 'code', options: this.relStationList, isHidden: !this.idCiStation},
|
||||||
{ prop: 'routingStationList', label: '生成交路的车站:', type: 'multiSelectHover', optionLabel: 'name', optionValue: 'code', options: this.stationList, hover: this.hover, buttonType: 'routingStation', buttonShowType: this.routingStationButtonShow },
|
{ prop: 'routingStationList', label: '生成交路的车站:', type: 'multiSelectHover', optionLabel: 'name', optionValue: 'code', options: this.stationList, hover: this.hover, buttonType: 'routingStation', buttonShowType: this.routingStationButtonShow },
|
||||||
{ prop: 'runPlanName', label: this.$t('map.stationRunPlanName'), type: 'input' },
|
{ prop: 'runPlanName', label: this.$t('map.stationRunPlanName'), type: 'input' },
|
||||||
{ prop: 'jp', label: '车站简称:', type: 'input' },
|
{ prop: 'jp', label: '车站简称:', type: 'input' }
|
||||||
{ prop: 'foldLine', label: '现地显示是否折行:', type: 'checkbox' },
|
|
||||||
{ prop: 'foldLineOffset', label: '折行偏移:', type: 'coordinate', width: '120px', isHidden: !this.editModel.foldLine, children: [
|
|
||||||
{ prop: 'foldLineOffset.x', firstLevel: 'foldLineOffset', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px'},
|
|
||||||
{ prop: 'foldLineOffset.y', firstLevel: 'foldLineOffset', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px' }
|
|
||||||
] }
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user