This commit is contained in:
fan 2020-12-24 15:33:17 +08:00
commit 4611c4b74b
20 changed files with 494 additions and 184 deletions

View File

@ -187,6 +187,15 @@ export function gernateRoutingSection(data) {
}); });
} }
/** 生成交路区段数据(运行图中)(新版)*/
export function gernateRoutingSectionInRunplan(data) {
return request({
url: `/api/runPlan/userData/routing/path/generate`,
method: 'post',
data: data
});
}
/** 更新交路(新版)*/ /** 更新交路(新版)*/
export function updateRoutingData(data) { export function updateRoutingData(data) {
return request({ return request({

View File

@ -0,0 +1,191 @@
//import request from '@/utils/request';
export function specilDataSave(data) {
console.log(data);
let postmap = {
id:data.mapdata.id,
mapId:data.mapdata.mapId,
assets:"null",
sections:"null",
signals:"null",
trains:"null",
stands:"null",
switchs:"null",
others:"null",
};
if(data.mapdata.sectionlist.sections== undefined){
return postmap;
}
if(data == undefined){
return postmap;
}else{
let specilModel = [
{
id:"1",
name:"天府广场站",
code:"Station72223",
deviceType:"SimulationStation",
type:"Station72223",
url:"/MODEL/2020-12-23/119-45721.FBX"
},
{
id:"2",
name:"孵化园站",
code:"Station95125",
deviceType:"SimulationStation",
type:"Station95125",
url:"/MODEL/2020-12-23/117-12889.FBX"
},
{
id:"3",
name:"四河站",
code:"Station62009",
deviceType:"SimulationStation",
type:"Station62009",
url:"/MODEL/2020-12-23/118-99249.FBX"
},
];
data.assetManager.others = specilModel;
let models = data.assetManager;
console.log(data.assetManager);
postmap.assets = JSON.stringify(models);
//section隧道
let sections = [];
for(let i in data.mapdata.sectionlist.sections.datalist){
let section = {
// uuid:data.mapdata.sectionlist.sections.modellist[i].uuid,
code:data.mapdata.sectionlist.sections.datalist[i].code,
name:data.mapdata.sectionlist.sections.datalist[i].name,
lengthFact:null,
standTrack:data.mapdata.sectionlist.sections.datalist[i].standTrack,
rp:data.mapdata.sectionlist.sections.datalist[i].rp,
lp:data.mapdata.sectionlist.sections.datalist[i].lp,
railpoint:null,
rail:data.mapdata.sectionlist.sections.datalist[i].rail,
position:null,
rotation:null,
scale:null,
}
if(data.mapdata.sectionlist.sections.datalist[i].mesh){
let nowmesh = data.mapdata.sectionlist.sectiongroup.getObjectByProperty("code",section.code);
section.railpoint = nowmesh.railpoint;
section.lengthFact = data.mapdata.sectionlist.sections.datalist[i].mesh.lengthFact;
section.position = data.mapdata.sectionlist.sections.datalist[i].mesh.position;
section.rotation = data.mapdata.sectionlist.sections.datalist[i].mesh.rotation;
section.scale = data.mapdata.sectionlist.sections.datalist[i].mesh.scale;
sections.push(section);
}
// if(data.mapdata.sectionlist.sections.datalist[i].rsection){
// section.rsection = data.mapdata.sectionlist.sections.datalist[i].rsection;
// }
// if(data.mapdata.sectionlist.sections.datalist[i].lsection){
// section.lsection = data.mapdata.sectionlist.sections.datalist[i].lsection;
// }
// if(data.mapdata.sectionlist.sections.datalist[i].csection){
// section.csection = data.mapdata.sectionlist.sections.datalist[i].csection;
// }
// testmesh1.position.z = link.position.z;
}
let arrray = {
section:sections,
};
postmap.sections = JSON.stringify(arrray);
//道岔
let switchs = [];
for(let i=0;i<data.mapdata.switchlist.switchs.datalist.length;i++){
let switcha = {
// uuid:data.mapdata.switchlist.switchs.modellist[i].uuid,
code:data.mapdata.switchlist.switchs.datalist[i].code,
name:data.mapdata.switchlist.switchs.datalist[i].name,
pa:data.mapdata.switchlist.switchs.datalist[i].pa,
pb:data.mapdata.switchlist.switchs.datalist[i].pb,
pc:data.mapdata.switchlist.switchs.datalist[i].pc,
position:data.mapdata.switchlist.switchs.modellist[i].position,
rotation:data.mapdata.switchlist.switchs.modellist[i].rotation,
scale:data.mapdata.switchlist.switchs.modellist[i].scale
}
switchs.push(switcha);
}
postmap.switchs = JSON.stringify(switchs);
//信号
let signals = [];
for(let i=0;i<data.mapdata.signallist.list.length;i++){
let signal = {
// uuid:data.mapdata.signallist.list[i].mesh.uuid,
name:data.mapdata.signallist.list[i].mesh.name,
modelid:data.mapdata.signallist.list[i].mesh.modelid,
code:data.mapdata.signallist.list[i].mesh.code,
right:data.mapdata.signallist.list[i].mesh.right,
position:data.mapdata.signallist.list[i].mesh.position,
rotation:data.mapdata.signallist.list[i].mesh.rotation,
scale:data.mapdata.signallist.list[i].mesh.scale
}
signals.push(signal);
}
postmap.signals = JSON.stringify(signals);
//车站
let stands = [];
for(let i=0;i<data.mapdata.stationstandlist.list.length;i++){
let station = {
// uuid:data.mapdata.stationstandlist.list[i].uuid,
code:data.mapdata.stationstandlist.list[i].code,
name:data.mapdata.stationstandlist.list[i].name,
// modelid:data.mapdata.stationstandlist.list[i].modelid,
position:data.mapdata.stationstandlist.list[i].mesh.position,
rotation:data.mapdata.stationstandlist.list[i].mesh.rotation,
scale:data.mapdata.stationstandlist.list[i].mesh.scale,
inside:data.mapdata.stationstandlist.list[i].inside,
stands:data.mapdata.stationstandlist.list[i].stands,
// direction1:{
// name:data.mapdata.stationstandlist.list[i].direction1.name,
// code:data.mapdata.stationstandlist.list[i].direction1.code
// },
// direction2:{
// name:data.mapdata.stationstandlist.list[i].direction2.name,
// code:data.mapdata.stationstandlist.list[i].direction2.code
// }
}
stands.push(station);
}
postmap.stands = JSON.stringify(stands);
//列车
let trains = [];
for(let i=0;i<data.assetloader.modellist.length;i++){
if(data.assetloader.modellist[i].deviceType == "train"){
let train = {
id:data.assetloader.modellist[i].id,
name:data.assetloader.modellist[i].name,
deviceType:data.assetloader.modellist[i].deviceType,
type:data.assetloader.modellist[i].type,
assetUrl:data.assetloader.modellist[i].assetUrl
}
trains.push(train);
}
}
postmap.trains = JSON.stringify(trains);
return postmap;
}
}

View File

@ -114,7 +114,7 @@ export function jl3dEditorLoader(mapid,scope){
jlmap3ddata.switchlist = new SwitchList(); jlmap3ddata.switchlist = new SwitchList();
jlmap3ddata.raillist = new RailList(); jlmap3ddata.raillist = new RailList();
console.log(netdata);
let sectiondata = JSON.parse(netdata.sections); let sectiondata = JSON.parse(netdata.sections);
let switchdata = JSON.parse(netdata.switchs); let switchdata = JSON.parse(netdata.switchs);
let signaldata = JSON.parse(netdata.signals); let signaldata = JSON.parse(netdata.signals);
@ -150,11 +150,11 @@ export function jl3dEditorLoader(mapid,scope){
}); });
}else{ }else{
loadEditAllAsset(jlmap3dasset); loadEditAllAsset(jlmap3dasset);
assetloader.setModelListOver(jlmap3dasset.sceneAssetList,5); assetloader.setModelListOver(jlmap3dasset.sceneAssetList,5,jlmap3dasset.others);
assetloader.assetPromiseOver(scene) assetloader.assetPromiseOver(scene)
.then(function(data){ .then(function(data){
// return jlmap3ddata.stationstandlist.initpromise(jlmap3ddata,mapdata.stationList,mapdata.stationStandList,scene,assetloader); // return jlmap3ddata.stationstandlist.initpromise(jlmap3ddata,mapdata.stationList,mapdata.stationStandList,scene,assetloader);
return jlmap3ddata.stationstandlist.loadpromise(jlmap3ddata,standsdata,mapdata,scene,assetloader); return jlmap3ddata.stationstandlist.loadpromise(jlmap3ddata,standsdata,mapdata,scene,assetloader,jlmap3dasset.others);
}) })
.then(function(data){ .then(function(data){
//console.log(data); //console.log(data);

View File

@ -87,15 +87,13 @@ export function StationStandList() {
resolve("loadedstation"); resolve("loadedstation");
}); });
} }
this.loadpromise = function(jlmap3ddata,standsdata,jlmapdata,scene,assetloader){ this.loadpromise = function(jlmap3ddata,standsdata,jlmapdata,scene,assetloader,otherStation){
return new Promise(function(resolve, reject){ return new Promise(function(resolve, reject){
// console.log(jlmap3ddata); // console.log(jlmap3ddata);
let jlmapstationdata = jlmapdata.stationList; let jlmapstationdata = jlmapdata.stationList;
let jlmapstanddata = jlmapdata.stationStandList; let jlmapstanddata = jlmapdata.stationStandList;
// jlmapstationdata.splice(0,1); // console.log(jlmapstationdata);
console.log(jlmapstationdata);
for(let i=0;i<jlmapstationdata.length;i++){ for(let i=0;i<jlmapstationdata.length;i++){
//|| jlmapstationdata[i].subheadDisplay == false
if(jlmapstationdata[i].visible == false || jlmapstationdata[i].depot == true){ if(jlmapstationdata[i].visible == false || jlmapstationdata[i].depot == true){
jlmapstationdata.splice(i,1); jlmapstationdata.splice(i,1);
i--; i--;
@ -103,10 +101,10 @@ export function StationStandList() {
standsdata[i].code = jlmapstationdata[i].code; standsdata[i].code = jlmapstationdata[i].code;
standsdata[i].name = jlmapstationdata[i].name; standsdata[i].name = jlmapstationdata[i].name;
} }
// console.log(jlmapstationdata[i].subheadDisplay);
} }
console.log(otherStation);
console.log(standsdata); // console.log(standsdata);
console.log(assetloader.modellist);
let stations = jlmap3ddata.stationstandlist.list; let stations = jlmap3ddata.stationstandlist.list;
let num; let num;
let num2; let num2;
@ -156,6 +154,33 @@ export function StationStandList() {
} }
} }
newstationstand.stands = stands; newstationstand.stands = stands;
let nowModelType = "normal";
if(otherStation){
for(let o=0;o<otherStation.length;o++){
if(standsdata[i].code == otherStation[o].code){
newstationmesh = assetloader.modelgroup[ otherStation[o].code];
newstationstand.code = standsdata[i].code;
newstationstand.name = standsdata[i].name;
newstationstand.inside = standsdata[i].inside;
// console.log(standsdata[i]);
newstationmesh.code = standsdata[i].code;
newstationmesh.name = standsdata[i].name;
newstationmesh.meshtype = "station";
newstationmesh.position.x = standsdata[i].position.x;
newstationmesh.position.y = standsdata[i].position.y;
newstationmesh.position.z = standsdata[i].position.z;
// newstationmesh.rotation.x = standsdata[i].rotation._x;
// newstationmesh.rotation.y = standsdata[i].rotation._y;
// newstationmesh.rotation.z = standsdata[i].rotation._z;
newstationstand.mesh = newstationmesh;
scope.group.add(newstationmesh);
scope.list.push(newstationstand);
nowModelType = "specil";
}
}
}
if(nowModelType == "normal"){
if(newstationstand.stands.length<=2){ if(newstationstand.stands.length<=2){
if(standsdata[i].inside == true){ if(standsdata[i].inside == true){
@ -203,6 +228,8 @@ export function StationStandList() {
scope.list.push(newstationstand); scope.list.push(newstationstand);
} }
} }
}
scene.add(scope.group); scene.add(scope.group);
resolve("loadedstation"); resolve("loadedstation");
}); });

View File

@ -116,6 +116,7 @@ export function AssetLoader(){
this.trainoffset = 0; this.trainoffset = 0;
this.modellist = []; this.modellist = [];
this.modelgroup = [];
this.materiallist = []; this.materiallist = [];
//初始化资源加载器 //初始化资源加载器
@ -168,13 +169,22 @@ export function AssetLoader(){
} }
} }
this.setModelListOver = function (data,trainoffset){ this.setModelListOver = function (data,trainoffset,others){
if(trainoffset){ if(trainoffset){
scope.trainoffset = trainoffset; scope.trainoffset = trainoffset;
} }
if(others){
let otherData = others;
// console.log(data);
for(let j=0;j<otherData.length;j++){
let model = new AssetModel(otherData[j]);
scope.modellist.push(otherData[j]);
}
}
let modeldata = data; let modeldata = data;
// console.log(data);
for(let j=0;j<modeldata.length;j++){ for(let j=0;j<modeldata.length;j++){
let had = false; let had = false;
for(let i=0;i<scope.modellist.length;i++){ for(let i=0;i<scope.modellist.length;i++){
@ -305,17 +315,17 @@ export function AssetLoader(){
fbxpromise(signal) fbxpromise(signal)
.then(function(data){ .then(function(data){
////console.log(data); ////console.log(data);
console.log("test"); // console.log("test");
return fbxpromise(train); return fbxpromise(train);
}) })
.then(function(data){ .then(function(data){
////console.log(data); ////console.log(data);
console.log("test"); // console.log("test");
return fbxpromise(station); return fbxpromise(station);
}) })
.then(function(data){ .then(function(data){
////console.log(data); ////console.log(data);
console.log("test"); // console.log("test");
return fbxpromise(wstation); return fbxpromise(wstation);
}) })
// .then(function(data){ // .then(function(data){
@ -328,17 +338,17 @@ export function AssetLoader(){
// }) // })
.then(function(data){ .then(function(data){
////console.log(data); ////console.log(data);
console.log("defaultswitch1"); // console.log("defaultswitch1");
return fbxpromise(defaultswitch1); return fbxpromise(defaultswitch1);
}) })
.then(function(data){ .then(function(data){
console.log("defaultswitch2"); // console.log("defaultswitch2");
////console.log(data); ////console.log(data);
return fbxpromise(defaultswitch2); return fbxpromise(defaultswitch2);
}) })
.then(function(data){ .then(function(data){
////console.log(data); ////console.log(data);
console.log("autoswitchs"); // console.log("autoswitchs");
return fbxpromise(autoswitchs); return fbxpromise(autoswitchs);
}) })
.then(function(data){ .then(function(data){
@ -599,7 +609,6 @@ export function AssetLoader(){
function fbxpromiseold(asset){ function fbxpromiseold(asset){
return new Promise(function(resolve, reject){ return new Promise(function(resolve, reject){
var loader = new THREE.FBXLoader(); var loader = new THREE.FBXLoader();
console.log(asset);
loader.load( asset.assetUrl, function ( object ) { loader.load( asset.assetUrl, function ( object ) {
let mixer = new THREE.AnimationMixer( object ); let mixer = new THREE.AnimationMixer( object );
//object.traverse(function (node) {//获取其中对象 //object.traverse(function (node) {//获取其中对象
@ -643,7 +652,9 @@ export function AssetLoader(){
//object.traverse(function (node) {//获取其中对象 //object.traverse(function (node) {//获取其中对象
// node.frustumCulled = true; // node.frustumCulled = true;
//}); //});
console.log(asset); if(asset.code){
scope.modelgroup[asset.code] = object;
}else{
if(asset.type == "train"){ if(asset.type == "train"){
let realtrain = new THREE.Group(); let realtrain = new THREE.Group();
@ -660,7 +671,6 @@ export function AssetLoader(){
} }
} }
} }
console.log(realtrain);
asset.mesh = realtrain; asset.mesh = realtrain;
asset.animations = object.animations[0].tracks; asset.animations = object.animations[0].tracks;
@ -668,6 +678,8 @@ export function AssetLoader(){
asset.mesh = object; asset.mesh = object;
} }
}
//object.scale.set(0.1,0.1,0.1); //object.scale.set(0.1,0.1,0.1);
resolve("fbxload"); resolve("fbxload");

View File

@ -70,11 +70,11 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
let signaldata = JSON.parse(netdata.signals); let signaldata = JSON.parse(netdata.signals);
let standsdata = JSON.parse(netdata.stands); let standsdata = JSON.parse(netdata.stands);
let psddata = data.psdList; let psddata = data.psdList;
assetloader.setModelListOver(JSON.parse(netdata.assets).sceneAssetList,0); assetloader.setModelListOver(JSON.parse(netdata.assets).sceneAssetList,0,JSON.parse(netdata.assets).others);
assetloader.assetPromiseOver(sceneload) assetloader.assetPromiseOver(sceneload)
.then(function(data){ .then(function(data){
return stationstandlist.loadpromise(mapdata.stationList,standsdata,psddata,sceneload,assetloader,mixers,actions,"01"); return stationstandlist.loadpromise(mapdata.stationList,standsdata,psddata,sceneload,assetloader,mixers,actions,"01",JSON.parse(netdata.assets).others);
}) })
.then(function(data){ .then(function(data){
return sectionlist.loadpromise(mapdata.sectionList,sectiondata.section,rails,scene,assetloader); return sectionlist.loadpromise(mapdata.sectionList,sectiondata.section,rails,scene,assetloader);

View File

@ -77,8 +77,7 @@ export function SimulationLoadNew(data,scope,netdata,mapdata,camera,controls,sce
} }
} }
} }
assetloader.setModelListOver(JSON.parse(netdata.assets).sceneAssetList,1.3,JSON.parse(netdata.assets).others);
assetloader.setModelListOver(JSON.parse(netdata.assets).sceneAssetList,1.3);
// assetloader.setmodellistnew(netdata.assets); // assetloader.setmodellistnew(netdata.assets);
@ -88,7 +87,7 @@ export function SimulationLoadNew(data,scope,netdata,mapdata,camera,controls,sce
//console.log(data); //console.log(data);
//,netdata.stands,mixers,actions,"0" //,netdata.stands,mixers,actions,"0"
return stationstandlist.loadpromise(mapdata.stationList,standsdata,psddata,sceneload,assetloader,mixers,actions,"02"); return stationstandlist.loadpromise(mapdata.stationList,standsdata,psddata,sceneload,assetloader,mixers,actions,"02",JSON.parse(netdata.assets).others);
}) })
.then(function(data){ .then(function(data){
//console.log(data); //console.log(data);

View File

@ -24,9 +24,6 @@ export function StationStandListN() {
} }
} }
for(let i=0;i<standsdata.length;i++){ for(let i=0;i<standsdata.length;i++){
let newstationstand = new StationStandModel(standsdata[i]); let newstationstand = new StationStandModel(standsdata[i]);
@ -136,13 +133,14 @@ export function StationStandListN() {
}); });
} }
this.loadpromise = function(stationdata,standsdata,psddata,scene,assetloader,mixers,actionss,mode){ this.loadpromise = function(stationdata,standsdata,psddata,scene,assetloader,mixers,actionss,mode,otherStation){
return new Promise(function(resolve, reject){ return new Promise(function(resolve, reject){
let stations = stationdata; let stations = stationdata;
let selectmesh1; let selectmesh1;
let selectmesh2; let selectmesh2;
let selectmesh3; let selectmesh3;
for(let j=0;j<assetloader.modellist.length;j++){ for(let j=0;j<assetloader.modellist.length;j++){
if(assetloader.modellist[j].type == "stationInside"){ if(assetloader.modellist[j].type == "stationInside"){
selectmesh1 = assetloader.modellist[j].mesh; selectmesh1 = assetloader.modellist[j].mesh;
@ -202,6 +200,8 @@ export function StationStandListN() {
// //
// console.log(psddata); // console.log(psddata);
for(let i=0;i<standsdata.length;i++){ for(let i=0;i<standsdata.length;i++){
let newstationstand = new StationStandModel(standsdata[i]); let newstationstand = new StationStandModel(standsdata[i]);
@ -220,6 +220,25 @@ export function StationStandListN() {
let newstationmesh = null; let newstationmesh = null;
let newclip =null; let newclip =null;
let nowModelType = "normal";
if(otherStation){
for(let o=0;o<otherStation.length;o++){
if(standsdata[i].code == otherStation[o].code){
let selectmeshother = assetloader.modelgroup[ otherStation[o].code];
newstationmesh = selectmeshother;
newclip = selectmeshother.animations[ 0 ];
nowModelType = "specil";
newstationmesh.traverse( function ( child ) {
if ( child.isMesh ) {
child.renderOrder = 9;
}
} );
}
}
}
if(nowModelType == "normal"){
if(standsdata[i].stands.length<=2){ if(standsdata[i].stands.length<=2){
if(standsdata[i].inside == undefined){ if(standsdata[i].inside == undefined){
newstationmesh = selectmesh1.clone(true); newstationmesh = selectmesh1.clone(true);
@ -235,6 +254,8 @@ export function StationStandListN() {
newstationmesh = selectmesh3.clone(true); newstationmesh = selectmesh3.clone(true);
newclip = selectmesh3.animations[ 0 ]; newclip = selectmesh3.animations[ 0 ];
} }
}
newstationmesh.code = standsdata[i].code; newstationmesh.code = standsdata[i].code;
newstationmesh.name = standsdata[i].code; newstationmesh.name = standsdata[i].code;

View File

@ -35,12 +35,12 @@ export function TdtList() {
if(stationData[k].stands[i].right == true){ if(stationData[k].stands[i].right == true){
newmesh.rotation.y = -Math.PI/2; newmesh.rotation.y = -Math.PI/2;
let pos = railData[sectionCode].lineleft.getPointAt(stopSections[sectionCode].rightStopPointOffset/stopSections[sectionCode].lengthFact); let pos = railData[sectionCode].lineleft.getPointAt(stopSections[sectionCode].rightStopPointOffset/stopSections[sectionCode].lengthFact);
newmesh.position.set(pos.x+10,0,pos.z-3); newmesh.position.set(pos.x+10,0,pos.z-1.8);
}else{ }else{
newmesh.rotation.y = Math.PI/2; newmesh.rotation.y = Math.PI/2;
let pos = railData[sectionCode].lineright.getPointAt(stopSections[sectionCode].rightStopPointOffset/stopSections[sectionCode].lengthFact); let pos = railData[sectionCode].lineright.getPointAt(stopSections[sectionCode].rightStopPointOffset/stopSections[sectionCode].lengthFact);
newmesh.position.set(pos.x-10,0,pos.z+3); newmesh.position.set(pos.x-10,0,pos.z+1.8);
} }

View File

@ -127,7 +127,7 @@ export default {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : ''; return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
}, },
domIdConfirm() { domIdConfirm() {
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : ''; return this.dialogShow ? OperationEvent.Signal.arrangementRoute.confirm.domId : '';
}, },
title() { title() {
return '办理进路'; return '办理进路';
@ -262,10 +262,10 @@ 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}, 1).then(({valid, operate})=>{ commitOperate({operation:OperationEvent.Signal.arrangementRoute.confirm.operation}, {routeCode: this.row.code}, 1).then(({valid, operate})=>{
this.loading = false; this.loading = false;
if (valid) { if (valid) {
this.$refs.passwordBox.doShow(operate); this.$refs.passwordBox.doShow({operation:OperationEvent.Signal.arrangementRoute.menu.operation});
this.doClose(); this.doClose();
} }
}).catch((error) => { }).catch((error) => {

View File

@ -24,7 +24,7 @@ export default {
stepVOList: [ stepVOList: [
{ deviceType: '04', orderNum: 1, operateCode: '301', tip: '鼠标右键菜单选择【办理进路】' }, { deviceType: '04', orderNum: 1, operateCode: '301', tip: '鼠标右键菜单选择【办理进路】' },
{ deviceType: '04', orderNum: 2, operateCode: '3011', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' }, { deviceType: '04', orderNum: 2, operateCode: '3011', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' },
{ deviceType: '04', orderNum: 3, operateCode: '301', tip: '鼠标左键点击【执行】按钮' }, { deviceType: '04', orderNum: 3, operateCode: '3012', tip: '鼠标左键点击【执行】按钮' },
{ deviceType: '04', orderNum: 4, operateCode: '301', tip: '输入密码123点击【确定】按钮' } { deviceType: '04', orderNum: 4, operateCode: '301', tip: '输入密码123点击【确定】按钮' }
] ]
}, },
@ -101,7 +101,7 @@ export default {
stepVOList: [ stepVOList: [
{ deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' }, { deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' },
{ deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确定】按钮' }, { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确定】按钮' },
{ deviceType: '04', orderNum: 3, operateCode: '2994', tip: '鼠标左键点击【{5}】按钮', codeType:'SIGNAL' } { deviceType: '04', orderNum: 3, operateCode: '2994', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' }
] ]
}, },
{ // 不生成实训 { // 不生成实训
@ -173,8 +173,7 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '04', orderNum: 1, operateCode: '306', tip: '鼠标右键菜单选择【信号封锁】' }, { deviceType: '04', orderNum: 1, operateCode: '306', tip: '鼠标右键菜单选择【信号封锁】' },
{ deviceType: '04', orderNum: 2, operateCode: '306', tip: '鼠标左键点击【确定】按钮' }, { deviceType: '04', orderNum: 2, operateCode: '306', tip: '鼠标左键点击【确定】按钮' }
{ deviceType: '04', orderNum: 3, operateCode: '306', tip: '输入密码123点击【确定】按钮' }
] ]
}, },
{ {
@ -187,7 +186,7 @@ export default {
trainingType: 'Signal', trainingType: 'Signal',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '04', orderNum: 1, operateCode: '2991', tip: '鼠标左键菜单选择【封锁】' }, { deviceType: '04', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【封锁】' },
{ deviceType: '04', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } { deviceType: '04', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' }
] ]
}, },
@ -202,8 +201,8 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '04', orderNum: 1, operateCode: '307', tip: '鼠标右键菜单选择【信号解封】' }, { deviceType: '04', orderNum: 1, operateCode: '307', tip: '鼠标右键菜单选择【信号解封】' },
{ deviceType: '04', orderNum: 2, operateCode: '307', tip: '鼠标左键点击【确认】按钮' }, { deviceType: '04', orderNum: 2, operateCode: '3072', tip: '鼠标左键点击【确认】按钮' },
{ deviceType: '04', orderNum: 3, operateCode: '307', tip: '输入密码123点击【确】按钮' } { deviceType: '04', orderNum: 3, operateCode: '307', tip: '输入密码123点击【确】按钮' }
] ]
}, },
{ {
@ -216,8 +215,8 @@ export default {
trainingType: 'Signal', trainingType: 'Signal',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '04', orderNum: 1, operateCode: '2992', tip: '鼠标左键菜单选择【解封】' }, { deviceType: '04', orderNum: 1, operateCode: '2992', tip: '鼠标左键点击【解封】' },
{ deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' }, { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' },
{ deviceType: '04', orderNum: 3, operateCode: '2992', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } { deviceType: '04', orderNum: 3, operateCode: '2992', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' }
] ]
}, },
@ -318,7 +317,7 @@ export default {
trainingType: 'Switch', trainingType: 'Switch',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '1010', tip: '鼠标左键菜单选择【道岔定操】' }, { deviceType: '02', orderNum: 1, operateCode: '1010', tip: '鼠标左键点击【道岔定操】' },
{ deviceType: '02', orderNum: 2, operateCode: '1010', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } { deviceType: '02', orderNum: 2, operateCode: '1010', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' }
] ]
}, },
@ -346,8 +345,8 @@ export default {
trainingType: 'Switch', trainingType: 'Switch',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '1020', tip: '鼠标左键菜单选择【道岔反操】' }, { deviceType: '02', orderNum: 1, operateCode: '1020', tip: '鼠标左键点击【道岔反操】' },
{ deviceType: '02', orderNum: 2, operateCode: '1020', tip: '鼠标左键点击【{7}】按钮', codeType:'SWITCH' } { deviceType: '02', orderNum: 2, operateCode: '1020', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' }
] ]
}, },
{ {
@ -374,8 +373,8 @@ export default {
trainingType: 'Switch', trainingType: 'Switch',
productTypes: ['01'], // 现地操作 productTypes: ['01'], // 现地操作
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '1030', tip: '鼠标左键菜单选择【道岔单锁】' }, { deviceType: '02', orderNum: 1, operateCode: '1030', tip: '鼠标左键点击【道岔单锁】' },
{ deviceType: '02', orderNum: 2, operateCode: '1030', tip: '鼠标左键点击【{{7}}】', codeType:'SWITCH' } { deviceType: '02', orderNum: 2, operateCode: '1030', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' }
] ]
}, },
{ {
@ -402,9 +401,9 @@ export default {
trainingType: 'Switch', trainingType: 'Switch',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '1040', tip: '鼠标左键菜单选择【道岔解锁】' }, { deviceType: '02', orderNum: 1, operateCode: '1040', tip: '鼠标左键点击【道岔解锁】' },
{ deviceType: '02', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' }, { deviceType: '02', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' },
{ deviceType: '02', orderNum: 3, operateCode: '1040', tip: '鼠标左键点击【{7}】按钮', codeType:'SWITCH' } { deviceType: '02', orderNum: 3, operateCode: '1040', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' }
] ]
}, },
{ {
@ -418,7 +417,7 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '105', tip: '鼠标右键菜单选择【道岔封锁】' }, { deviceType: '02', orderNum: 1, operateCode: '105', tip: '鼠标右键菜单选择【道岔封锁】' },
{ deviceType: '02', orderNum: 2, operateCode: '105', tip: '鼠标左键点击【确定】按钮' }, { deviceType: '02', orderNum: 2, operateCode: '1051', tip: '鼠标左键点击【确定】按钮' },
{ deviceType: '02', orderNum: 3, operateCode: '105', tip: '输入密码123点击【确定】按钮' } { deviceType: '02', orderNum: 3, operateCode: '105', tip: '输入密码123点击【确定】按钮' }
] ]
}, },
@ -432,8 +431,8 @@ export default {
trainingType: 'Switch', trainingType: 'Switch',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '2991', tip: '鼠标左键菜单选择【封锁】' }, { deviceType: '02', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【封锁】' },
{ deviceType: '02', orderNum: 2, operateCode: '2991', tip: '鼠标左键点击【{7}】按钮', codeType:'SWITCH' } { deviceType: '02', orderNum: 2, operateCode: '2991', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' }
] ]
}, },
{ {
@ -447,8 +446,8 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '106', tip: '鼠标右键菜单选择【道岔解封】' }, { deviceType: '02', orderNum: 1, operateCode: '106', tip: '鼠标右键菜单选择【道岔解封】' },
{ deviceType: '02', orderNum: 2, operateCode: '106', tip: '鼠标左键点击【确】按钮' }, { deviceType: '02', orderNum: 2, operateCode: '1062', tip: '鼠标左键点击【确】按钮' },
{ deviceType: '02', orderNum: 3, operateCode: '106', tip: '输入密码123点击【确】按钮' } { deviceType: '02', orderNum: 3, operateCode: '106', tip: '输入密码123点击【确】按钮' }
] ]
}, },
{ {
@ -461,9 +460,9 @@ export default {
trainingType: 'Switch', trainingType: 'Switch',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '2992', tip: '鼠标左键菜单选择【解封】' }, { deviceType: '02', orderNum: 1, operateCode: '2992', tip: '鼠标左键点击【解封】' },
{ deviceType: '02', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' }, { deviceType: '02', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' },
{ deviceType: '02', orderNum: 3, operateCode: '2992', tip: '鼠标左键点击【{7}】按钮', codeType:'SWITCH' } { deviceType: '02', orderNum: 3, operateCode: '2992', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' }
] ]
}, },
{ {
@ -477,8 +476,8 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '02', orderNum: 1, operateCode: '109', tip: '鼠标右键菜单选择【区故解】' }, { deviceType: '02', orderNum: 1, operateCode: '109', tip: '鼠标右键菜单选择【区故解】' },
{ deviceType: '02', orderNum: 2, operateCode: '109', tip: '鼠标左键点击【确】按钮' }, { deviceType: '02', orderNum: 2, operateCode: '1092', tip: '鼠标左键点击【确】按钮' },
{ deviceType: '02', orderNum: 3, operateCode: '109', tip: '输入密码123点击【确】按钮' } { deviceType: '02', orderNum: 3, operateCode: '109', tip: '输入密码123点击【确】按钮' }
] ]
}, },
// 区段列表 // 区段列表
@ -493,8 +492,8 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '03', orderNum: 1, operateCode: '402', tip: '鼠标右键菜单选择【区故解】' }, { deviceType: '03', orderNum: 1, operateCode: '402', tip: '鼠标右键菜单选择【区故解】' },
{ deviceType: '03', orderNum: 2, operateCode: '402', tip: '鼠标左键点击【确】按钮' }, { deviceType: '03', orderNum: 2, operateCode: '4023', tip: '鼠标左键点击【确】按钮' },
{ deviceType: '03', orderNum: 3, operateCode: '402', tip: '输入密码123点击【确】按钮' } { deviceType: '03', orderNum: 3, operateCode: '402', tip: '输入密码123点击【确】按钮' }
] ]
}, },
{ {
@ -502,14 +501,14 @@ export default {
minDuration: 8, minDuration: 8,
operateType: CMD.Section.CMD_SECTION_FAULT_UNLOCK.value, operateType: CMD.Section.CMD_SECTION_FAULT_UNLOCK.value,
skinCode: '04', skinCode: '04',
trainingName: '区故解({9})', trainingName: '区故解({8}{9})',
trainingRemark: '故障解锁功能', trainingRemark: '故障解锁功能',
trainingType: 'Section', trainingType: 'Section',
productTypes: ['01'], productTypes: ['01'],
stepVOList: [ stepVOList: [
{ deviceType: '03', orderNum: 1, operateCode: '4020', tip: '鼠标右键菜单选择【区故解】' }, { deviceType: '03', orderNum: 1, operateCode: '4020', tip: '鼠标左键点击【区故解】'},
{ deviceType: '03', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' }, { deviceType: '03', orderNum: 2, operateCode: '0011', tip: '输入密码123点击【确】按钮' },
{ deviceType: '03', orderNum: 3, operateCode: '4020', tip: '鼠标左键点击【{9}】', codeType:'SECTION' } { deviceType: '03', orderNum: 3, operateCode: '4020', tip: '鼠标左键点击【{8}{9}】', codeType:'SECTION' }
] ]
}, },
{ {
@ -523,7 +522,7 @@ export default {
productTypes: ['02'], productTypes: ['02'],
stepVOList: [ stepVOList: [
{ deviceType: '03', orderNum: 1, operateCode: '410', tip: '鼠标右键菜单选择【属性】' }, { deviceType: '03', orderNum: 1, operateCode: '410', tip: '鼠标右键菜单选择【属性】' },
{ deviceType: '03', orderNum: 2, operateCode: '410', tip: '鼠标左键点击【确】按钮' } { deviceType: '03', orderNum: 2, operateCode: '410', tip: '鼠标左键点击【确】按钮' }
] ]
}, },
// 站台列表 // 站台列表

View File

@ -83,6 +83,9 @@ export default {
return this.dialogShow ? OperationEvent.Command.close.menu.domId : ''; return this.dialogShow ? OperationEvent.Command.close.menu.domId : '';
}, },
domIdConfirm() { domIdConfirm() {
if (this.operation == OperationEvent.Signal.unlock.menu.operation) {
return OperationEvent.Signal.unlock.confirm.domId;
}
return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : ''; return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : '';
}, },
title() { title() {
@ -276,8 +279,8 @@ export default {
unlock() { unlock() {
switch (this.popClass) { switch (this.popClass) {
case 'chengdou-03__systerm': case 'chengdou-03__systerm':
this.sendCommandNext(menuOperate.Signal.unlock).then(operate => { this.sendCommandNext({operation:OperationEvent.Signal.unlock.confirm.operation}).then(operate => {
this.$refs.password.doShow(operate); this.$refs.password.doShow({operation:OperationEvent.Signal.unlock.menu.operation});
}); });
break; break;
default: this.sendCommand(menuOperate.Signal.unlock); default: this.sendCommand(menuOperate.Signal.unlock);

View File

@ -85,6 +85,9 @@ export default {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : ''; return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
}, },
domIdConfirm() { domIdConfirm() {
if (this.operation == OperationEvent.Section.fault.menu.operation) {
return OperationEvent.Section.fault.confirm.domId;
}
return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : ''; return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : '';
}, },
title() { title() {
@ -187,7 +190,7 @@ export default {
// //
fault() { fault() {
const operate = { const operate = {
operation: OperationEvent.Section.fault.menu.operation operation: OperationEvent.Section.fault.confirm.operation
}; };
this.loading = true; this.loading = true;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
@ -195,7 +198,7 @@ export default {
if (valid) { if (valid) {
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
this.doClose(); this.doClose();
this.$refs.passwordBox.doShow(operate); this.$refs.passwordBox.doShow({operation: OperationEvent.Section.fault.menu.operation});
} }
}).catch(() => { }).catch(() => {
this.loading = false; this.loading = false;

View File

@ -110,6 +110,13 @@ export default {
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : ''; return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
}, },
domIdConfirm() { domIdConfirm() {
if (this.operation == OperationEvent.Switch.fault.menu.operation) {
return OperationEvent.Switch.fault.confirm.domId;
} else if (this.operation == OperationEvent.Switch.unblock.menu.operation) {
return OperationEvent.Switch.unblock.confirm.domId;
} else if (this.operation == OperationEvent.Switch.block.menu.operation) {
return OperationEvent.Switch.block.confirm.domId;
}
return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : ''; return this.dialogShow ? OperationHandler.getDomIdByOperation(this.operation) : '';
}, },
title() { title() {
@ -226,11 +233,10 @@ export default {
block() { block() {
switch (this.popClass) { switch (this.popClass) {
case 'chengdou-03__systerm': case 'chengdou-03__systerm':
this.openPasswordBox(this.operation); this.openPasswordBox(OperationEvent.Switch.block);
break; break;
default: this.sendCommand(menuOperate.Switch.block); default: this.sendCommand(menuOperate.Switch.block);
} }
}, },
// //
locate() { locate() {
@ -260,7 +266,7 @@ export default {
unblock() { unblock() {
switch (this.popClass) { switch (this.popClass) {
case 'chengdou-03__systerm': case 'chengdou-03__systerm':
this.openPasswordBox(this.operation); this.openPasswordBox(OperationEvent.Switch.unblock);
break; break;
default: this.sendCommand(menuOperate.Switch.unblock); default: this.sendCommand(menuOperate.Switch.unblock);
} }
@ -269,7 +275,7 @@ export default {
fault() { fault() {
switch (this.popClass) { switch (this.popClass) {
case 'chengdou-03__systerm': case 'chengdou-03__systerm':
this.openPasswordBox(this.operation); this.openPasswordBox(OperationEvent.Switch.fault);
break; break;
default: this.sendCommand(menuOperate.Switch.fault); default: this.sendCommand(menuOperate.Switch.fault);
} }
@ -280,9 +286,9 @@ export default {
}, },
// //
openPasswordBox(operation) { openPasswordBox(operator) {
const operate = { const operate = {
operation: operation operation: operator.confirm.operation
}; };
this.loading = true; this.loading = true;
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
@ -290,7 +296,7 @@ export default {
if (valid) { if (valid) {
this.doClose(); this.doClose();
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
this.$refs.passwordBox.doShow(operate); this.$refs.passwordBox.doShow({operation:operator.menu.operation});
} }
}).catch(() => { }).catch(() => {
this.doClose(); this.doClose();

View File

@ -38,7 +38,7 @@
import axios from 'axios'; import axios from 'axios';
import { update3dMapData } from '@/api/jlmap3d/load3ddata' import { update3dMapData } from '@/api/jlmap3d/load3ddata'
import { initDataSave } from '@/jlmap3d/edit/connect/initDataSave'; import { initDataSave } from '@/jlmap3d/edit/connect/initDataSave';
import { testgetmodels } from '@/jlmap3d/edit/connect/testgetmodels'; import { specilDataSave } from '@/jlmap3d/edit/connect/specilDataSave';
//components //components
import EditProperty from '@/views/jlmap3d/edit/component/property'; import EditProperty from '@/views/jlmap3d/edit/component/property';
import EditAction from '@/views/jlmap3d/edit/component/action'; import EditAction from '@/views/jlmap3d/edit/component/action';
@ -220,7 +220,7 @@
savetest(){ savetest(){
console.log(this.jlmap3dedit.assetManager); console.log(this.jlmap3dedit.assetManager);
let param = testgetmodels(this.jlmap3dedit); let param = specilDataSave(this.jlmap3dedit);
console.log(param); console.log(param);
update3dMapData(param).then(data => { update3dMapData(param).then(data => {
//console.log(data); //console.log(data);

View File

@ -19,7 +19,6 @@
<script> <script>
import Vue from 'vue'; import Vue from 'vue';
import { addTrainingRulesList } from '@/api/management/operation'; import { addTrainingRulesList } from '@/api/management/operation';
// import { OperationList } from '@/scripts/OperationConfig';
import { getLineCodeList } from '@/api/management/mapline'; import { getLineCodeList } from '@/api/management/mapline';
export default { export default {

View File

@ -485,12 +485,16 @@ export default {
async handleTestRunPlan() { async handleTestRunPlan() {
const data = { planId: this.$route.query.planId || this.loadRunPlanId }; const data = { planId: this.$route.query.planId || this.loadRunPlanId };
runPlanNotify(data).then(resp => { runPlanNotify(data).then(resp => {
if (resp.data) {
const query = { const query = {
prdType: '01', group: resp.data, mapId: this.$route.query.mapId, planId: this.$route.query.planId prdType: '01', group: resp.data, mapId: this.$route.query.mapId, planId: this.$route.query.planId
}; };
// this.$router.push({ path: `${UrlConfig.display}/plan`, query: query }); // this.$router.push({ path: `${UrlConfig.display}/plan`, query: query });
this.$router.push({ path: UrlConfig.design.testRunPlan, query: query }); this.$router.push({ path: UrlConfig.design.testRunPlan, query: query });
launchFullscreen(); launchFullscreen();
} else {
this.$messageBox(this.$t('error.checkTheValidityFirst'));
}
}).catch(error => { }).catch(error => {
this.$messageBox(this.$t('tip.createSimulationFaild') + this.$t('global.colon') + error.message); this.$messageBox(this.$t('tip.createSimulationFaild') + this.$t('global.colon') + error.message);
}); });

View File

@ -41,7 +41,7 @@
</el-form-item> </el-form-item>
<el-form-item :label="$t('map.endStationColon')" prop="endStationCode"> <el-form-item :label="$t('map.endStationColon')" prop="endStationCode">
<!-- :disabled="!isStartSelected" --> <!-- :disabled="!isStartSelected" -->
<el-select v-model="addModel.endStationCode" clearable :filterable="true" disabled @change="changeEndStation"> <el-select v-model="addModel.endStationCode" :filterable="true" disabled @change="changeEndStation">
<el-option <el-option
v-for="item in filterStationList" v-for="item in filterStationList"
:key="item.code" :key="item.code"
@ -56,7 +56,7 @@
>{{ $t('map.activate') }}</el-button> --> >{{ $t('map.activate') }}</el-button> -->
</el-form-item> </el-form-item>
<el-form-item :label="$t('map.endSectionColon')" prop="endSectionCode"> <el-form-item :label="$t('map.endSectionColon')" prop="endSectionCode">
<el-select v-model="addModel.endSectionCode" clearable :filterable="true" :disabled="editShow || !isStartSelected" @change="changeEndSection"> <el-select v-model="addModel.endSectionCode" :filterable="true" clearable :disabled="editShow || !isStartSelected" @change="changeEndSection">
<el-option <el-option
v-for="item in filterSectionList" v-for="item in filterSectionList"
:key="item.code" :key="item.code"
@ -90,6 +90,7 @@
<el-input v-model="addModel.remarks" type="textarea" :rows="4" :placeholder="$t('map.pleaseSelect')" /> <el-input v-model="addModel.remarks" type="textarea" :rows="4" :placeholder="$t('map.pleaseSelect')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('map.trafficSegmentData')" prop="parkSectionCodeList"> <el-form-item :label="$t('map.trafficSegmentData')" prop="parkSectionCodeList">
<el-button type="primary" size="small" :loading="generating" style="margin-bottom:10px" @click.native.prevent="generateParkSection">生成交路区段</el-button>
<el-table <el-table
:data="addModel.parkSectionCodeList" :data="addModel.parkSectionCodeList"
border border
@ -177,7 +178,7 @@
<script> <script>
import RouteOperate from './routeOperate'; import RouteOperate from './routeOperate';
import { setUID } from '@/jmapNew/utils/Uid'; import { setUID } from '@/jmapNew/utils/Uid';
import { addRoutingData, updateRoutingData } from '@/api/jmap/mapdraft'; import { addRoutingData, updateRoutingData, gernateRoutingSectionInRunplan } from '@/api/jmap/mapdraft';
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { formatName } from '@/utils/runPlan'; import { formatName } from '@/utils/runPlan';
import Sortable from 'sortablejs'; import Sortable from 'sortablejs';
@ -194,6 +195,7 @@ export default {
isStartSelected:false, isStartSelected:false,
allowSelect:false, allowSelect:false,
loading: false, loading: false,
generating:false,
stationCode: '', stationCode: '',
sectionCode: '', sectionCode: '',
DirectionCodeList: [{label: '右行', value: true}, {label: '左行', value: false}], DirectionCodeList: [{label: '右行', value: true}, {label: '左行', value: false}],
@ -368,6 +370,10 @@ export default {
} else if (selected._type.toUpperCase() === 'Section'.toUpperCase() && this.field.toUpperCase() === 'endSectionCode'.toUpperCase()) { } else if (selected._type.toUpperCase() === 'Section'.toUpperCase() && this.field.toUpperCase() === 'endSectionCode'.toUpperCase()) {
// selected.reentryTrack || // selected.reentryTrack ||
if (selected.standTrack || selected.transferTrack) { if (selected.standTrack || selected.transferTrack) {
if (this.addModel.startSectionCode == selected.code) {
this.$message.error('起始区段和终到区段不能相同');
return false;
}
if (selected.belongStation) { if (selected.belongStation) {
this.addModel.endStationCode = selected.belongStation; this.addModel.endStationCode = selected.belongStation;
} }
@ -451,12 +457,19 @@ export default {
this.addEndSectionData(true); this.addEndSectionData(true);
}, },
changeEndSection(data) { changeEndSection(data) {
if (data) {
const section = this.$store.getters['map/getDeviceByCode'](data); const section = this.$store.getters['map/getDeviceByCode'](data);
if (section.belongStation) { if (section.belongStation) {
this.addModel.endStationCode = section.belongStation; this.addModel.endStationCode = section.belongStation;
} }
this.addModel.destinationCode = section.destinationCode || '';
this.judgeAllowSelected(); this.judgeAllowSelected();
this.addEndSectionData(false); this.addEndSectionData(false);
} else {
this.addModel.endStationCode = '';
this.addModel.endSectionCode = '';
this.addModel.parkSectionCodeList.pop();
}
}, },
judgeAllowSelected() { judgeAllowSelected() {
if (this.addModel.startStationCode != '' && this.addModel.startSectionCode != '' && this.addModel.endStationCode != '' && this.addModel.endSectionCode != '') { if (this.addModel.startStationCode != '' && this.addModel.startSectionCode != '' && this.addModel.endStationCode != '' && this.addModel.endSectionCode != '') {
@ -507,7 +520,7 @@ export default {
}); });
}, },
save() { save() {
this.addModel; // this.addModel;
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
if (valid) { if (valid) {
this.loading = true; this.loading = true;
@ -603,11 +616,12 @@ export default {
} }
} else { } else {
if (index < 0) { if (index < 0) {
if (list.length >= 2) { // debugger;
list.splice(list.length - 1, 1, data); // if (list.length >= 2) {
} else { // list.splice(list.length - 1, 1, data);
// } else {
list.push(data); list.push(data);
} // }
} else { } else {
if (index == 0 && list.length >= 2) { if (index == 0 && list.length >= 2) {
this.addModel.endSectionCode = list[list.length - 1].sectionCode; this.addModel.endSectionCode = list[list.length - 1].sectionCode;
@ -632,6 +646,22 @@ export default {
this.sectionCode = ''; this.sectionCode = '';
this.stationCode = ''; this.stationCode = '';
} }
},
generateParkSection() {
this.$refs.form.validate((valid) => {
if (valid) {
this.generating = true;
gernateRoutingSectionInRunplan(this.buildModel(setUID('Routing'))).then(resp => {
this.generating = false;
if (resp.data.parkSectionCodeList && resp.data.parkSectionCodeList.length > 2) {
this.addModel.parkSectionCodeList = resp.data.parkSectionCodeList;
}
}).catch((error) => {
this.$messageBox('生成交路区段数据失败: ' + error.message);
this.generating = false;
});
}
});
} }
} }
}; };

View File

@ -78,11 +78,11 @@ export default {
handleClick: this.createCrewScheduling, handleClick: this.createCrewScheduling,
type: '' type: ''
}, },
{ // {
name: '地图拷贝', // name: '',
handleClick: this.copyMapToOther, // handleClick: this.copyMapToOther,
type: '' // type: ''
}, // },
{ {
name: this.$t('global.delete'), name: this.$t('global.delete'),
handleClick: this.handleDelete, handleClick: this.handleDelete,
@ -157,9 +157,9 @@ export default {
this.$message.success(this.$t('publish.addEveryRunjihuaSuccess')); this.$message.success(this.$t('publish.addEveryRunjihuaSuccess'));
}).catch(() => { }); }).catch(() => { });
}, },
copyMapToOther(index, row) { // copyMapToOther(index, row) {
this.$refs.copyMap.doShow(row, this.queryForm.queryObject.mapId.config.data); // this.$refs.copyMap.doShow(row, this.queryForm.queryObject.mapId.config.data);
}, // },
// //
handleView(index, row) { handleView(index, row) {
const data = this.mapList.filter(elem => { return elem.id == row.mapId; })[0]; const data = this.mapList.filter(elem => { return elem.id == row.mapId; })[0];

View File

@ -88,6 +88,13 @@ export default {
return data.name.includes(value); return data.name.includes(value);
}, },
clickEvent(obj, data, ele, isReplace = false) { clickEvent(obj, data, ele, isReplace = false) {
if (ele) {
if ( ele.expanded) {
ele.expanded = false;
} else {
ele.expanded = true;
}
}
localStore.set('trainingPlatformCheckId' + this.filterSelect + this.userId + this.project, obj.key); localStore.set('trainingPlatformCheckId' + this.filterSelect + this.userId + this.project, obj.key);
this.mapId = obj.key.split('-')[0]; this.mapId = obj.key.split('-')[0];
if ( obj.type === 'Map') { if ( obj.type === 'Map') {