Squashed commit of the following:
All checks were successful
master分支构建发布到公网服务器 / Build-Publish (push) Successful in 10m24s
All checks were successful
master分支构建发布到公网服务器 / Build-Publish (push) Successful in 10m24s
commit1b0ddc2740
Author: joylink_zhaoerwei <Bob_Engineer@163.com> Date: Mon May 27 17:39:39 2024 +0800 Squashed commit of the following: commitcef55a4c6b
Author: joylink_zhaoerwei <Bob_Engineer@163.com> Date: Mon May 27 17:09:01 2024 +0800 三维url调整 commit869c86b94d
Author: joylink_zhaoerwei <Bob_Engineer@163.com> Date: Mon May 27 16:57:01 2024 +0800 更改三维地址 commitdc2165733e
Author: joylink_zhaoerwei <Bob_Engineer@163.com> Date: Mon May 27 16:33:48 2024 +0800 场景添加三维场景,实训中可根据url打开三维场景(待测试) commit7d774db362
Merge:b66515eba
0c5bba7c0
Author: joylink_fanyuhong <18706759286@163.com> Date: Tue May 21 16:48:35 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commit0c5bba7c0f
Author: joylink_fanyuhong <18706759286@163.com> Date: Tue May 21 16:47:37 2024 +0800 传输信号机调整 commitef9165faa4
Author: joylink_fanyuhong <18706759286@163.com> Date: Thu May 16 15:43:56 2024 +0800 third commitae74123f18
Author: joylink_fanyuhong <18706759286@163.com> Date: Wed May 8 09:17:37 2024 +0800 成都工学院第三方登录调整 commitb1baeaabcd
Author: joylink_fanyuhong <18706759286@163.com> Date: Tue May 7 15:46:29 2024 +0800 成都工业学院第三方登录调整 commitb66515ebad
Merge:5cf57c4d2
91a8410dc
Author: joylink_fanyuhong <18706759286@163.com> Date: Wed Apr 24 11:01:32 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commit91a8410dc2
Author: joylink_fanyuhong <18706759286@163.com> Date: Wed Apr 24 10:58:02 2024 +0800 道岔名称背景颜色更换透明色 commit5cf57c4d2f
Merge:5ca4f2be8
c97def5fc
Author: joylink_fanyuhong <18706759286@163.com> Date: Mon Apr 22 17:16:40 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commit5ca4f2be8d
Merge:66a376298
31376bc22
Author: joylink_fanyuhong <18706759286@163.com> Date: Mon Apr 22 16:10:23 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commit66a3762987
Merge:9dab09e4d
5be2cea1c
Author: joylink_fanyuhong <18706759286@163.com> Date: Mon Apr 22 15:53:54 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commit9dab09e4d0
Merge:b8f90509e
dda44c870
Author: joylink_fanyuhong <18706759286@163.com> Date: Mon Apr 22 09:33:42 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commitb8f90509eb
Merge:26d9cc892
5548806ea
Author: joylink_fanyuhong <18706759286@163.com> Date: Sun Apr 21 17:51:33 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commit26d9cc892f
Merge:ce8d3f453
3fc31777a
Author: joylink_fanyuhong <18706759286@163.com> Date: Fri Apr 19 22:27:07 2024 +0800 Merge remote-tracking branch 'origin/develop' into local-test commitce8d3f4531
Author: fan <fanyuhong@joylink.club> Date: Fri Apr 19 22:25:43 2024 +0800 iscs退出仿真调整&iscs绘制地图调整 commit98662ec177
Author: fan <fanyuhong@joylink.club> Date: Fri Apr 19 18:25:09 2024 +0800 实时广播问题调整&注释iscs信号系统&stationNav换成车站名称&iscs点击修改mode
This commit is contained in:
parent
c97def5fca
commit
27418dc041
@ -323,3 +323,11 @@ export function isExistEmail(params) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 成工院第三方登录
|
||||||
|
export function cgyThirdLogin(data) {
|
||||||
|
return request({
|
||||||
|
url: '/api/login/cgy/third',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
});
|
||||||
|
}
|
||||||
|
@ -189,6 +189,13 @@ class SkinCode extends defaultStyle {
|
|||||||
},
|
},
|
||||||
lowButton:{
|
lowButton:{
|
||||||
display: false // 现地 信号机按钮
|
display: false // 现地 信号机按钮
|
||||||
|
},
|
||||||
|
transmission: { // 传输信号机
|
||||||
|
fillColor: '#f00',
|
||||||
|
fillColorVirtual: '#f00',
|
||||||
|
sideLength: 20,
|
||||||
|
textColor: '#fff',
|
||||||
|
strokeColor: '#00FFFF'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -233,6 +233,13 @@ class SkinCode extends defaultStyle {
|
|||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
distance: 20,
|
distance: 20,
|
||||||
defaultText: 'E'
|
defaultText: 'E'
|
||||||
|
},
|
||||||
|
transmission: { // 传输信号机
|
||||||
|
fillColor: '#f00',
|
||||||
|
fillColorVirtual: '#f00',
|
||||||
|
sideLength: 20,
|
||||||
|
textColor: '#fff',
|
||||||
|
strokeColor: '#00FFFF'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -931,8 +931,8 @@ class Signal extends Group {
|
|||||||
// 隐藏自动信号和自动进路
|
// 隐藏自动信号和自动进路
|
||||||
setAutoClose() {
|
setAutoClose() {
|
||||||
if (this.style.Signal.auto.autoRouteType != 'text') {
|
if (this.style.Signal.auto.autoRouteType != 'text') {
|
||||||
this.sigAuto.hide();
|
this.sigAuto && this.sigAuto.hide();
|
||||||
this.sigAuto.setColor(this.style.backgroundColor);
|
this.sigAuto && this.sigAuto.setColor(this.style.backgroundColor);
|
||||||
} else {
|
} else {
|
||||||
this.sigName.setColor(this.style.Signal.text.defaultColor);
|
this.sigName.setColor(this.style.Signal.text.defaultColor);
|
||||||
}
|
}
|
||||||
|
@ -326,9 +326,9 @@ export default class Switch extends Group {
|
|||||||
}
|
}
|
||||||
|
|
||||||
this.name.getTextRect().animateStyle(true)
|
this.name.getTextRect().animateStyle(true)
|
||||||
.when(0, { textFill: this.style.backgroundColor })
|
.when(0, { textFill: this.style.transparentColor })
|
||||||
.when(1000, { textFill: this.style.Switch.text.borderColor })
|
.when(1000, { textFill: this.style.Switch.text.borderColor })
|
||||||
.when(2000, { textFill: this.style.backgroundColor })
|
.when(2000, { textFill: this.style.transparentColor })
|
||||||
.start();
|
.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -354,7 +354,7 @@ export default class Switch extends Group {
|
|||||||
this.lockCircle && this.lockCircle.hide(); // 圆形包围框
|
this.lockCircle && this.lockCircle.hide(); // 圆形包围框
|
||||||
this.lockArc && this.lockArc.hide(); // 圆形单锁框
|
this.lockArc && this.lockArc.hide(); // 圆形单锁框
|
||||||
this.name.getNameText().stopAnimation(false);
|
this.name.getNameText().stopAnimation(false);
|
||||||
this.name.getTextRect().setStyle({ fill: this.style.backgroundColor });
|
this.name.getTextRect().setStyle({ fill: this.style.transparentColor });
|
||||||
this.shapeModelC && this.shapeModelC.hide(); // 形状 C
|
this.shapeModelC && this.shapeModelC.hide(); // 形状 C
|
||||||
this.shapeModelA && this.shapeModelA.hide(); // 形状 A
|
this.shapeModelA && this.shapeModelA.hide(); // 形状 A
|
||||||
this.shapeModelB && this.shapeModelB.hide(); // 形状 B
|
this.shapeModelB && this.shapeModelB.hide(); // 形状 B
|
||||||
@ -626,7 +626,7 @@ export default class Switch extends Group {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (this.style.Switch.core.specialCircle) {
|
if (this.style.Switch.core.specialCircle) {
|
||||||
this.name.getTextRect().setStyle({ fill: this.style.backgroundColor });
|
this.name.getTextRect().setStyle({ fill: this.style.transparentColor });
|
||||||
this.setTextColor(this.style.Switch.text.guideMasterLockColor);
|
this.setTextColor(this.style.Switch.text.guideMasterLockColor);
|
||||||
} else {
|
} else {
|
||||||
this.setTextColor(this.style.Switch.text.monolockLocationColor);
|
this.setTextColor(this.style.Switch.text.monolockLocationColor);
|
||||||
@ -911,7 +911,7 @@ export default class Switch extends Group {
|
|||||||
this.setHasTextBorder(1, this.style.Switch.text.fpLockBorderColor);
|
this.setHasTextBorder(1, this.style.Switch.text.fpLockBorderColor);
|
||||||
}
|
}
|
||||||
if (this.style.Switch.core.specialCircle) {
|
if (this.style.Switch.core.specialCircle) {
|
||||||
this.name.getTextRect().setStyle({ fill: this.style.backgroundColor });
|
this.name.getTextRect().setStyle({ fill: this.style.transparentColor });
|
||||||
this.setTextColor(this.style.Switch.text.fpLockColor);
|
this.setTextColor(this.style.Switch.text.fpLockColor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,7 @@ import { getFrontProjectConfigByLogin} from '@/api/projectConfig';
|
|||||||
import localStore from 'storejs';
|
import localStore from 'storejs';
|
||||||
import { handlerUrl } from '@/utils/baseUrl';
|
import { handlerUrl } from '@/utils/baseUrl';
|
||||||
|
|
||||||
const whiteList = ['/login', '/design/login', '/loginNew', '/gzzbxy/relay', '/authorization', '/AUSline', '/AUStool', '/demo', '/thirdLogin']; // 不重定向白名单
|
const whiteList = ['/login', '/design/login', '/loginNew', '/gzzbxy/relay', '/authorization', '/AUSline', '/AUStool', '/demo', '/thirdLogin', '/cgyLogin']; // 不重定向白名单
|
||||||
|
|
||||||
// 登录路径判断获取
|
// 登录路径判断获取
|
||||||
function getRouteInfo(to) {
|
function getRouteInfo(to) {
|
||||||
|
@ -220,6 +220,7 @@ const UserRulesManage = () => import('@/views/userRulesManage/index');
|
|||||||
const AuthorityTransfer = () => import('@/views/authorityTransfer/index');
|
const AuthorityTransfer = () => import('@/views/authorityTransfer/index');
|
||||||
const CreateDistribute = () => import('@/views/authorityTransfer/create/index');
|
const CreateDistribute = () => import('@/views/authorityTransfer/create/index');
|
||||||
const ThirdJumpSim = () => import('@/views/newMap/display/thirdJump');
|
const ThirdJumpSim = () => import('@/views/newMap/display/thirdJump');
|
||||||
|
const CgyLogin = () => import('@/views/thirdLogin/cgyLogin');
|
||||||
const TmsPage = () => import('@/views/jlmap3d/drive/sceneview/tmsPage');
|
const TmsPage = () => import('@/views/jlmap3d/drive/sceneview/tmsPage');
|
||||||
|
|
||||||
const ContestSubjectManage = () => import('@/views/contestDataManage/contestSubjectManage/ContestSubjectManage');
|
const ContestSubjectManage = () => import('@/views/contestDataManage/contestSubjectManage/ContestSubjectManage');
|
||||||
@ -430,6 +431,11 @@ export const constantRoutes = [
|
|||||||
component: ThirdJumpSim,
|
component: ThirdJumpSim,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/cgyLogin',
|
||||||
|
component: CgyLogin,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/404',
|
path: '/404',
|
||||||
component: Errpr404,
|
component: Errpr404,
|
||||||
|
@ -44,7 +44,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div style="text-align: center;margin-top: 15px;">
|
<div style="text-align: center;margin-top: 15px;">
|
||||||
<el-button v-show="nowData.ruleId" v-loading="loading" type="primary" @click="showScoreRule">评分表</el-button>
|
<el-button v-show="nowData.ruleId" v-loading="loading" type="primary" @click="showScoreRule">评分表</el-button>
|
||||||
<el-button v-show="nowData.sceneId&&nowData.scenetype!=='Video'" v-loading="loading" type="primary" @click="startTask">开始任务</el-button>
|
<el-button v-show="nowData.sceneId&&nowData.scenetype=='Local'" v-loading="loading" type="primary" @click="startTask">开始任务</el-button>
|
||||||
|
<el-button v-show="nowData.sceneId&&nowData.scenetype=='Link'" v-loading="loading" type="primary" @click="startThreeTask">开始任务</el-button>
|
||||||
<el-button v-show="nowData.sceneId&&nowData.scenetype=='Video'" type="primary" @click="playSceneVideo">播放视频</el-button>
|
<el-button v-show="nowData.sceneId&&nowData.scenetype=='Video'" type="primary" @click="playSceneVideo">播放视频</el-button>
|
||||||
<el-button v-loading="loading" type="primary" :disabled="nowKey === taskList.length-1" @click="nextTask">下一任务</el-button>
|
<el-button v-loading="loading" type="primary" :disabled="nowKey === taskList.length-1" @click="nextTask">下一任务</el-button>
|
||||||
</div>
|
</div>
|
||||||
@ -58,6 +59,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { getTaskTree, getContextSenceDetail} from '@/api/contest';
|
import { getTaskTree, getContextSenceDetail} from '@/api/contest';
|
||||||
import { createSimulationNoFunction } from '@/api/simulation';
|
import { createSimulationNoFunction } from '@/api/simulation';
|
||||||
|
import { getToken } from '@/utils/auth';
|
||||||
import { getPublishMapInfo } from '@/api/jmap/map';
|
import { getPublishMapInfo } from '@/api/jmap/map';
|
||||||
import ScoreRule from './scoreRule';
|
import ScoreRule from './scoreRule';
|
||||||
import PlayVideo from './PlayVideo';
|
import PlayVideo from './PlayVideo';
|
||||||
@ -180,6 +182,17 @@ export default {
|
|||||||
this.loading = false;
|
this.loading = false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
startThreeTask() {
|
||||||
|
this.loading = true;
|
||||||
|
getContextSenceDetail(this.nowData.sceneId).then((res) => {
|
||||||
|
const url = res.data.scene.url;
|
||||||
|
const token = getToken();
|
||||||
|
window.open(`${url}${token}`, '_blank');
|
||||||
|
this.loading = false;
|
||||||
|
}).catch(error => {
|
||||||
|
this.$message.error(error.message);
|
||||||
|
});
|
||||||
|
},
|
||||||
showScoreRule() {
|
showScoreRule() {
|
||||||
this.$refs.scoreRule.doShow(this.nowData.ruleId);
|
this.$refs.scoreRule.doShow(this.nowData.ruleId);
|
||||||
},
|
},
|
||||||
|
@ -2,16 +2,18 @@
|
|||||||
<div>
|
<div>
|
||||||
<query-list-page ref="user" :card-padding="10" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
<query-list-page ref="user" :card-padding="10" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
<upload-Video ref="uploadVideo" @reloadTable="reloadTable" />
|
<upload-Video ref="uploadVideo" @reloadTable="reloadTable" />
|
||||||
|
<add-three ref="upThree" @reloadTable="reloadTable" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { queryContestSencePaged, deleteContestSence } from '@/api/contest';
|
import { queryContestSencePaged, deleteContestSence } from '@/api/contest';
|
||||||
import UploadVideo from './UploadVideo';
|
import UploadVideo from './UploadVideo';
|
||||||
|
import addThree from './addThree';
|
||||||
export default {
|
export default {
|
||||||
name: 'ContestSeasonManage',
|
name: 'ContestSeasonManage',
|
||||||
components: {
|
components: {
|
||||||
UploadVideo
|
UploadVideo, addThree
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -92,6 +94,13 @@ export default {
|
|||||||
return row.type == 'Video';
|
return row.type == 'Video';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: '编辑',
|
||||||
|
handleClick: this.doEditLink,
|
||||||
|
showControl: row => {
|
||||||
|
return row.type == 'Link';
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: '删 除',
|
name: '删 除',
|
||||||
handleClick: this.doDelete,
|
handleClick: this.doDelete,
|
||||||
@ -101,7 +110,8 @@ export default {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
{ text: '上 传', handler: this.doUpload }
|
{ text: '上 传', handler: this.doUpload },
|
||||||
|
{ text: '添 加', handler: this.doUpThree }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -116,6 +126,12 @@ export default {
|
|||||||
doEdit(index, row) {
|
doEdit(index, row) {
|
||||||
this.$refs.uploadVideo.doShow(row.id);
|
this.$refs.uploadVideo.doShow(row.id);
|
||||||
},
|
},
|
||||||
|
doUpThree() {
|
||||||
|
this.$refs.upThree.doShow();
|
||||||
|
},
|
||||||
|
doEditLink(index, row) {
|
||||||
|
this.$refs.upThree.doShow(row.id);
|
||||||
|
},
|
||||||
doDelete(index, row) {
|
doDelete(index, row) {
|
||||||
this.$confirm('该操作将删除竞赛场景,是否继续?', '提 示', {
|
this.$confirm('该操作将删除竞赛场景,是否继续?', '提 示', {
|
||||||
confirmButtonText: '确 定',
|
confirmButtonText: '确 定',
|
||||||
|
108
src/views/contestDataManage/contestSceneManage/addThree.vue
Normal file
108
src/views/contestDataManage/contestSceneManage/addThree.vue
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog v-dialogDrag :title="title" :visible.sync="dialogVisible" width="500px" :before-close="handleClose" center :close-on-click-modal="false">
|
||||||
|
<el-form ref="ruleForm" :model="formModel" :rules="rules" label-width="100px">
|
||||||
|
<el-form-item label="场景名称:" prop="name">
|
||||||
|
<el-input v-model="formModel.name" style="width: 350px;" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="场景url:" prop="url">
|
||||||
|
<el-input v-model="formModel.url" type="textarea" style="width:350px;" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button v-loading="loading" type="primary" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
|
<el-button @click="handleClose">{{ $t('global.cancel') }}</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { saveSceneVideo, editSceneVideo, getContextSenceDetail } from '@/api/contest';
|
||||||
|
export default {
|
||||||
|
name: 'AddContestTask',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
dialogVisible: false,
|
||||||
|
formModel: {
|
||||||
|
id: '',
|
||||||
|
name: '',
|
||||||
|
url: ''
|
||||||
|
},
|
||||||
|
loading: false
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
rules() {
|
||||||
|
const crules = {
|
||||||
|
name: [
|
||||||
|
{ required: true, message: '请输入场景名称', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
url: [
|
||||||
|
{ required: true, message: '请输入场景url', trigger: 'blur' }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
return crules;
|
||||||
|
},
|
||||||
|
title() {
|
||||||
|
return this.formModel.id ? '修改三维场景' : '新建三维场景';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods:{
|
||||||
|
doShow(sceneId) {
|
||||||
|
this.dialogVisible = true;
|
||||||
|
if (sceneId) {
|
||||||
|
this.formModel.id = sceneId;
|
||||||
|
getContextSenceDetail(sceneId).then((res) => {
|
||||||
|
this.formModel.name = res.data.name;
|
||||||
|
this.formModel.url = res.data.scene.url;
|
||||||
|
}).catch(error => {
|
||||||
|
this.$message.error(error.message);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.formModel = {
|
||||||
|
id: '',
|
||||||
|
name: '',
|
||||||
|
url: ''
|
||||||
|
};
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleClose() {
|
||||||
|
this.formModel = {
|
||||||
|
id: '',
|
||||||
|
name: '',
|
||||||
|
url: ''
|
||||||
|
};
|
||||||
|
this.dialogVisible = false;
|
||||||
|
this.loading = false;
|
||||||
|
},
|
||||||
|
doSave() {
|
||||||
|
this.$refs.ruleForm.validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
this.loading = true;
|
||||||
|
const data = { name:this.formModel.name, type:'Link',
|
||||||
|
scene:{url:this.formModel.url}};
|
||||||
|
if (this.formModel.id) {
|
||||||
|
editSceneVideo(this.formModel.id, data).then(() => {
|
||||||
|
this.$message.success('修改三维场景成功!');
|
||||||
|
this.handleClose();
|
||||||
|
this.$emit('reloadTable');
|
||||||
|
}).catch(error => {
|
||||||
|
this.$message.error(error.message);
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
saveSceneVideo(data).then(() => {
|
||||||
|
this.$message.success('创建三维场景成功!');
|
||||||
|
this.handleClose();
|
||||||
|
this.$emit('reloadTable');
|
||||||
|
}).catch(error => {
|
||||||
|
this.$message.error(error.message);
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
94
src/views/thirdLogin/cgyLogin.vue
Normal file
94
src/views/thirdLogin/cgyLogin.vue
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
<template>
|
||||||
|
<div class="thirdLoginContainer">
|
||||||
|
<div class="thirdLoginMessage">
|
||||||
|
{{ message }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { cgyThirdLogin } from '@/api/management/user';
|
||||||
|
import { setToken } from '@/utils/auth';
|
||||||
|
import { createSimulation } from '@/api/simulation';
|
||||||
|
import { launchFullscreen } from '@/utils/screen';
|
||||||
|
import { getMapFunctioById } from '@/api/trainingPlatform';
|
||||||
|
import { getPublishMapInfo } from '@/api/jmap/map';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name:'CgyLogin',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
message:''
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
project() {
|
||||||
|
const project = this.$route.query.project;
|
||||||
|
return project || 'login';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
const appId = this.$route.query.appId;
|
||||||
|
const sessionId = this.$route.query.sessionId;
|
||||||
|
const timeStamp = this.$route.query.timeStamp;
|
||||||
|
const account = this.$route.query.account;
|
||||||
|
const name = this.$route.query.name;
|
||||||
|
const parentAccount = this.$route.query.parentAccount;
|
||||||
|
const functionId = this.$route.query.functionId;
|
||||||
|
if (appId && account && name) {
|
||||||
|
const data = {
|
||||||
|
appId,
|
||||||
|
sessionId,
|
||||||
|
timeStamp,
|
||||||
|
account,
|
||||||
|
name,
|
||||||
|
parentAccount,
|
||||||
|
functionId
|
||||||
|
};
|
||||||
|
this.message = '正在登陆中......';
|
||||||
|
cgyThirdLogin(data).then(resp=> {
|
||||||
|
const token = resp.data;
|
||||||
|
const header = { group: '', 'X-Token': token };
|
||||||
|
setToken(token);
|
||||||
|
this.$store.dispatch('setToken', token);
|
||||||
|
this.$store.dispatch('subscribe', {header, type:'class'});
|
||||||
|
this.enterSimulation();
|
||||||
|
}).catch(() => {
|
||||||
|
this.message = '参数有误,请检查';
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.message = '参数有误,请检查';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods:{
|
||||||
|
async enterSimulation() {
|
||||||
|
const query = {
|
||||||
|
third: true,
|
||||||
|
query: 'cgy'
|
||||||
|
};
|
||||||
|
const resp = await getMapFunctioById(this.$route.query.systemId);
|
||||||
|
query.mapId = resp.data.mapId;
|
||||||
|
query.simType = resp.data.simType;
|
||||||
|
const resp1 = await getPublishMapInfo(resp.data.mapId);
|
||||||
|
query.lineCode = resp1.data.lineCode;
|
||||||
|
createSimulation(this.$route.query.systemId).then(resp => {
|
||||||
|
query.group = resp.data;
|
||||||
|
this.$router.replace({ path: `/display/demon`, query: query });
|
||||||
|
launchFullscreen();
|
||||||
|
}).catch(error=>{
|
||||||
|
if (error.code == 10003) {
|
||||||
|
this.$messageBox(this.$t('error.createSimulationFailed') + ':您的仿真权限不足!');
|
||||||
|
} else {
|
||||||
|
this.$messageBox(this.$t('error.createSimulationFailed') + error.message);
|
||||||
|
}
|
||||||
|
this.disabled = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.thirdLoginMessage{
|
||||||
|
padding: 20px;
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
</style>
|
Loading…
Reference in New Issue
Block a user