This commit is contained in:
“sunzy” 2021-12-30 17:21:40 +08:00
commit ff7187f58f
57 changed files with 323 additions and 110 deletions

View File

@ -5,10 +5,10 @@ NODE_ENV = 'development'
# base api
# VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
# VUE_APP_BASE_API = 'http://192.168.3.4:9000'
VUE_APP_BASE_API = 'http://192.168.3.6:9000'
VUE_APP_VOICE_API = 'http://119.3.163.89/oss/joylink'
VUE_APP_UPLOAD_API = 'http://joylink.club/jlfile'
VUE_APP_BASE_SITE='https://test.joylink.club/cbtc'
# VUE_APP_BASE_API = 'http://192.168.3.6:9000'
# VUE_APP_VOICE_API = 'http://119.3.163.89/oss/joylink'
# VUE_APP_UPLOAD_API = 'http://joylink.club/jlfile'
# VUE_APP_BASE_SITE='https://test.joylink.club/cbtc'
# VUE_APP_VOICE_API = 'http://192.168.8.110:9008'

View File

@ -3,7 +3,7 @@ NODE_ENV = 'production'
VUE_APP_PRO = 'local'
# base api
VUE_APP_BASE_API = 'http://160.20.60.15:9000'
VUE_APP_VOICE_API = 'http://160.20.60.15/oss/joylink'
VUE_APP_UPLOAD_API = 'http://160.20.60.15'
VUE_APP_BASE_SITE='http://160.20.60.15'
# VUE_APP_BASE_API = 'http://160.20.60.15:9000'
# VUE_APP_VOICE_API = 'http://160.20.60.15/oss/joylink'
# VUE_APP_UPLOAD_API = 'http://160.20.60.15'
# VUE_APP_BASE_SITE='http://160.20.60.15'

View File

@ -3,7 +3,7 @@ NODE_ENV = 'production'
VUE_APP_PRO = 'ntyl'
# base api
VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
VUE_APP_VOICE_API = 'https://joylink.club/oss/joylink'
VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
VUE_APP_BASE_SITE='https://joylink.club/cbtc'
# VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
# VUE_APP_VOICE_API = 'https://joylink.club/oss/joylink'
# VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
# VUE_APP_BASE_SITE='https://joylink.club/cbtc'

View File

@ -2,7 +2,7 @@
NODE_ENV = 'production'
# base api
VUE_APP_BASE_API = 'https://api.joylink.club/jlcloud'
VUE_APP_VOICE_API = 'https://joylink.club/oss/joylink'
VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
VUE_APP_BASE_SITE='https://joylink.club/cbtc'
# VUE_APP_BASE_API = 'https://joylink.club/jlcloud'
# VUE_APP_VOICE_API = 'https://joylink.club/oss/joylink'
# VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
# VUE_APP_BASE_SITE='https://joylink.club/cbtc'

View File

@ -2,7 +2,7 @@
NODE_ENV = 'test'
# base api
VUE_APP_BASE_API = 'https://test.joylink.club/jlcloud'
VUE_APP_VOICE_API = 'https://joylink.club/oss/joylink'
VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
VUE_APP_BASE_SITE='https://test.joylink.club/cbtc'
# VUE_APP_BASE_API = 'https://test.joylink.club/jlcloud'
# VUE_APP_VOICE_API = 'https://joylink.club/oss/joylink'
# VUE_APP_UPLOAD_API = 'https://upload.joylink.club'
# VUE_APP_BASE_SITE='https://test.joylink.club/cbtc'

View File

@ -1,10 +1,10 @@
import request from '@/utils/request';
import store from '@/store/index';
const publicPath = process.env.VUE_APP_PRO == 'local' ? '' : '/cbtc';
export const JL3D_LOCAL_STATIC = publicPath+"/static";
const BASE_UPLOAD_API = process.env.VUE_APP_UPLOAD_API;
export const BASE_ASSET_API = process.env.VUE_APP_VOICE_API;
const BASE_UPLOAD_API = store.state.user.uploadUrl;
export const BASE_ASSET_API = this.$store.user.state.resourcesUrl;
// console.log(JL3D_LOCAL_STATIC);
// console.log(BASE_UPLOAD_API);
// console.log(BASE_ASSET_API);

View File

@ -92,9 +92,23 @@ export function getExamListByMapIdAndPrdType(mapId, prdType) {
}
/** 更新试卷规则 */
export function updateExamRule(data) {
return request({
url: `/api/exam/update/rules`,
method: 'put',
data:data
});
return request({
url: `/api/exam/update/rules`,
method: 'put',
data:data
});
}
/** 检查并更新【规则数据异常】状态 */
export function checkAndUpdateAbnormal(mapId) {
return request({
url: `/api/exam/checkAndUpdateAbnormal/${mapId}`,
method: 'put'
});
}
/** 重新生成考试规则 */
export function regenerateRule (mapId) {
return request({
url: `/api/exam/regenerateRules/${mapId}`,
method: 'put'
});
}

View File

@ -10,7 +10,7 @@ export const meansUrl = `/api/upload/MEANS?appId=${productIdentify}`;
// export const regulationUrl = `/api/upload/regulation?appId=${productIdentify}`;
export function getUrl(relatedUrl) {
return `${process.env.VUE_APP_UPLOAD_API}${relatedUrl}`;
return `${this.$store.state.user.uploadUrl}${relatedUrl}`;
}
export function uploadFile(url, data) {

View File

@ -75,9 +75,9 @@ export default {
loading: true,
name: 'file',
size: 3,
action: `${process.env.VUE_APP_UPLOAD_API}/api/upload/PICTURE?appId=00001&appSecret=joylink00001`,
action: `${this.$store.state.user.uploadUrl}/api/upload/PICTURE?appId=00001&appSecret=joylink00001`,
response: (res) => {
return `${process.env.VUE_APP_VOICE_API}${res.data}`;
return `${this.$store.user.state.resourcesUrl}${res.data}`;
},
error: () => { that.$message.error('图片上传失败,请检查网络状态'); },
sizeError: () => { that.$message.error('图片上传失败图片大小限制3MB'); } //

View File

@ -1,6 +1,5 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import store from '@/store/index';
import { getToken } from '@/utils/auth';
// 定于仿真socket接口
@ -43,7 +42,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,dri
let header = {'X-Token': getToken() };
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:this.topic,
token:getToken(),
};

View File

@ -20,9 +20,9 @@ import {Materialload} from '@/jlmap3d/main/loaders/Materialload.js';
import { getPublishMapDetail,getPublish3dMapDetail} from '@/api/jlmap3d/load3ddata';
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import { sendCommandNew } from '@/api/jmap/training';
import store from '@/store/index';
var clock = new THREE.Clock();
@ -176,7 +176,7 @@ export function jl3dFaultDeviceVr(dom,group,skinCode) {
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:'/user/queue/simulation/jl3d/'+group,
token:getToken(),
};

View File

@ -15,7 +15,7 @@ import {Materialload} from '@/jlmap3d/main/loaders/Materialload.js';
import { getPublishMapDetail,getPublish3dMapDetail} from '@/api/jlmap3d/load3ddata';
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import store from '@/store/index';
import { getToken } from '@/utils/auth';
import { sendCommandNew } from '@/api/jmap/training';
@ -174,7 +174,7 @@ export function Jl3dOtherVR(dom,group,skinCode) {
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:'/user/queue/simulation/jl3d/'+group,
token:getToken(),
};

View File

@ -10,9 +10,9 @@ import { ModelManagerVR } from '@/jlmap3d/jl3dmaintainer/jl3dTrainRescue/trainre
import { VRButton } from '@/jlmap3d/jl3dmaintainer/jl3dFaultDeviceVr/utils/VRButton.js';
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import { sendCommandNew } from '@/api/jmap/training';
import store from '@/store/index';
var clock = new THREE.Clock();
@ -170,7 +170,7 @@ export function Jl3dTrainRescueVr(dom,group,skinCode) {
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:'/user/queue/simulation/jl3d/'+group,
token:getToken(),
};

View File

@ -2,8 +2,8 @@ import StompClient from '@/utils/sock';
// import { getTrainingCbtcDemon, runDiagramStart, runDiagramOver, setTrainingCbtcInitTime } from '@/api/simulation';
// import { creatSubscribe, clearSubscribe, displayTopic, screenTopic } from '@/utils/stomp';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';
// 定于仿真socket接口
export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
@ -45,7 +45,7 @@ export function Maintainerconnect(jlmap3d,routegroup,jsonwebwork,lablecodemap) {
let header = {'X-Token': getToken() };
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:this.topic,
token:getToken(),
};

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,8 +1,8 @@
import { AssetModel } from '@/jlmap3d/main/loaders/model/Assetmodel';
import { Assetmaterial } from '@/jlmap3d/main/loaders/model/Assetmaterial';
import { getBaseUrl } from '@/utils/baseUrl';
import store from '@/store/index';
import { Loading } from 'element-ui';
const BASE_API = getBaseUrl();
const BASE_API = store.state.user.baseUrl;
import { JL3D_LOCAL_STATIC,BASE_ASSET_API } from '@/api/jlmap3d/assets3d.js';
let signal5 = {

View File

@ -1,6 +1,6 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import store from '@/store/index';
import { getToken } from '@/utils/auth';
// 定于仿真socket接口
@ -45,7 +45,7 @@ export function Jl3dDrivingNew(mixers,updatemmi,sound,translation,routegroup,sta
let header = {'X-Token': getToken() };
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:this.topic,
token:getToken(),
};

View File

@ -2,7 +2,7 @@ import StompClient from '@/utils/sock';
// import { getTrainingCbtcDemon, runDiagramStart, runDiagramOver, setTrainingCbtcInitTime } from '@/api/simulation';
// import { creatSubscribe, clearSubscribe, displayTopic, screenTopic } from '@/utils/stomp';
import { getBaseUrl } from '@/utils/baseUrl'
import store from '@/store/index';
import { getToken } from '@/utils/auth';
// 定于仿真socket接口
@ -46,7 +46,7 @@ export function Jlmap3dSubscribeNew(jlmap3d,routegroup,jsonwebwork) {
let header = {'X-Token': getToken() };
let connectmsg = {
type:'init',
baseurl:getBaseUrl(),
baseurl:store.state.user.baseUrl,
topic:this.topic,
token:getToken(),
};

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,5 +1,4 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -1,6 +1,5 @@
import StompClient from '@/utils/sock';
import { getBaseUrl } from '@/utils/baseUrl'
import { getToken } from '@/utils/auth';
import store from '@/store/index';

View File

@ -4,13 +4,9 @@ import {
import {
Assetmaterial
} from '@/jlmap3d/main/loaders/model/Assetmaterial';
import {
getBaseUrl
} from '@/utils/baseUrl';
import {
Loading
} from 'element-ui';
const BASE_API = getBaseUrl();
import {
JL3D_LOCAL_STATIC,
BASE_ASSET_API

View File

@ -24,7 +24,7 @@
>确定</el-button>
</div>
<div style="width:100%; padding-top: 20px">
<span> 版权所有C2010-2011 北京玖琏科技有限公司</span>
<span v-if="!thirdLogin"> 版权所有C2010-2011 北京玖琏科技有限公司</span>
</div>
</div>
</div>
@ -40,7 +40,8 @@
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import { NoCopyrightList } from '@/scripts/ProjectConfig';
import { getSessionStorage } from '@/utils/auth';
export default {
name: 'ManageUser',
data() {
@ -71,6 +72,9 @@ export default {
},
title() {
return '关于ControlMonitor';
},
thirdLogin() {
return NoCopyrightList.includes(getSessionStorage('project'));
}
},
methods: {

View File

@ -41,6 +41,7 @@
<script>
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
import { getSessionStorage } from '@/utils/auth';
import { NoCopyrightList } from '@/scripts/ProjectConfig';
export default {
name: 'ManageUser',
data() {
@ -73,7 +74,7 @@ export default {
return this.$t('menu.menuDialog.about');
},
thirdLogin() {
return getSessionStorage('project') == 'richor';
return NoCopyrightList.includes(getSessionStorage('project'));
}
},
methods: {

View File

@ -142,7 +142,7 @@ export default {
// } else {
// href = 'https://joylink.club/docs';
// }
href = process.env.VUE_APP_BASE_SITE + '/docs/';
href = this.$store.state.user.baseSite + '/docs/';
window.open(href, '_blank');
},
goEmpty() {},

View File

@ -7,7 +7,7 @@ import 'nprogress/nprogress.css';
import { setToken, getToken, removeToken, getSessionStorage } from '@/utils/auth';
import { getBaseUrlByProject } from '@/api/projectServer';
import localStore from 'storejs';
import { getBaseUrl } from '@/utils/baseUrl';
import { handlerUrl } from '@/utils/baseUrl';
const whiteList = ['/login', '/design/login', '/gzzbxy/relay', '/authorization', '/AUSline', '/AUStool', '/demo', '/thirdLogin']; // 不重定向白名单
@ -90,13 +90,13 @@ router.beforeEach( async (to, from, next) => {
if (!store.state.user.baseUrl && project && loginInfo[project]) {
try {
const resp = await getBaseUrlByProject(ProjectCode[project]);
if (resp && resp.data && resp.data.domainName) {
store.dispatch('setBaseUrl', resp.data.domainName);
} else {
store.dispatch('setBaseUrl', getBaseUrl());
}
const urlData = handlerUrl(resp.data);
store.dispatch('setBaseUrl', urlData.BASE_API);
store.dispatch('setResourcesUrl', urlData.VOICE_API);
store.dispatch('setUploadUrl', urlData.UPLOAD_API);
store.dispatch('setBaseSite', urlData.BASE_SITE);
} catch (e) {
store.dispatch('setBaseUrl', getBaseUrl());
console.error(e);
}
}
document.title = loginInfo[project || 'login'] ? loginInfo[project || 'login'].browserTitle || loginInfo[project || 'login'].title : '';

View File

@ -761,6 +761,10 @@ export const NoQrcodeList = ['heb', 'designheb', 'cgy', 'designcgy', 'ntyl', 'de
/** 综合演练 无二维码 */
export const NoSimulationQrCodeList = ['heb', 'bjd'];
export const RegisterCodeList = ['cgy', 'designcgy'];
/** 展示中航锐创联系我们 */
export const RichorContectUsList = ['richor', 'richorygy'];
/** 帮助中不展示版权(福州 佛山) */
export const NoCopyrightList = ['richor', 'richorygy'];
/** 导航栏快速切换平台 */
export const goOtherPlatformMenu = {
login: '/design/login',

View File

@ -21,7 +21,10 @@ const user = {
companyAdmin: false,
companyName: '',
companyProjectList: [],
baseUrl:''
baseUrl:'',
resourcesUrl: '',
uploadUrl: '',
baseSite: ''
},
mutations: {
@ -81,6 +84,15 @@ const user = {
},
setBaseUrl: (state, baseUrl) => {
state.baseUrl = baseUrl;
},
setResourcesUrl: (state, resourcesUrl) => {
state.resourcesUrl = resourcesUrl;
},
setUploadUrl: (state, uploadUrl) => {
state.uploadUrl = uploadUrl;
},
setBaseSite: (state, baseSite) => {
state.baseSite = baseSite;
}
},
@ -213,6 +225,15 @@ const user = {
setBaseUrl ({commit}, baseUrl) {
commit('setBaseUrl', baseUrl);
},
setResourcesUrl({commit}, resourcesUrl) {
commit('setResourcesUrl', resourcesUrl);
},
setUploadUrl({commit}, uploadUrl) {
commit('setUploadUrl', uploadUrl);
},
setBaseSite({commit}, baseSite) {
commit('setBaseSite', baseSite);
},
setToken({commit}, token) {
commit('SET_TOKEN', token);
}

View File

@ -1,6 +1,29 @@
export function getBaseUrl() {
import store from '@/store/index';
// export function getBaseUrl() {
// let BASE_API;
// if (process.env.NODE_ENV === 'development') {
// // BASE_API = 'https://joylink.club/jlcloud';
// // BASE_API = 'https://test.joylink.club/jlcloud';
// // BASE_API = 'http://114.116.51.125/jlcloud';
// // BASE_API = 'http://192.168.8.152:9000'; // 袁琪
// // BASE_API = 'http://192.168.8.172:9200'; // 旭强
// // BASE_API = 'http://192.168.8.109:9000'; // 张赛
// // BASE_API = 'http://192.168.8.140:9000'; // 杜康
// // BASE_API = 'http://b29z135112.zicp.vip';
// // BASE_API = 'http://2925963m2a.zicp.vip'; // 杜康
// BASE_API = 'http://2i38984j47.qicp.vip'; // 张赛
// } else {
// BASE_API = process.env.VUE_APP_BASE_API;
// }
// return BASE_API;
// }
export function handlerUrl(data) {
let BASE_API;
let VOICE_API;
let UPLOAD_API;
let BASE_SITE;
if (process.env.NODE_ENV === 'development') {
// const data = null;
// BASE_API = 'https://joylink.club/jlcloud';
BASE_API = 'https://test.joylink.club/jlcloud';
// BASE_API = 'http://114.116.51.125/jlcloud';
@ -10,9 +33,35 @@ export function getBaseUrl() {
// BASE_API = 'http://192.168.8.140:9000'; // 杜康
// BASE_API = 'http://b29z135112.zicp.vip';
// BASE_API = 'http://2925963m2a.zicp.vip'; // 杜康
// BASE_API = 'http://2i38984j47.qicp.vip'; // 张赛
} else {
BASE_API = process.env.VUE_APP_BASE_API;
BASE_API = 'http://2i38984j47.qicp.vip'; // 张赛
BASE_API = data && data.domainName ? data.domainName : BASE_API;
VOICE_API = data && data.resourcesDomainName ? data.resourcesDomainName : 'https://joylink.club/oss/joylink';
UPLOAD_API = 'http://joylink.club/jlfile';
BASE_SITE = 'https://test.joylink.club/cbtc';
} else if (process.env.NODE_ENV === 'test') {
BASE_API = data && data.domainName ? data.domainName : 'https://test.joylink.club/jlcloud';
VOICE_API = data && data.resourcesDomainName ? data.resourcesDomainName : 'https://joylink.club/oss/joylink';
UPLOAD_API = 'http://joylink.club/jlfile';
BASE_SITE = 'https://test.joylink.club/cbtc';
} else if (process.env.NODE_ENV === 'production' && process.env.VUE_APP_PRO === 'local') {
BASE_API = 'http://160.20.60.15:9000';
VOICE_API = 'http://160.20.60.15/oss/joylink';
UPLOAD_API = 'http://160.20.60.15';
BASE_SITE = 'http://160.20.60.15';
} else if (process.env.NODE_ENV === 'production' && process.env.VUE_APP_PRO === 'ntyl') {
BASE_API = 'https://joylink.club/jlcloud';
VOICE_API = 'https://joylink.club/oss/joylink';
UPLOAD_API = 'http://joylink.club/jlfile';
BASE_SITE = 'https://joylink.club/cbtc';
} else if (process.env.NODE_ENV === 'production') {
BASE_API = data && data.domainName ? data.domainName : 'https://joylink.club/jlcloud';
// store.dispatch('setBaseUrl', data && data.domainName ? data.domainName : BASE_API);
VOICE_API = data && data.resourcesDomainName ? data.resourcesDomainName : 'https://joylink.club/oss/joylink';
// store.dispatch('setResourcesUrl', data && data.resourcesDomainName ? data.resourcesDomainName : VOICE_API);
UPLOAD_API = 'http://joylink.club/jlfile';
// store.dispatch('setUploadUrl', UPLOAD_API);
BASE_SITE = 'https://joylink.club/cbtc';
// store.dispatch('setBaseSite', BASE_SITE);
}
return BASE_API;
return {BASE_API, VOICE_API, UPLOAD_API, BASE_SITE};
}

View File

@ -1,9 +1,9 @@
import Vue from 'vue';
import { getBaseUrl } from '@/utils/baseUrl';
import store from '@/store/index';
// 创建或者打开数据库
export function openIndexedDB() {
const baseUrl = getBaseUrl();
const baseUrl = store.state.user.baseUrl;
const indexedDBName = baseUrl.replace(/http.?:\/\/(.*)[\/|:].*/, '$1');
const request = window.indexedDB.open(indexedDBName, 1);
request.onerror = function (event) {

View File

@ -4,17 +4,17 @@ import qs from 'qs';
import { i18n } from '@/main.js';
import { MessageBox } from 'element-ui';
import { getToken } from '@/utils/auth';
import { getBaseUrl } from '@/utils/baseUrl';
import { handlerUrl } from '@/utils/baseUrl';
import { EventBus } from '@/scripts/event-bus';
import ConstConfig from '@/scripts/ConstConfig';
import Vue from 'vue';
import router from '../router/index';
const BASE_API = getBaseUrl();
const urlData = handlerUrl();
// 创建axios实例
const service = axios.create({
baseURL: BASE_API, // api的base_url
baseURL: urlData.BASE_API, // api的base_url
withCredentials: true, // 跨域请求时是否需要使用凭证
timeout: 600000 // 请求超时时间
});

View File

@ -1,16 +1,15 @@
import { getToken } from '@/utils/auth';
import { checkLoginLine } from '@/api/login';
import { getBaseUrl } from '@/utils/baseUrl';
import { MessageBox } from 'element-ui';
import store from '@/store/index';
import Stomp from 'stompjs';
const isDev = process.env.NODE_ENV === 'development';
const isTest = process.env.NODE_ENV === 'test';
const websocketUrl = `${getBaseUrl()}/joylink-websocket?token=`;
const reconnectInterval = [1000, 3000, 5000, 10000, 30000, 60000];
var StompClient = function (headers) {
const websocketUrl = `${store.state.user.baseUrl}/joylink-websocket?token=`;
this.url = websocketUrl + getToken();
this.headers = headers || {};
this.subscribeMap = new Map(); // 已订阅,对象{dest:'', handler:function, sub: Object}

View File

@ -95,7 +95,7 @@ export default {
resultMap: {},
loading: false,
audioPlayId: '',
baseUrl:process.env.VUE_APP_VOICE_API
baseUrl:this.$store.user.state.resourcesUrl
};
},
watch: {

View File

@ -84,7 +84,7 @@ export default {
recordSendingId: null,
audioDataMap: {},
audioPlayId: '',
baseUrl:process.env.VUE_APP_VOICE_API
baseUrl:this.$store.user.state.resourcesUrl
};
},
watch: {

View File

@ -26,7 +26,7 @@ export default {
}, //
computed: {
action() {
return `${process.env.VUE_APP_UPLOAD_API}${pictureUrl}`;
return `${this.$store.state.user.uploadUrl}${pictureUrl}`;
},
draft() {
return this.$route.query.draft;
@ -56,7 +56,7 @@ export default {
});
uploadFile(action, that.formData).then(resp => {
const imgUrl = process.env.VUE_APP_VOICE_API + resp.data;
const imgUrl = this.$store.user.state.resourcesUrl + resp.data;
insertImgFn(imgUrl);
}).catch(error => { console.log(error); });
};

View File

@ -204,7 +204,7 @@ export default {
},
avatarUrl(val) {
if (val && val.creatorAvatarPath) {
return process.env.VUE_APP_VOICE_API + val.creatorAvatarPath;
return this.$store.user.state.resourcesUrl + val.creatorAvatarPath;
} else {
return 'https://joylink.club/oss/wxmicro_assistant/userhead/defaultuser.png';
}

View File

@ -84,7 +84,7 @@ export default {
// yuyin:yuyin,
currentAudioIndex:0,
isPlay:false,
baseUrl:process.env.VUE_APP_VOICE_API
baseUrl: this.$store.user.state.resourcesUrl
};
},
watch:{

View File

@ -35,6 +35,7 @@
<script>
import wchat from '@/assets/wchat.png';
import { getSessionStorage } from '@/utils/auth';
import { RichorContectUsList } from '@/scripts/ProjectConfig';
export default {
name:'',
data() {
@ -45,7 +46,7 @@ export default {
},
computed:{
thirdLogin() {
return getSessionStorage('project') == 'richor';
return RichorContectUsList.includes(getSessionStorage('project'));
}
},
methods:{

View File

@ -94,7 +94,7 @@ export default {
columnValue: (row) => {
return row.abnormal ? '异常' : '正常';
},
tagType: (row) => { return ''; }
tagType: (row) => { return row.abnormal ? 'danger' : 'success'; }
},
{
title: '开始时间',

View File

@ -0,0 +1,109 @@
<template>
<el-dialog v-dialogDrag :title="title" :visible.sync="dialogShow" :before-close="handleCancel" :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="140px">
<el-form-item label="试卷地图" prop="trainingType">
<el-select v-model="form.mapId" placeholder="地图" style="width:240px;">
<el-option v-for="nor in mapIdList" :key="nor.id" :label="nor.name" :value="nor.id"/>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="handleCancel">{{ $t('global.cancel') }}</el-button>
<el-button v-if="type === 'check'" type="primary" @click="handleCheck">校验</el-button>
<el-button v-if="type === 'regenerate'" type="primary" @click="handleRegenerate">重新生成</el-button>
</div>
</el-dialog>
</template>
<script>
import { checkAndUpdateAbnormal, regenerateRule } from '@/api/management/exam';
export default {
name: 'EditRule',
props: {
mapIdList: {
type: Array,
required:true
}
},
data() {
return {
title: '',
form: {
mapId: ''
},
dialogShow: false,
type: '',
rules: {
mapId: [
{ required: true, message: '请选择地图数据', trigger: 'change' }
]
},
typeList: [],
operationTypeList: []
};
},
mounted() {},
methods: {
doShow(type) {
this.type = type;
this.dialogShow = true;
this.$nextTick(() => {
this.$refs.form.resetFields();
if (type === 'check') {
this.title = '校验试卷规则';
} else if (type === 'regenerate') {
this.title = '重新生成试卷规则';
}
});
},
handleCancel() {
this.type = '';
this.title = '';
this.form.mapId = '';
this.dialogShow = false;
},
handleCheck() {
this.$refs['form'].validate((valid) => {
if (valid) {
checkAndUpdateAbnormal(this.form.mapId).then(resp => {
this.$message.success('校验试卷规则成功!');
this.$emit('reload');
this.handleCancel();
}).catch(e => {
this.$message.error('校验试卷规则失败!');
this.handleCancel();
});
}
});
},
handleRegenerate() {
this.$refs['form'].validate((valid) => {
if (valid) {
regenerateRule(this.form.mapId).then(resp => {
this.$message.success('重新生成试卷规则成功!');
this.handleCancel();
}).catch(e => {
this.$message.error('重新生成试卷规则失败!');
this.handleCancel();
});
}
});
}
}
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
/deep/ {
.el-dialog {
width: 600px;
}
.el-form-item__content {
width: calc(100% - 80px);
}
.el-cascader {
width: 100%;
}
}
</style>

View File

@ -2,12 +2,12 @@
<el-dialog v-dialogDrag :title="title" :visible.sync="dialogShow" :before-close="handleCancel" :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="140px">
<el-form-item :label="$t('publish.trainingType')" prop="trainingType">
<el-select v-model="form.trainingType" :placeholder="$t('publish.selectTypeScope')" :disabled="editOk" style="width:240px;" @change="changeCourse">
<el-select v-model="form.trainingType" :placeholder="$t('publish.selectTypeScope')" style="width:240px;" @change="changeCourse">
<el-option v-for="nor in trainingTypeList" :key="nor.value" :label="nor.label" :value="nor.value" :disabled="nor.disabled" />
</el-select>
</el-form-item>
<el-form-item :label="$t('publish.operationType')" prop="operateType">
<el-select v-model="form.operateType" clearable :placeholder="$t('publish.selectScope')" :disabled="editOk" @change="changeOperation">
<el-select v-model="form.operateType" clearable :placeholder="$t('publish.selectScope')" @change="changeOperation">
<el-option v-for="nor in operationTypeList" :key="nor.value" :label="nor.label" :value="nor.value" :disabled="nor.disabled" />
</el-select>
</el-form-item>
@ -146,6 +146,7 @@ export default {
changeCourse(val) {
this.operationTypeList = this.operationTypeMap[val];
this.topicNum = this.trainingTypeNums[val];
this.form.operateType = '';
},
changeOperation(val) {
if (val) {

View File

@ -12,7 +12,7 @@
<template slot-scope="scope">
<span>{{ scope.row.num }}</span>
<el-tooltip v-if="checkNum(scope.row)" effect="dark" content="题库数量不足" placement="top">
<span style="color:red;cursor: pointer;">!</span>
<i class="el-icon-warning-outline"></i>
</el-tooltip>
</template>
</el-table-column>
@ -274,6 +274,7 @@ export default {
}
},
handleForm(data) {
this.changeCourseDisable();
this.indexCourse = data.$index;
const list = JSON.stringify(data.row);
const detail = JSON.parse(list);

View File

@ -8,6 +8,7 @@
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
</el-scrollbar>
</div>
<check-or-regenerate ref="checkOrRegenerate" :map-id-list="mapIdList" @reload="reload" />
</div>
</template>
@ -15,9 +16,13 @@
import { getExamList, deleteExam, setExamEfficacy, setExamEffectivey } from '@/api/management/exam';
import { UrlConfig } from '@/scripts/ConstDic';
import { getPublishMapListOnline } from '@/api/jmap/map';
import CheckOrRegenerate from './checkOrRegenerate'
export default {
name: 'List',
components: {
CheckOrRegenerate
},
data() {
return {
BizTypeList: [],
@ -112,7 +117,7 @@ export default {
columnValue: (row) => {
return row.abnormal ? '异常' : '正常';
},
tagType: (row) => { return ''; }
tagType: (row) => { return row.abnormal ? 'danger' : 'success'; }
},
{
type: 'button',
@ -159,6 +164,8 @@ export default {
actions: [
{ text: this.$t('global.add'), btnCode: 'employee_insert', handler: this.handleNormalAdd },
{ text: this.$t('global.back'), show: !this.$route.path.includes('device'), btnCode: 'employee_back', handler: this.handlerBack },
{ text: '检查', show: !this.$route.path.includes('device'), btnCode: 'employee_back', handler: this.handleCheck },
{ text: '重新生成', show: !this.$route.path.includes('device'), btnCode: 'employee_back', handler: this.handleRegenerate },
{ text: '退出', show: this.$route.path.includes('device'), btnCode: 'employee_back', handler: this.handelQuit}
]
}
@ -177,6 +184,7 @@ export default {
reset: true
} : {
labelWidth: '160px',
leftSpan: 17,
queryObject: {
'name': {
type: 'text',
@ -298,6 +306,15 @@ export default {
},
handelQuit() {
window.close();
},
reload() {
this.queryList.reload();
},
handleCheck() {
this.$refs.checkOrRegenerate.doShow('check');
},
handleRegenerate() {
this.$refs.checkOrRegenerate.doShow('regenerate');
}
}
};

View File

@ -24,7 +24,8 @@ export default {
formModel: {
id: '',
domainName: '',
project: ''
project: '',
resourcesDomainName: ''
},
loading: false
};
@ -34,7 +35,8 @@ export default {
const form = {
labelWidth: '120px',
items: [
{ prop: 'domainName', label: '域名', type: 'text', required: true, placeholder: '请输入域名' },
{ prop: 'domainName', label: '接口域名', type: 'text', required: true, placeholder: '请输入域名' },
{ prop: 'resourcesDomainName', label: '资源域名', type: 'text', required: true, placeholder: '请输入域名' },
{ prop: 'project', label: '项目', type: 'select', required: true, options: this.projectList, placeholder: '请选择项目' }
]
};
@ -43,7 +45,10 @@ export default {
rules() {
const crules = {
domainName: [
{ required: true, message: '请输入域名', trigger: 'blur' }
{ required: true, message: '请输入接口域名', trigger: 'blur' }
],
resourcesDomainName: [
{ required: true, message: '请输入资源域名', trigger: 'blur' }
],
project: [
{ required: true, message: '请选择项目', trigger: 'change' }
@ -63,6 +68,7 @@ export default {
this.formModel.id = data.id;
this.formModel.domainName = data.domainName;
this.formModel.project = data.project;
this.formModel.resourcesDomainName = data.resourcesDomainName;
}
this.dialogVisible = true;
},
@ -72,7 +78,8 @@ export default {
const data = {
id: this.formModel.id,
domainName: this.formModel.domainName,
project: this.formModel.project.toUpperCase()
project: this.formModel.project.toUpperCase(),
resourcesDomainName: this.formModel.resourcesDomainName
};
if (data.id) {
updateProjectServer(data.id, data).then(resp => {
@ -99,7 +106,8 @@ export default {
this.formModel = {
id: '',
domainName: '',
project: ''
project: '',
resourcesDomainName: ''
};
this.$refs.dataform.resetForm();
this.dialogVisible = false;

View File

@ -44,9 +44,13 @@ export default {
indexShow: true,
columns: [
{
title: '域名',
title: '接口域名',
prop: 'domainName'
},
{
title: '资源域名',
prop: 'resourcesDomainName'
},
{
title: '项目名称',
prop: 'projectCode',

View File

@ -57,7 +57,7 @@ export default {
},
computed: {
action() {
return `${process.env.VUE_APP_UPLOAD_API}${meansUrl}`;
return `${this.$store.state.user.uploadUrl}${meansUrl}`;
},
form() {
const form = {

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';

View File

@ -1,6 +1,5 @@
// importScripts('sockjs.js');
// import { getToken } from '@/utils/auth';
// import { getBaseUrl } from '@/utils/baseUrl';
// import SockJS from 'sockjs-client';
// const websocketUrl = 'ws://test.joylink.club/jlcloud/joylink-websocket?token=';