66 lines
2.9 KiB
JavaScript
66 lines
2.9 KiB
JavaScript
import store from '@/store/index_APP_TARGET';
|
||
import { getPublishMapVersionById, getPublishMapDetailById} from '@/api/jmap/map';
|
||
import { getNewMapDataByGroup } from '@/api/simulation';
|
||
|
||
// 获取地图版本数据,和store里面的map版本做比较,如果不同
|
||
// 获取发布的地图数据
|
||
// 先设置地图数据
|
||
// 清除列车数据
|
||
export function loadMapDataById(mapId) {
|
||
return new Promise((resolve, reject) => {
|
||
getPublishMapVersionById(mapId).then(resp => {
|
||
var version = resp.data;
|
||
var mapData = store.state.map.mapIdList[`mapDate_${mapId}`];
|
||
if (mapData && mapData.version == version) {
|
||
store.dispatch('map/setMapData', mapData).then(() => {
|
||
store.dispatch('map/clearJlmapTrainView').then(() => {
|
||
resolve();
|
||
});
|
||
});
|
||
} else {
|
||
getPublishMapDetailById(mapId).then(res => {
|
||
mapData = res.data;
|
||
store.dispatch('map/setMapDataIdList', {mapData, mapId});
|
||
store.dispatch('map/setMapData', mapData).then(() => {
|
||
store.dispatch('map/clearJlmapTrainView').then(() => {
|
||
resolve();
|
||
});
|
||
});
|
||
}).catch(error => {
|
||
reject(error);
|
||
});
|
||
}
|
||
}).catch(error => {
|
||
reject(error);
|
||
});
|
||
});
|
||
}
|
||
export function loadNewMapDataByGroup(group) {
|
||
return new Promise((resolve, reject) => {
|
||
getNewMapDataByGroup(group).then(resp => {
|
||
resp.data.graphDataNew && resp.data.graphDataNew.trainList && resp.data.graphDataNew.trainList.forEach(item => {
|
||
item.code = item.groupNumber;
|
||
});
|
||
const mapData = resp.data.graphDataNew;
|
||
store.dispatch('map/setMapData', mapData).then(() => {
|
||
store.dispatch('map/clearJlmapTrainView').then(() => {
|
||
resolve();
|
||
});
|
||
});
|
||
const routeData = resp.data.logicDataNew.routeList; // 设置进路数据
|
||
const overlapData = resp.data.logicDataNew.overlapList;
|
||
const autoReentryData = resp.data.logicDataNew.autoReentryList; // 自动折返数据
|
||
const signalApproachSectionData = resp.data.logicDataNew.signalApproachSectionList; // 信号机接近区段数据
|
||
store.dispatch('map/setRouteData', routeData);
|
||
store.dispatch('map/setOverlapData', overlapData);
|
||
store.dispatch('map/setAutoReentryData', autoReentryData);
|
||
store.dispatch('map/setSignalApproachSectionData', signalApproachSectionData);
|
||
const mapConfig = resp.data.configVO;
|
||
store.dispatch('map/setMapConfig', mapConfig);
|
||
store.dispatch('map/setMapVersion', resp.data.version);
|
||
}).catch(error => {
|
||
reject(error);
|
||
});
|
||
});
|
||
}
|