This commit is contained in:
zyy 2020-04-02 09:08:21 +08:00
commit dca7f94ad8
43 changed files with 366 additions and 328 deletions

View File

@ -1,87 +1,87 @@
{
"name": "vue-admin-template",
"version": "4.1.0",
"description": "A vue admin template with Element UI & axios & iconfont & permission control & lint",
"author": "Pan <panfree23@gmail.com>",
"license": "MIT",
"scripts": {
"dev": "vue-cli-service serve --open",
"build": "vue-cli-service build",
"test": "vue-cli-service build --mode staging",
"local": "vue-cli-service build --mode native",
"preview": "node build/index.js --preview",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml"
},
"dependencies": {
"axios": "0.18.0",
"echarts": "^4.7.0",
"element-ui": "^2.12.0",
"file-saver": "^1.3.3",
"js-cookie": "2.2.0",
"js-md5": "^0.7.3",
"lodash": "^4.17.11",
"normalize.css": "7.0.0",
"nprogress": "^0.2.0",
"path-to-regexp": "2.4.0",
"qrcode.vue": "^1.6.2",
"script-loader": "^0.7.2",
"sessionstorage": "^0.1.0",
"sockjs-client": "^1.4.0",
"stompjs": "^2.3.3",
"storejs": "^1.0.25",
"three": "^0.107.0",
"vue": "^2.6.10",
"vue-i18n": "^8.12.0",
"vue-router": "^3.1.6",
"vuedraggable": "^2.23.2",
"vuex": "^3.1.0",
"xlsx": "^0.14.2",
"zrender": "^4.0.4"
},
"devDependencies": {
"@babel/core": "7.0.0",
"@babel/register": "7.0.0",
"@vue/cli-plugin-babel": "3.6.0",
"@vue/cli-plugin-eslint": "3.6.0",
"@vue/cli-plugin-unit-jest": "3.6.3",
"@vue/cli-service": "3.6.0",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "^9.5.1",
"babel-core": "7.0.0-bridge.0",
"babel-eslint": "10.0.1",
"babel-jest": "23.6.0",
"babel-plugin-syntax-dynamic-import": "^6.18.0",
"babel-preset-env": "1.6.1",
"babel-preset-stage-2": "6.24.1",
"chalk": "2.4.2",
"compression-webpack-plugin": "^3.1.0",
"connect": "3.6.6",
"copy-webpack-plugin": "^4.5.2",
"eslint": "5.15.3",
"eslint-plugin-vue": "5.2.2",
"file-loader": "^3.0.1",
"html-webpack-plugin": "3.2.0",
"mockjs": "1.0.1-beta3",
"node-sass": "^4.9.0",
"runjs": "^4.3.2",
"sass-loader": "^7.1.0",
"script-ext-html-webpack-plugin": "2.1.3",
"script-loader": "^0.7.2",
"serve-static": "^1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.2",
"vue-template-compiler": "2.6.11"
},
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
]
"name": "vue-admin-template",
"version": "4.1.0",
"description": "A vue admin template with Element UI & axios & iconfont & permission control & lint",
"author": "Pan <panfree23@gmail.com>",
"license": "MIT",
"scripts": {
"dev": "vue-cli-service serve --open",
"build": "vue-cli-service build",
"test": "vue-cli-service build --mode staging",
"local": "vue-cli-service build --mode native",
"preview": "node build/index.js --preview",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml"
},
"dependencies": {
"axios": "0.18.0",
"echarts": "^4.7.0",
"element-ui": "^2.12.0",
"file-saver": "^1.3.3",
"js-cookie": "2.2.0",
"js-md5": "^0.7.3",
"lodash": "^4.17.11",
"normalize.css": "7.0.0",
"nprogress": "^0.2.0",
"path-to-regexp": "2.4.0",
"qrcode.vue": "^1.6.2",
"script-loader": "^0.7.2",
"sessionstorage": "^0.1.0",
"sockjs-client": "^1.4.0",
"stompjs": "^2.3.3",
"storejs": "^1.0.25",
"three": "^0.107.0",
"vue": "^2.6.10",
"vue-i18n": "^8.12.0",
"vue-router": "^3.1.6",
"vuedraggable": "^2.23.2",
"vuex": "^3.1.0",
"xlsx": "^0.14.2",
"zrender": "^4.0.4"
},
"devDependencies": {
"@babel/core": "7.0.0",
"@babel/register": "7.0.0",
"@vue/cli-plugin-babel": "3.6.0",
"@vue/cli-plugin-eslint": "3.6.0",
"@vue/cli-plugin-unit-jest": "3.6.3",
"@vue/cli-service": "3.6.0",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "^9.5.1",
"babel-core": "7.0.0-bridge.0",
"babel-eslint": "10.0.1",
"babel-jest": "23.6.0",
"babel-plugin-syntax-dynamic-import": "^6.18.0",
"babel-preset-env": "1.6.1",
"babel-preset-stage-2": "6.24.1",
"chalk": "2.4.2",
"compression-webpack-plugin": "^3.1.0",
"connect": "3.6.6",
"copy-webpack-plugin": "^4.5.2",
"eslint": "5.15.3",
"eslint-plugin-vue": "5.2.2",
"file-loader": "^3.0.1",
"html-webpack-plugin": "3.2.0",
"mockjs": "1.0.1-beta3",
"node-sass": "^4.9.0",
"runjs": "^4.3.2",
"sass-loader": "^7.1.0",
"script-ext-html-webpack-plugin": "2.1.3",
"script-loader": "^0.7.2",
"serve-static": "^1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.2",
"vue-template-compiler": "2.6.11"
},
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
]
}

View File

@ -3,7 +3,7 @@ export default {
designhomePage: '公共地图',
designUserPage: '个人地图',
newDesignUserPage: '新版地图',
newDesignUserPage: '地图绘制',
mapManage: '地图管理',
skinManage: '皮肤管理',

View File

@ -902,7 +902,7 @@ export function SectionList() {
// console.log(sectiondata[i]);
// console.log(testmesh2);
console.log(newsection);
// console.log(newsection);
testmesh2.geometry = newrail;
testmesh2.geometry.attributes.position.needsUpdate = true;
testmesh2.geometry.attributes.uv.needsUpdate = true;

View File

@ -181,6 +181,7 @@ export function StationStandList() {
if(jlmapstanddata[j].inside == true){
newstationmesh = assetloader.modellist[num].mesh.clone(true);
}else{
console.log(jlmapstanddata[j]);
newstationmesh = assetloader.modellist[num2].mesh.clone(true);
}
// console.log(jlmapstanddata[j]);
@ -190,7 +191,6 @@ export function StationStandList() {
newstationstand.direction1.name = standsdata[i].direction1.name;
newstationstand.direction2.code = standsdata[i].direction2.code;
newstationstand.direction2.name = standsdata[i].direction2.name;
console.log(standsdata[i]);
// console.log(standsdata[i]);
newstationmesh.position.x = standsdata[i].position.x;
newstationmesh.position.y = standsdata[i].position.y;

View File

@ -1,13 +1,13 @@
export function Signallightload(lights) {
settexture(lights, "red", 'https://test.joylink.club/oss/wx/signal/1.jpg');
settexture(lights, "red", '../../static/model/device/signal/1.jpg');
settexture(lights, "yellow", 'https://test.joylink.club/oss/wx/signal/2.jpg');
settexture(lights, "yellow", '../../static/model/device/signal/2.jpg');
settexture(lights, "green", 'https://test.joylink.club/oss/wx/signal/3.jpg');
settexture(lights, "green", '../../static/model/device/signal/3.jpg');
settexture(lights, "black", 'https://test.joylink.club/oss/wx/signal/4.jpg');
settexture(lights, "black", '../../static/model/device/signal/4.jpg');
}
function settexture(lights, name, textureurl) {

View File

@ -5,7 +5,7 @@ var Staticmodel = {
deviceType: "Switch",
type: "fuzhou",
picUrl: "",
assetUrl: "https://joylink.club/oss/wx/switch/switch.FBX"
assetUrl: "./../static/model/device/switch/switch.FBX"
},//"https://joylink.club/oss/wx/switch/switch.FBX"
//../../static/model/device/switch.FBX
Signal: {
@ -14,7 +14,7 @@ var Staticmodel = {
deviceType: "Signal",
type: "low",
picUrl: "",
assetUrl: "https://joylink.club/oss/wx/signal/signal.FBX"
assetUrl: "../../static/model/device/signal/signal.FBX"
},
stationstand: {
id: "3",
@ -22,7 +22,7 @@ var Staticmodel = {
deviceType: "stationstand",
type: "low",
picUrl: "",
assetUrl: "../../static/model/device/stationstand.FBX"
assetUrl: "../../static/model/device/stationstand/stationstand.FBX"
//https://joylink.club/oss/wx/stationstand/stationstand.FBX
//../../static/model/device/stationstand.FBX

View File

@ -178,6 +178,7 @@ export function Jl3ddeviceNew(dom,group,token) {
} else if (data.normalPosition == "1") {
scope.modelmanager.switchmodel.normalPosition = "1";
scope.modelmanager.switchmodel.action.reset();
scope.modelmanager.switchmodel.action.time = scope.modelmanager.switchmodel.action._clip.duration;
scope.modelmanager.switchmodel.action.timeScale = 1;
scope.modelmanager.switchmodel.action.play();
@ -201,20 +202,19 @@ export function Jl3ddeviceNew(dom,group,token) {
}
this.updateaction = function (data) {
if (data.type == "SWITCH") {
if (data.normal == "0") {
scope.modelmanager.switchmodel.normalPosition = "0";
scope.modelmanager.switchmodel.action.reset();
scope.modelmanager.switchmodel.action.time = 0;
scope.modelmanager.switchmodel.action.timeScale = -1;
scope.modelmanager.switchmodel.action.timeScale = 1;
scope.modelmanager.switchmodel.action.play();
} else if (data.normal == "1") {
scope.modelmanager.switchmodel.normalPosition = "1";
scope.modelmanager.switchmodel.action.reset();
scope.modelmanager.switchmodel.action.time = scope.modelmanager.switchmodel.action._clip.duration;
scope.modelmanager.switchmodel.action.timeScale = 1;
scope.modelmanager.switchmodel.action.timeScale = -1;
scope.modelmanager.switchmodel.action.play();
}
@ -271,19 +271,19 @@ export function Jl3ddeviceNew(dom,group,token) {
}
function initstatus(data) {
if (data._type == "Switch") {
if (data.normalPosition == "0") {
scope.modelmanager.switchmodel.normalPosition = "0";
scope.modelmanager.switchmodel.action.reset();
scope.modelmanager.switchmodel.action.time = 0;
scope.modelmanager.switchmodel.action.timeScale = -1;
scope.modelmanager.switchmodel.action.time = scope.modelmanager.switchmodel.action._clip.duration;
scope.modelmanager.switchmodel.action.timeScale = 1;
scope.modelmanager.switchmodel.action.play();
} else if (data.normalPosition == "1") {
scope.modelmanager.switchmodel.normalPosition = "1";
scope.modelmanager.switchmodel.action.reset();
scope.modelmanager.switchmodel.action.time = scope.modelmanager.switchmodel.action._clip.duration;
scope.modelmanager.switchmodel.action.timeScale = 1;
scope.modelmanager.switchmodel.action.time = 0;
scope.modelmanager.switchmodel.action.timeScale = -1;
scope.modelmanager.switchmodel.action.play();
}
}

View File

@ -102,7 +102,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
return;
}
if(data.type == "Train_Hmi_3D"){
console.log(data.body);
// console.log(data.body);
trainhmi(data.body);
return;
}

View File

@ -90,7 +90,7 @@ var views = [
width: 0.5,
height: 0.5,
background: new THREE.Color( 0.5, 0.5, 0.7 ),
eye: [ 3.7, 17, 26 ],
eye: [ 3.7, 16, 26 ],
up: [3.7, 10 ,16 ],
fov: 30
},
@ -100,7 +100,7 @@ var views = [
width: 0.5,
height: 0.5,
background: new THREE.Color( 0.5, 0.5, 0.7 ),
eye: [ 3.7,30,-4 ],
eye: [ 3.7,17,-4 ],
up: [ 3.7, 10 ,16],
fov: 30
},
@ -120,8 +120,8 @@ var views = [
width: 0.5,
height: 0.5,
background: new THREE.Color( 0.5, 0.7, 0.7 ),
eye: [ -1,12,0],
up: [-1, 11, 8],
eye: [ -7,17,2],
up: [-7, 10, 8],
fov: 60
}
];
@ -229,6 +229,9 @@ export function Jl3dpassflow(dom) {
originhuman1.remove(originhuman1.children[2]);
scene.add(rungroup);
loadingInstance.close();
scope.switchrender(false);
animate();
})

View File

@ -77,7 +77,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
// }
if (event.data.type== 'SIGNAL' && signallist) {
signalupdate(event.data);
console.log(event.data);
// console.log(event.data);
return;
}

View File

@ -125,7 +125,7 @@ export function DriverLoadNew(data,scope,netdata,mapdata,sectionlist,signallist,
backdata.loaderdata(sectionlist,linklist,signallist,stationstandlist,trainlisttest,realsectionlist,rails);
scope.Subscribe.updatamap(sectionlist,linklist,signallist,stationstandlist,trainlisttest,realsectionlist,rails,scope.materiallist,scope.actions,scope.sceneload);
scope.webwork.postMessage("on");
// console.log(stationstandlist);
console.log(scene);
// updatemenulist(stationstandlist.list,trainlisttest.list);
loadingInstance.close();
});

View File

@ -369,7 +369,7 @@ export const asyncRouter = [
redirect: '/design/userlist/home',
component: Layout,
meta: {
roles: [admin, user]
roles: [admin]
},
children: [
{
@ -387,7 +387,7 @@ export const asyncRouter = [
meta: {
}
},
{ // 地图绘制
{ // 地图 绘制
path: 'map/draw/:mapId/:view',
component: Mapedit,
hidden: true
@ -855,7 +855,7 @@ export const asyncRouter = [
redirect: '/design/usermap/home',
component: Layout,
meta: {
roles: [admin]
roles: [admin, user]
},
children: [
{

View File

@ -3,72 +3,75 @@
<div id="jl3d" class="jl3ddraw">
</div>
<div class="menutop">
<!-- <div class="menutop">
<el-button-group>
<el-button type="primary" @click="switchrender">{{rendermode}}</el-button>
</el-button-group>
</div>
</div> -->
<div class="menudown">
<el-button-group>
<el-button type="primary" @click="back">退出</el-button>
</el-button-group>
</div>
</div>
</template>
<script>
import Vue from 'vue';
import { Jl3dpassflow } from '@/jlmap3d/jl3dpassflow/jl3dpassflow.js';
import Vue from 'vue';
import { Jl3dpassflow } from '@/jlmap3d/jl3dpassflow/jl3dpassflow.js';
import { ProjectIcon } from '@/scripts/ConstDic';
export default {
name: 'Passflow',
components: {
export default {
name: 'passflow',
components: {
},
data() {
return {
jl3d: null,
rendermode:'监控视角',
renderswitch:true
};
},
computed: {
code() {
return this.$route.query.code;
}
},
watch: {
},
data() {
return {
jl3d: null,
rendermode:"监控视角",
renderswitch:true,
}
},
watch: {
},
created() {
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.$route.query.project];
},
mounted() {
this.init();
},
},
computed: {
code() {
return this.$route.query.code;
}
},
mounted() {
this.init();
},
beforeDestroy() {
},
methods: {
init: function () {
// let mapdata = this.$store.state.socket.device;
let dom = document.getElementById('jl3d');
this.jl3d = new Jl3dpassflow(dom);
},
switchrender(){
if(this.renderswitch == true){
this.rendermode = "退出监控";
this.renderswitch = false;
this.jl3d.switchrender(this.renderswitch);
}else{
this.rendermode = "监控视角";
this.renderswitch = true;
this.jl3d.switchrender(this.renderswitch);
}
},
back(){
window.close();
},
}
}
beforeDestroy() {
},
methods: {
init: function () {
// let mapdata = this.$store.state.socket.device;
const dom = document.getElementById('jl3d');
this.jl3d = new Jl3dpassflow(dom);
},
switchrender() {
if (this.renderswitch == true) {
this.rendermode = '退出监控';
this.renderswitch = false;
this.jl3d.switchrender(this.renderswitch);
} else {
this.rendermode = '监控视角';
this.renderswitch = true;
this.jl3d.switchrender(this.renderswitch);
}
},
back() {
window.close();
}
}
};
</script>
<style scoped>
/* #jl3d {

View File

@ -6,15 +6,13 @@
<el-button-group>
<!-- <el-button type="primary" @click="raystand">站台选择</el-button>
<el-button type="primary" @click="raytrain">列车选择</el-button> -->
<el-button type="primary" @click="railmove">{{$t('jlmap3d.cameraRailMove')}}</el-button>
<el-button type="primary" @click="railmove">{{ $t('jlmap3d.cameraRailMove') }}</el-button>
<!-- <el-button type="primary" @click="raysection">{{$t('jlmap3d.trackCheck')}}</el-button>
<el-button type="primary" @click="rayswitch">{{$t('jlmap3d.turnoutCheck')}}</el-button>
<el-button type="primary" @click="raysignal">{{$t('jlmap3d.signalCheck')}}</el-button> -->
<el-button type="primary" @click="back">{{$t('global.exit')}}</el-button>
<el-button type="primary" @click="back">{{ $t('global.exit') }}</el-button>
</el-button-group>
</div>
<Jlmap3d-Menu :trainlist="trainlist" :stationlist="stationlist" @sstation="sstation" @strain="strain" />
@ -49,148 +47,150 @@ import { JLmap3d } from '@/jlmap3d/jl3dsimulation/jlmap3d.js';
import Jlmap3dMenu from '@/views/jlmap3d/simulation/show/menu';
import Jlmap3dConfig from '@/views/jlmap3d/simulation/show/configmenu';
import { ProjectIcon } from '@/scripts/ConstDic';
// import Jlmap3dMsg from '@/views/jlmap3d/show/msg';
var train;
export default {
name: 'Jl3dSimulation',
components: {
Jlmap3dMenu,
Jlmap3dConfig
// Jlmap3dMsg
// ShowProperty
},
data() {
return {
trainlist: null,
stationlist: null,
msgdata: null,
name: 'Jl3dSimulation',
components: {
Jlmap3dMenu,
Jlmap3dConfig
// Jlmap3dMsg
// ShowProperty
},
data() {
return {
trainlist: null,
stationlist: null,
msgdata: null,
training: {
id: '',
name: '',
remarks: ''
},
training: {
id: '',
name: '',
remarks: ''
},
mapdata: null,
jlmap3d: null,
selectmodel: null,
mapid:null,
group:null,
token:null
};
},
beforeDestroy() {
// console.log("destroy");
if (this.jlmap3d) {
this.jlmap3d.webwork.postMessage('off');
this.jlmap3d.webwork.terminate();
this.jlmap3d.jsonwebwork.terminate();
this.jlmap3d.dispose();
this.jlmap3d = null;
// this.$destroy();
}
},
mounted() {
window.updatemenulist = this.updatemenulist;
this.getParams();
mapdata: null,
jlmap3d: null,
selectmodel: null,
mapid:null,
group:null,
token:null
};
},
beforeDestroy() {
// console.log("destroy");
if (this.jlmap3d) {
this.jlmap3d.webwork.postMessage('off');
this.jlmap3d.webwork.terminate();
this.jlmap3d.jsonwebwork.terminate();
this.jlmap3d.dispose();
this.jlmap3d = null;
// this.$destroy();
}
},
created() {
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.$route.query.project];
},
mounted() {
window.updatemenulist = this.updatemenulist;
this.getParams();
// console.log("");
},
methods: {
getParams:function(){
var routerParams = this.$route.query.group
this.mapid = this.$route.query.mapid;
this.group = this.$route.query.group;
this.token = this.$route.query.token;
this.init(this.mapid,this.group);
},
show: function (skinCode,group) {
if (this.jlmap3d == null) {
this.init(skinCode,group);
} else {
// this.jlmap3d.restart();
this.jlmap3d.eventon();
this.jlmap3d.animateon();
methods: {
getParams:function() {
var routerParams = this.$route.query.group;
this.mapid = this.$route.query.mapid;
this.group = this.$route.query.group;
this.token = this.$route.query.token;
this.init(this.mapid, this.group);
},
show: function (skinCode, group) {
if (this.jlmap3d == null) {
this.init(skinCode, group);
} else {
// this.jlmap3d.restart();
this.jlmap3d.eventon();
this.jlmap3d.animateon();
}
},
init: function (skinCode,group) {
const mapdata = this.$store.getters['map/map'];
const dom = document.getElementById('app');
let project = this.$route.query.project;
// console.log(project);
}
},
init: function (skinCode, group) {
const mapdata = this.$store.getters['map/map'];
const dom = document.getElementById('app');
const project = this.$route.query.project;
// console.log(project);
if (project) {
if(project){
this.jlmap3d = new JLmap3d(dom, mapdata, skinCode, this.$store, group, project);
} else {
this.jlmap3d = new JLmap3d(dom, mapdata, skinCode,this.$store,group,project);
}else{
this.jlmap3d = new JLmap3d(dom, mapdata, skinCode, this.$store, group, '');
}
this.jlmap3d.eventon();
},
raystand() {
this.jlmap3d.rayswitch('stand');
},
raytrain() {
this.jlmap3d.rayswitch('train');
},
raysection() {
this.jlmap3d.rayswitch('section');
},
raysignal() {
this.jlmap3d.rayswitch('signal');
},
rayswitch() {
this.jlmap3d.rayswitch('switch');
},
railmove() {
this.jlmap3d.camerarailmove();
},
showstationmsg(showtype) {
this.jlmap3d.showstationmsg(showtype);
},
showtrainmsg(showtype) {
this.jlmap3d.showtrainmsg(showtype);
},
updatemenulist(stationlist, trainlist) {
const stations = [];
for (const k in stationlist) {
stations.push(stationlist[k]);
}
const trains = [];
for (const k in trainlist) {
trains.push(trainlist[k]);
}
this.stationlist = stations;
this.trainlist = trains;
// console.log(this.stationlist);
},
this.jlmap3d = new JLmap3d(dom, mapdata, skinCode,this.$store,group,"");
}
this.jlmap3d.eventon();
},
raystand() {
this.jlmap3d.rayswitch('stand');
},
raytrain() {
this.jlmap3d.rayswitch('train');
},
raysection() {
this.jlmap3d.rayswitch('section');
},
raysignal() {
this.jlmap3d.rayswitch('signal');
},
rayswitch() {
this.jlmap3d.rayswitch('switch');
},
railmove() {
this.jlmap3d.camerarailmove();
},
showstationmsg(showtype) {
this.jlmap3d.showstationmsg(showtype);
},
showtrainmsg(showtype) {
this.jlmap3d.showtrainmsg(showtype);
},
updatemenulist(stationlist, trainlist) {
let stations = [];
for (let k in stationlist) {
stations.push(stationlist[k]);
}
let trains = [];
for (let k in trainlist) {
trains.push(trainlist[k]);
}
this.stationlist = stations;
this.trainlist = trains;
// console.log(this.stationlist);
},
sstation(changedata) {
this.jlmap3d.updatecamera(changedata.mesh, 'station');
},
strain(changedata) {
sstation(changedata) {
this.jlmap3d.updatecamera(changedata.mesh, 'station');
},
strain(changedata) {
if (changedata.dispose == false) {
this.jlmap3d.updatecamera(changedata, 'train');
}
if (changedata.dispose == false) {
this.jlmap3d.updatecamera(changedata, 'train');
}
},
},
back() {
window.close();
// this.$emit('showpanel');
// this.jlmap3d.eventoff();
// this.jlmap3d.animateoff();
// this.jlmap3d = null;
}
back() {
window.close();
// this.$emit('showpanel');
// this.jlmap3d.eventoff();
// this.jlmap3d.animateoff();
// this.jlmap3d = null;
}
}
}
};
</script>

View File

@ -190,6 +190,9 @@ export default {
},
isShowScheduling() {
return this.$route.query.prdType == '05';
},
project() {
return getSessionStorage('project');
}
},
watch: {
@ -508,7 +511,7 @@ export default {
mapid:this.mapId,
group:this.group,
token:getToken(),
project:getSessionStorage('project')
project: this.project
}
});
window.open(routeData.href, '_blank', 'noopener noreferrer');
@ -518,7 +521,8 @@ export default {
const routeData = this.$router.resolve({
path:'/jlmap3d/passengerflow',
query:{
mapid:this.mapId
mapid:this.mapId,
project: this.project
}
});
window.open(routeData.href, '_blank', 'noopener noreferrer');

View File

@ -20,6 +20,7 @@ import MapPublish from './publish';
import MapPublish3d from './publish3d';
import { mapGetters } from 'vuex';
import { saveMap } from '@/api/jmap/mapdraft';
import { superAdmin, admin } from '@/router/index_APP_TARGET';
export default {
name: 'MapOperateMenu',
@ -46,32 +47,6 @@ export default {
},
data() {
return {
menuMap: [
{
label: this.$t('map.updateObj'),
handler: this.updateObj
},
{
label: this.$t('map.updateObjAxis'),
handler: this.updateObjAxis
},
{
label: this.$t('map.saveAs'),
handler: this.saveAs
},
{
label: this.$t('map.deleteObj'),
handler: this.deleteObj
},
{
label: this.$t('map.jlmap3d'),
handler: this.jlmap3d
},
{
label: this.$t('map.publish3d'),
handler: this.publish3d
}
],
publishMapMenu: {
label: this.$t('map.publish'),
handler: this.publish
@ -95,15 +70,68 @@ export default {
hasRelease() {
return this.$store.state.user.roles.includes('04') ||
this.$store.state.user.roles.includes('05');
},
menuMap() {
if (this.$store.state.user.roles.includes(superAdmin) || this.$store.state.user.roles.includes(admin)) {
return [
{
label: this.$t('map.updateObj'),
handler: this.updateObj
},
{
label: this.$t('map.updateObjAxis'),
handler: this.updateObjAxis
},
{
label: this.$t('map.saveAs'),
handler: this.saveAs
},
{
label: this.$t('map.deleteObj'),
handler: this.deleteObj
},
{
label: this.$t('map.jlmap3d'),
handler: this.jlmap3d
},
{
label: this.$t('map.publish3d'),
handler: this.publish3d
},
{
label: this.$t('map.publish'),
handler: this.publish
}
];
} else {
return [
{
label: this.$t('map.updateObj'),
handler: this.updateObj
},
{
label: this.$t('map.updateObjAxis'),
handler: this.updateObjAxis
},
{
label: this.$t('map.saveAs'),
handler: this.saveAs
},
{
label: this.$t('map.deleteObj'),
handler: this.deleteObj
}
];
}
}
},
watch: {
'$store.state.menuOperation.menuCount': function (val) {
if (this.$store.getters['menuOperation/checkDialogIsOpen'](DeviceMenu.Map)) {
this.menu = [...this.menuMap];
if (this.hasRelease) {
this.menu.push(this.publishMapMenu);
}
// if (this.hasRelease) {
// this.menu.push(this.publishMapMenu);
// }
this.doShow(this.$store.state.menuOperation.menuPosition);
} else if (this.$store.getters['menuOperation/checkDialogIsOpen'](DeviceMenu.Cancel)) {
this.initCancelMenu();
@ -214,12 +242,12 @@ export default {
}).catch(() => {
});
},
publish3d(){
this.doClose();
this.doClose();
if (this.$refs && this.$refs.publish3d) {
this.$refs.publish3d.show();
}
publish3d() {
this.doClose();
this.doClose();
if (this.$refs && this.$refs.publish3d) {
this.$refs.publish3d.show();
}
},
jlmap3d() {
this.$emit('jlmap3d');

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 375 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB