Merge branch 'test' of https://git.code.tencent.com/lian-cbtc/jl-client into test
This commit is contained in:
commit
0f33f9d876
@ -47,7 +47,7 @@ export default {
|
||||
created() {
|
||||
const project = getSessionStorage('project');
|
||||
if (project) {
|
||||
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.project];
|
||||
document.querySelector("link[rel*='icon']").href = loginInfo[project].linkIcon || ProjectIcon[project];
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
BIN
src/assets/icon/bottom_jyd.png
Normal file
BIN
src/assets/icon/bottom_jyd.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 260 KiB |
BIN
src/assets/icon/favicon_jyd.png
Normal file
BIN
src/assets/icon/favicon_jyd.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 61 KiB |
BIN
src/assets/icon/link_jyd.png
Normal file
BIN
src/assets/icon/link_jyd.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.3 KiB |
@ -50,6 +50,7 @@ export default {
|
||||
exitScript: 'Exit Script',
|
||||
drivingByPlan: 'Driving By Plan',
|
||||
exitPlan: 'Exit Plan',
|
||||
initialize: 'initialize',
|
||||
back: 'Back',
|
||||
threeDimensionalView: 'Three-Dimensional View',
|
||||
threeDimensionalStation: 'Three-Dimensional Station',
|
||||
|
@ -15,6 +15,7 @@ export default {
|
||||
driverPerspective: 'Driver perspective',
|
||||
drivingByPlan: 'Driving by plan',
|
||||
exitPlan: 'Exit plan',
|
||||
initialize: 'initialize',
|
||||
runGraphPreview: 'Run graph preview',
|
||||
runGraphLoading: 'Run graph loading',
|
||||
faultSetting: 'Fault setting',
|
||||
|
@ -50,6 +50,7 @@ export default {
|
||||
exitScript: '退出剧本',
|
||||
drivingByPlan: '按计划行车',
|
||||
exitPlan: '退出计划',
|
||||
initialize: '初始化',
|
||||
back: '返回',
|
||||
threeDimensionalView: '三维视图',
|
||||
threeDimensionalStation: '三维车站',
|
||||
|
@ -15,6 +15,7 @@ export default {
|
||||
driverPerspective: '司机视角',
|
||||
drivingByPlan: '按计划行车',
|
||||
exitPlan: '退出计划',
|
||||
initialize: '初始化',
|
||||
runGraphPreview: '运行图预览',
|
||||
runGraphLoading: '运行图加载',
|
||||
faultSetting: '故障设置',
|
||||
|
@ -657,7 +657,7 @@ class SkinCode extends defaultStyle {
|
||||
trainHeadFillColor: '#EF0C08', // 列车车头矩形填充颜色
|
||||
directionStopType:'normal', // special 西安二号线 停车 列车方向图标不消失 normal 正常
|
||||
trainHeadHeight: 'text', // 列车车头高度取决于trainBox高度
|
||||
trainHeadArrowWidth: 4, // 列车车头三角宽度
|
||||
trainHeadArrowWidth: 8, // 列车车头三角宽度
|
||||
trainHeadArrowOffsetX: 2 // 列车车头三角偏移
|
||||
},
|
||||
common: {
|
||||
|
@ -162,7 +162,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -182,7 +182,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -202,7 +202,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -222,7 +222,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -242,7 +242,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -262,7 +262,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -283,7 +283,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -304,7 +304,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -325,7 +325,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -341,7 +341,7 @@ export default {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
|
@ -86,7 +86,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
if (valid) {
|
||||
@ -104,7 +104,7 @@ export default {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
if (valid) {
|
||||
this.$emit('setOperate', { step: 0, success: false });
|
||||
|
@ -279,7 +279,7 @@ export default {
|
||||
|
||||
this.setMessage(this.$t('tip.firstConfirmTip'));
|
||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: '' });
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
if (this.operation == OperationEvent.Signal.unlock.menu.operation) {
|
||||
@ -299,7 +299,7 @@ export default {
|
||||
|
||||
this.setMessage(this.$t('tip.firstConfirmTip'));
|
||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickReleaseCommand'), result: '' });
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
this.setButtonEnable({ step: 1 });
|
||||
@ -325,7 +325,7 @@ export default {
|
||||
|
||||
this.setMessage(this.$t('tip.secondConfirmTip'));
|
||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickFirstConfirm'), result: '' });
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
this.timeCountCommand = -1;
|
||||
@ -355,7 +355,7 @@ export default {
|
||||
}
|
||||
this.setMessage('');
|
||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickSecondConfirm'), result: '' });
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.timeCountCommand = -1;
|
||||
this.timeCountConfirm = -1;
|
||||
this.setButtonEnable({ step: -1 });
|
||||
@ -385,7 +385,7 @@ export default {
|
||||
}
|
||||
|
||||
this.writeRecord({ order: ++this.order, date: now(), context: this.$t('menu.clickSuspend'), result: '' });
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
this.setButtonEnable({ step: 0 });
|
||||
@ -402,7 +402,7 @@ export default {
|
||||
operation: OperationEvent.Command.close.menu.operation
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
|
@ -36,14 +36,14 @@
|
||||
>
|
||||
<el-table-column :id="domIdChoose" prop="name" :label="this.$t('menu.route')" style="margin-left:30px">
|
||||
<template slot-scope="scope">
|
||||
<el-checkbox v-model="scope.row.check" :disabled="scope.row.disabled" />
|
||||
<el-checkbox v-model="changeList[scope.$index]" :disabled="scope.row.disabled" @change="changeCheck(changeList[scope.$index],scope.row.code)" />
|
||||
<span :style="{color: scope.row.disabled ? '#CBCBCB':'unset'}">{{ scope.row.name }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="controlType" :label="this.$t('menu.controlState')" :width="80">
|
||||
<template slot-scope="scope">
|
||||
<span :style="{color: scope.row.disabled ? '#CBCBCB':'unset'}">
|
||||
<span v-if="scope.row.controlType == '01'">{{ $t('menu.automatic2') }}</span>
|
||||
<span v-if="scope.row.atsControl == '1'">{{ $t('menu.automatic2') }}</span>
|
||||
<span v-else>{{ $t('menu.artificial') }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@ -83,7 +83,7 @@ import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||
import OperationHandler from '@/scripts/cmdPlugin/OperationHandler';
|
||||
import ConfirmControl from './childDialog/confirmControl';
|
||||
import NoticeInfo from './childDialog/childDialog/noticeInfo';
|
||||
import CMD from '@/scripts/cmdPlugin/CommandEnum';
|
||||
import {menuOperate, commitOperate} from '../utils/menuOperate';
|
||||
|
||||
export default {
|
||||
name: 'RouteHandControl',
|
||||
@ -99,7 +99,9 @@ export default {
|
||||
operation: null,
|
||||
selection: [],
|
||||
stationName: '',
|
||||
signalName: ''
|
||||
signalName: '',
|
||||
changeList: [],
|
||||
commitDisabled: true
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -132,24 +134,9 @@ export default {
|
||||
return this.$t('menu.menuSignal.atsAutoControl');
|
||||
}
|
||||
return '';
|
||||
},
|
||||
commitDisabled() {
|
||||
let disabled = true;
|
||||
if (this.selection && this.selection.length) {
|
||||
disabled = false;
|
||||
}
|
||||
|
||||
return disabled;
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
// 深度数据状态
|
||||
tempData: {
|
||||
handler(val, oldVal) {
|
||||
this.checkTableDataSelction(val);
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
@ -161,7 +148,10 @@ export default {
|
||||
// 如果不是断点激活,而是第一次显示则初始化
|
||||
if (!this.dialogShow) {
|
||||
this.signalName = '';
|
||||
this.changeList = [];
|
||||
this.commitDisabled = true;
|
||||
this.stationName = '';
|
||||
this.selection = [];
|
||||
if (selected && selected._type.toUpperCase() === 'Signal'.toUpperCase()) {
|
||||
this.signalName = selected.name;
|
||||
const station = this.$store.getters['map/getDeviceByCode'](selected.stationCode);
|
||||
@ -172,15 +162,18 @@ export default {
|
||||
|
||||
if (tempData && tempData.length > 0) {
|
||||
tempData.forEach(elem => {
|
||||
elem.check = false;
|
||||
// 设置禁用状态
|
||||
this.changeList.push(false);
|
||||
elem.disabled = false;
|
||||
// 设置禁用状态
|
||||
if (operate.operation === OperationEvent.Signal.humanControl.menu.operation &&
|
||||
elem.controlType != '01') {
|
||||
if (operate.operation == OperationEvent.Signal.humanControl.menu.operation &&
|
||||
(elem.atsControl == 0)) {
|
||||
elem.disabled = true;
|
||||
} if (operate.operation === OperationEvent.Signal.atsAutoControl.menu.operation &&
|
||||
elem.controlType == '01') {
|
||||
this.disabledLength++;
|
||||
} if (operate.operation == OperationEvent.Signal.atsAutoControl.menu.operation &&
|
||||
(elem.atsControl != 0)) {
|
||||
elem.disabled = true;
|
||||
this.disabledLength++;
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -199,29 +192,40 @@ export default {
|
||||
this.$refs.tempTable.setCurrentRow();
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
},
|
||||
checkTableDataSelction(data) {
|
||||
const selection = [];
|
||||
if (data && data.length > 0) {
|
||||
data.forEach(row => {
|
||||
if (row.check && !row.disabled) {
|
||||
selection.push(row);
|
||||
}
|
||||
});
|
||||
changeCheck(check, code) {
|
||||
if (check) {
|
||||
this.selection.push(code);
|
||||
} else {
|
||||
this.selection.splice(this.selection.indexOf(code), 1);
|
||||
}
|
||||
if (this.selection.length > 0) {
|
||||
this.commitDisabled = false;
|
||||
} else {
|
||||
this.commitDisabled = true;
|
||||
}
|
||||
|
||||
if (JSON.stringify(selection) !== JSON.stringify(this.selection)) {
|
||||
this.handleChooseChange(selection);
|
||||
this.selection = selection;
|
||||
const operate = {val:code};
|
||||
if (this.operation == OperationEvent.Signal.humanControl.menu.operation) {
|
||||
/** 进路交人工控*/
|
||||
operate.operation = OperationEvent.Signal.humanControl.choose.operation;
|
||||
} else if (this.operation == OperationEvent.Signal.atsAutoControl.menu.operation) {
|
||||
/** 进路交自动控*/
|
||||
operate.operation = OperationEvent.Signal.atsAutoControl.choose.operation;
|
||||
}
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
handleChooseChange(selection) {
|
||||
this.selection = selection;
|
||||
const codeList = selection.map(elem => { return elem.code; });
|
||||
if (codeList && codeList.length) {
|
||||
if (selection && selection.length) {
|
||||
const operate = {
|
||||
repeat: true,
|
||||
operation: '',
|
||||
val: codeList.join('::')
|
||||
selection: selection
|
||||
};
|
||||
|
||||
if (this.operation == OperationEvent.Signal.humanControl.menu.operation) {
|
||||
@ -232,7 +236,7 @@ export default {
|
||||
operate.operation = OperationEvent.Signal.atsAutoControl.choose.operation;
|
||||
}
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
@ -250,20 +254,10 @@ export default {
|
||||
this.atsAutoControl();
|
||||
}
|
||||
},
|
||||
// 自排关
|
||||
// 进路交人工控
|
||||
humanControl() {
|
||||
const codeList = this.selection.map(elem => { return elem.code; });
|
||||
const operate = {
|
||||
over: true,
|
||||
operation: OperationEvent.Signal.humanControl.menu.operation,
|
||||
cmdType: CMD.Signal.CMD_SIGNAL_CLOSE_AUTO_SETTING,
|
||||
param: {
|
||||
Route_Code_List: codeList
|
||||
}
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
commitOperate(menuOperate.Signal.humanControl, {routeCodeList:this.selection}, 2).then(({valid})=>{
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -271,23 +265,13 @@ export default {
|
||||
}).catch(() => {
|
||||
this.loading = false;
|
||||
this.doClose();
|
||||
this.$refs.noticeInfo.doShow(operate);
|
||||
this.$refs.noticeInfo.doShow();
|
||||
});
|
||||
},
|
||||
// 自排开
|
||||
// 进路交自动控
|
||||
atsAutoControl() {
|
||||
const codeList = this.selection.map(elem => { return elem.code; });
|
||||
const operate = {
|
||||
over: true,
|
||||
operation: OperationEvent.Signal.atsAutoControl.menu.operation,
|
||||
cmdType: CMD.Signal.CMD_SIGNAL_OPEN_AUTO_SETTING,
|
||||
param: {
|
||||
Route_Code_List: codeList
|
||||
}
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
commitOperate(menuOperate.Signal.atsAutoControl, {routeCodeList:this.selection}, 2).then(({valid})=>{
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -295,7 +279,7 @@ export default {
|
||||
}).catch(() => {
|
||||
this.loading = false;
|
||||
this.doClose();
|
||||
this.$refs.noticeInfo.doShow(operate);
|
||||
this.$refs.noticeInfo.doShow();
|
||||
});
|
||||
},
|
||||
cancel() {
|
||||
@ -303,7 +287,7 @@ export default {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
|
@ -109,9 +109,10 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
/** status 04:封锁*/
|
||||
const signal = (selected || {}).status;
|
||||
this.tempData = [{ code: selected.code, name: selected.name, status: signal.status != '04' ? this.$t('menu.unblocked') : this.$t('menu.blocked') }];
|
||||
this.tempData = [{
|
||||
code: selected.code,
|
||||
name: selected.name,
|
||||
status: selected.blockade ? this.$t('menu.unblocked') : this.$t('menu.blocked') }];
|
||||
const timer = setInterval(() => {
|
||||
if (this.$refs.table) {
|
||||
this.$refs.table.setCurrentRow(this.tempData[0]);
|
||||
@ -138,7 +139,7 @@ export default {
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
this.loading = false;
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
@ -154,7 +155,7 @@ export default {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
|
@ -271,7 +271,7 @@ export default {
|
||||
operate.operation = OperationEvent.Signal.atsAutoControl.choose.operation;
|
||||
}
|
||||
|
||||
this.$store.dispatch('training/next', operate).then(({ valid }) => {
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', { break: true });
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
<template>
|
||||
<div class="avatar-container" style="margin-left:40px;">
|
||||
<img v-if="isHyd" class="logo_hyd" :src="logoImg" @click="goToMain">
|
||||
<img v-if="isHyd||isJyd" class="logo_hyd" :src="logoImg" @click="goToMain">
|
||||
<img v-else class="logo" :src="logoImg" @click="goToMain">
|
||||
<div class="titleInner" :style="marginLeft" @click="goToMain">{{ systemTitle }}</div>
|
||||
</div>
|
||||
@ -16,6 +16,7 @@ export default {
|
||||
logoImg: '',
|
||||
systemTitle: '',
|
||||
isHyd: false,
|
||||
isJyd: false,
|
||||
marginLeft: 'margin-left:60px;'
|
||||
};
|
||||
},
|
||||
@ -26,6 +27,9 @@ export default {
|
||||
if (project.endsWith('hyd')) {
|
||||
this.isHyd = true;
|
||||
this.marginLeft = 'margin-left:140px;';
|
||||
} else if (project.endsWith('jyd')) {
|
||||
this.isJyd = true;
|
||||
this.marginLeft = 'margin-left:140px;';
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
@ -8,8 +8,9 @@
|
||||
</transition>
|
||||
</section>
|
||||
<el-footer class="footers" style="height:30px;">
|
||||
<div v-if="!isHyd" style="font-size:14px;float:left;">{{ $t('global.companyInfo') }} {{ $t('global.companyTel') }}</div>
|
||||
<div style="font-size:14px;float:right;">{{ isHyd? '哈尔滨盈达科技有限公司 联系电话:0451-87001273' : $t('global.companyICP') }}</div>
|
||||
<div v-if="!bottomColumnOnlyConInfo.includes(project)" style="font-size:14px;float:left;">{{ $t('global.companyInfo') }} {{ $t('global.companyTel') }}</div>
|
||||
<div style="font-size:14px;float:right;height: 30px;line-height: 30px;">{{ bottomColumnOnlyConInfo.includes(project)? companyInfo : $t('global.companyICP') }}</div>
|
||||
<img v-if="bottomIcon" style="float:right;height: 26px;margin: 2px 10px;" :src="bottomIcon">
|
||||
</el-footer>
|
||||
</div>
|
||||
<div>
|
||||
@ -32,6 +33,7 @@
|
||||
<script>
|
||||
import { Navbar } from './components'; // Sidebar
|
||||
import { getSessionStorage } from '@/utils/auth';
|
||||
import { loginInfo, BottomColumnOnlyConInfo} from '@/scripts/ProjectConfig';
|
||||
|
||||
export default {
|
||||
name: 'Layout',
|
||||
@ -40,7 +42,8 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialogVisible: false
|
||||
dialogVisible: false,
|
||||
bottomColumnOnlyConInfo: BottomColumnOnlyConInfo
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -62,11 +65,17 @@ export default {
|
||||
height() {
|
||||
return this.$store.state.app.height - 90;
|
||||
},
|
||||
isHyd() {
|
||||
return getSessionStorage('project').endsWith('hyd');
|
||||
project() {
|
||||
return getSessionStorage('project');
|
||||
},
|
||||
dialogMessage() {
|
||||
return this.$store.state.app.dialogMessage;
|
||||
},
|
||||
companyInfo() {
|
||||
return loginInfo[getSessionStorage('project')].bottomColumn;
|
||||
},
|
||||
bottomIcon() {
|
||||
return loginInfo[getSessionStorage('project')].bottomIcon;
|
||||
}
|
||||
},
|
||||
watch:{
|
||||
|
@ -175,6 +175,7 @@ export const projectXian = '012'; // 西安地铁项目
|
||||
export const projectXty = '013'; // 西铁院
|
||||
export const projectGzzb = '014'; // 贵州装备
|
||||
export const projectJsxt = '015'; // 竞赛系统
|
||||
export const projectJyd = '016'; // 竞业达
|
||||
|
||||
export const userTrainingPlatform = '016'; // 实训系统
|
||||
// export const refereePlatform = '017'; // 裁判系统
|
||||
|
@ -4,6 +4,9 @@ import FaviconXty from '@/assets/icon/favicon_xty.png';
|
||||
import FaviconGzb from '@/assets/icon/favicon_gzb.png';
|
||||
import FaviconHyd from '@/assets/icon/favicon_hyd.png';
|
||||
import FaviconXadt from '@/assets/icon/favicon_xas.png';
|
||||
import FaviconJyd from '@/assets/icon/favicon_jyd.png';
|
||||
import Bottom_Jyd from '@/assets/icon/bottom_jyd.png';
|
||||
import Link_Jyd from '@/assets/icon/link_jyd.png';
|
||||
import { LoginParams } from '@/utils/login';
|
||||
|
||||
export const loginInfo = { // 页面title & 退出登录跳转路径
|
||||
@ -33,11 +36,13 @@ export const loginInfo = { // 页面title & 退出登录跳转路径
|
||||
},
|
||||
hyd: {
|
||||
title: '城市轨道交通综合行车模拟仿真系统',
|
||||
loginPath: '/login'
|
||||
loginPath: '/login',
|
||||
bottomColumn: '哈尔滨盈达科技有限公司 联系电话:0451-87001273'
|
||||
},
|
||||
designhyd: {
|
||||
title: '城市轨道交通设计平台',
|
||||
loginPath: '/design/login'
|
||||
loginPath: '/design/login',
|
||||
bottomColumn: '哈尔滨盈达科技有限公司 联系电话:0451-87001273'
|
||||
},
|
||||
xadt: {
|
||||
title: '城市轨道交通实训平台',
|
||||
@ -60,6 +65,22 @@ export const loginInfo = { // 页面title & 退出登录跳转路径
|
||||
refereeJsxt:{
|
||||
title: '城市轨道交通裁判平台',
|
||||
loginPath: '/refereeJsxt/login'
|
||||
},
|
||||
jyd: {
|
||||
title: '城市轨道交通实训平台',
|
||||
loginPath: '/jyd/login',
|
||||
loginTitle: 'jyd',
|
||||
bottomColumn: '联系电话: 13289398171',
|
||||
bottomIcon: Bottom_Jyd,
|
||||
linkIcon: Link_Jyd
|
||||
},
|
||||
designjyd: {
|
||||
title: '城市轨道交通设计平台',
|
||||
loginTitle: 'jyd',
|
||||
loginPath: '/designjyd/login',
|
||||
bottomColumn: '联系电话: 13289398171',
|
||||
bottomIcon: Bottom_Jyd,
|
||||
linkIcon: Link_Jyd
|
||||
}
|
||||
};
|
||||
|
||||
@ -75,7 +96,9 @@ export const ProjectIcon = {
|
||||
xadt: FaviconXadt,
|
||||
designxadt: FaviconXadt,
|
||||
jsxt: Favicon,
|
||||
refereeJsxt: Favicon
|
||||
refereeJsxt: Favicon,
|
||||
jyd: FaviconJyd,
|
||||
designjyd: FaviconJyd
|
||||
};
|
||||
|
||||
export const ProjectCode = {
|
||||
@ -86,11 +109,15 @@ export const ProjectCode = {
|
||||
hyd: 'HYD',
|
||||
designhyd: 'HYD',
|
||||
xadt: 'XADT',
|
||||
designxadt: 'XADT'
|
||||
designxadt: 'XADT',
|
||||
jyd: 'JYD',
|
||||
designjyd: 'JYD'
|
||||
};
|
||||
export const BottomColumnOnlyConInfo = ['hyd', 'designhyd', 'jyd', 'designjyd']; // 底部栏仅展示公司信息不展示备案号
|
||||
export const GetMapListByProjectList = ['xty', 'designxty', 'gzb', 'designgzb', 'xadt', 'designxadt']; // 实训设计平台通过项目code获取地图列表的项目
|
||||
export const CaseHideProjectList = ['hyd', 'designhyd']; // 案例展示隐藏的项目
|
||||
export const GenerateRouteProjectList = ['xty', 'designxty', 'gzb', 'designgzb', 'xadt', 'designxadt', 'jsxt', 'refereeJsxt'];// 需要在公共路由中生成登录页面的项目&登录页样式
|
||||
export const VersionBaseNoShow = ['hyd', 'designhyd']; // 登录页右下角版本开发基于不展示展示
|
||||
export const GenerateRouteProjectList = ['xty', 'designxty', 'gzb', 'designgzb', 'xadt', 'designxadt', 'jsxt', 'refereeJsxt', 'jyd', 'designjyd'];// 需要在公共路由中生成登录页面的项目&登录页样式
|
||||
export const goOtherPlatformMenu = { // 导航栏快速切换平台
|
||||
login: '/design/login',
|
||||
design: '/login',
|
||||
@ -101,7 +128,9 @@ export const goOtherPlatformMenu = { // 导航栏快速切换平台
|
||||
hyd: '/design/login',
|
||||
designhyd: '/login',
|
||||
xadt: '/designxadt/login',
|
||||
designxadt: '/xadt/login'
|
||||
designxadt: '/xadt/login',
|
||||
jyd: '/designjyd/login',
|
||||
designjyd: '/jyd/login'
|
||||
};
|
||||
export const PermissionParam = { // 路径权限处理所需参数配置(跳转白名单&路径正则匹配&clientId)
|
||||
hyd: {
|
||||
@ -134,6 +163,12 @@ export const PermissionParam = { // 路径权限处理所需参数配置(跳
|
||||
systemType: '012',
|
||||
clientId: LoginParams.Design.clientId
|
||||
},
|
||||
designjyd: {
|
||||
whitePage: '/designjyd/login',
|
||||
reg: /^\/designjyd/,
|
||||
systemType: '016',
|
||||
clientId: LoginParams.Design.clientId
|
||||
},
|
||||
xty: {
|
||||
whitePage: '/xty/login',
|
||||
reg: /^\/xty/,
|
||||
@ -152,6 +187,12 @@ export const PermissionParam = { // 路径权限处理所需参数配置(跳
|
||||
systemType: '012',
|
||||
clientId: null
|
||||
},
|
||||
jyd: {
|
||||
whitePage: '/jyd/login',
|
||||
reg: /^\/jyd/,
|
||||
systemType: '016',
|
||||
clientId: null
|
||||
},
|
||||
jsxt: {
|
||||
whitePage: '/jsxt/login',
|
||||
reg: /^\/jsxt/,
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { publicAsyncRoute, asyncRouter, constantRoutes, user, projectTrain, projectXian, projectXty, projectGzzb, projectJsxt, superAdmin, admin, userTrainingPlatform, JSXT, projectRoute } from '@/router/index_APP_TARGET';
|
||||
import { publicAsyncRoute, asyncRouter, constantRoutes, user, projectTrain, projectXian, projectXty, projectGzzb, projectJsxt, projectJyd, superAdmin, admin, userTrainingPlatform, JSXT, projectRoute } from '@/router/index_APP_TARGET';
|
||||
import { PermissionParam } from '@/scripts/ProjectConfig';
|
||||
import { getSessionStorage } from '@/utils/auth';
|
||||
|
||||
@ -45,6 +45,8 @@ function resetAsyncRouter({ systemType }) {
|
||||
list = [...list, ...asyncRouter, ...projectRoute.designgzb];
|
||||
} else if (systemType == projectJsxt) {
|
||||
list = [...list, ...JSXT];
|
||||
} else if (systemType == projectJyd) {
|
||||
list = [...list, ...asyncRouter];
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
@ -105,7 +105,7 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.$route.query.project];
|
||||
document.querySelector("link[rel*='icon']").href = loginInfo[this.$route.query.project].linkIcon || ProjectIcon[this.$route.query.project];
|
||||
},
|
||||
mounted() {
|
||||
window.updatefault = this.updatefault;
|
||||
|
@ -36,7 +36,7 @@
|
||||
<script>
|
||||
import Vue from 'vue';
|
||||
import { Jl3dpassflow } from '@/jlmap3d/jl3dpassflow/jl3dpassflownew.js';
|
||||
import { ProjectIcon } from '@/scripts/ProjectConfig';
|
||||
import { ProjectIcon,loginInfo } from '@/scripts/ProjectConfig';
|
||||
|
||||
export default {
|
||||
name: 'Passflow',
|
||||
@ -61,7 +61,7 @@ export default {
|
||||
|
||||
},
|
||||
created() {
|
||||
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.$route.query.project];
|
||||
document.querySelector("link[rel*='icon']").href = loginInfo[this.$route.query.project].linkIcon || ProjectIcon[this.$route.query.project];
|
||||
},
|
||||
mounted() {
|
||||
this.init();
|
||||
|
@ -47,7 +47,7 @@ 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/ProjectConfig';
|
||||
import { ProjectIcon, loginInfo } from '@/scripts/ProjectConfig';
|
||||
|
||||
// import Jlmap3dMsg from '@/views/jlmap3d/show/msg';
|
||||
|
||||
@ -92,7 +92,7 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.$route.query.project];
|
||||
document.querySelector("link[rel*='icon']").href = loginInfo[this.$route.query.project].linkIcon || ProjectIcon[this.$route.query.project];
|
||||
},
|
||||
mounted() {
|
||||
window.updatemenulist = this.updatemenulist;
|
||||
|
@ -19,7 +19,7 @@
|
||||
<script>
|
||||
import Vue from 'vue';
|
||||
import { Jl3dstation } from '@/jlmap3d/jl3dstation/jl3dstation.js';
|
||||
import { ProjectIcon } from '@/scripts/ProjectConfig';
|
||||
import { ProjectIcon, loginInfo } from '@/scripts/ProjectConfig';
|
||||
|
||||
export default {
|
||||
name: 'Jl3dstationshow',
|
||||
@ -42,7 +42,7 @@ export default {
|
||||
|
||||
},
|
||||
created() {
|
||||
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.$route.query.project];
|
||||
document.querySelector("link[rel*='icon']").href = loginInfo[this.$route.query.project].linkIcon || ProjectIcon[this.$route.query.project];
|
||||
},
|
||||
mounted() {
|
||||
this.init();
|
||||
|
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<div class="login-container" :style="{'background-image': 'url('+bgImg+')'}">
|
||||
<div v-if="loginTitle" class="left-logo-box">
|
||||
<img class="logo" :src="logoImg" style="width: 60px">
|
||||
<span>{{ loginTitle }}</span>
|
||||
<img class="logo" :src="logoImg" :style="{width: loginTitle==='jyd'?'300px':'60px'}">
|
||||
<span>{{ loginTitle==='jyd'?'':loginTitle }}</span>
|
||||
</div>
|
||||
<div v-if="isProject" class="text-box">
|
||||
<img v-if="!loginTitle" class="logo" :src="logoImg" style="width: 80px">
|
||||
@ -91,8 +91,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<float-part v-if="isProject && project!=='hyd'" />
|
||||
<div v-if="project!=='hyd'" style="position: absolute; bottom: 10px;right: 20px; font-size: 14px;"><span>主体:北京玖琏科技有限公司 备案号:京ICP备18028522号</span></div>
|
||||
<float-part v-if="isProject && !versionBaseNoShow.includes(project)" />
|
||||
<div v-if="!versionBaseNoShow.includes(project)" style="position: absolute; bottom: 10px;right: 20px; font-size: 14px;"><span>主体:北京玖琏科技有限公司 备案号:京ICP备18028522号</span></div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -106,7 +106,7 @@ import { getLoginWmurl, checkLoginStatus } from '@/api/login';
|
||||
import { LoginParams } from '@/utils/login';
|
||||
import bgImg from '@/assets/bg1.jpg';
|
||||
import { UrlConfig } from '@/scripts/ConstDic';
|
||||
import { loginInfo, ProjectIcon, GenerateRouteProjectList} from '@/scripts/ProjectConfig';
|
||||
import { loginInfo, ProjectIcon, GenerateRouteProjectList, VersionBaseNoShow} from '@/scripts/ProjectConfig';
|
||||
import { removeToken } from '@/utils/auth';
|
||||
import LangStorage from '@/utils/lang';
|
||||
import FloatPart from './floatPart';
|
||||
@ -159,7 +159,8 @@ export default {
|
||||
loginClient: 'LianKeTang',
|
||||
path: '/trainingPlatform',
|
||||
lang: 'zh',
|
||||
language: '中文'
|
||||
language: '中文',
|
||||
versionBaseNoShow: VersionBaseNoShow
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -182,7 +183,7 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
document.querySelector("link[rel*='icon']").href = ProjectIcon[this.project];
|
||||
document.querySelector("link[rel*='icon']").href = loginInfo[this.project].linkIcon || ProjectIcon[this.project];
|
||||
this.computedAttribute();
|
||||
if (Cookies.get(this.cookiesName) && Cookies.get(this.cookiesToken)) {
|
||||
const model = {'username': Cookies.get(this.cookiesName), 'password': Cookies.get(this.cookiesToken)};
|
||||
|
@ -19,7 +19,7 @@
|
||||
</template>
|
||||
<template v-else>
|
||||
<el-button type="success" :disabled="isDisable || dataError" @click="selectBeginTime">{{ $t('display.demon.drivingByPlan') }}</el-button>
|
||||
<el-button type="danger" :disabled="!isDisable || dataError" @click="end">{{ $t('display.demon.exitPlan') }}</el-button>
|
||||
<el-button type="danger" :disabled="dataError" @click="end">{{ $t('display.demon.initialize') }}</el-button>
|
||||
</template>
|
||||
<el-button type="primary" @click="back">{{ $t('display.demon.back') }}</el-button>
|
||||
</el-button-group>
|
||||
|
@ -13,7 +13,7 @@
|
||||
<!-- v-if="!isScriptCommand" -->
|
||||
<!-- v-if="!isScriptCommand" -->
|
||||
<el-button type="success" :disabled="isDisable || dataError" @click="selectBeginTime">按计划行车</el-button>
|
||||
<el-button type="danger" :disabled="!isDisable" @click="end">退出计划</el-button>
|
||||
<el-button type="danger" :disabled="dataError" @click="end">初始化</el-button>
|
||||
<el-button type="primary" @click="back">返回</el-button>
|
||||
</el-button-group>
|
||||
</div>
|
||||
|
@ -8,7 +8,7 @@
|
||||
</el-button-group> -->
|
||||
<el-button-group>
|
||||
<el-button v-if="!isScriptCommand" type="success" :disabled="isDisable || dataError" @click="selectBeginTime">{{ $t('scriptRecord.drivingByPlan') }}</el-button>
|
||||
<el-button v-if="!isScriptCommand" type="danger" :disabled="!isDisable" @click="end">退出计划</el-button>
|
||||
<el-button v-if="!isScriptCommand" type="danger" :disabled="dataError" @click="end">初始化</el-button>
|
||||
<el-button type="primary" @click="back">{{ $t('scriptRecord.scriptBack') }}</el-button>
|
||||
</el-button-group>
|
||||
</div>
|
||||
|
@ -8,7 +8,7 @@
|
||||
<el-button v-if="isStationSupervisor && !dataError" type="jmap3dcctv" @click="jlmap3dcctv">cctv</el-button>
|
||||
<template v-if="isAdmin && project != 'refereeJsxt'">
|
||||
<el-button type="success" :disabled="isDisable || dataError" @click="selectBeginTime">{{ $t('joinTraining.drivingByPlan') }}</el-button>
|
||||
<el-button type="danger" :disabled="!isDisable" @click="end">{{ $t('joinTraining.exitPlan') }}</el-button>
|
||||
<el-button type="danger" :disabled="dataError" @click="end">{{ $t('joinTraining.initialize') }}</el-button>
|
||||
</template>
|
||||
<!-- <el-button type="primary" :loading="backLoading" @click="back">{{ $t('global.back') }}</el-button> -->
|
||||
</el-button-group>
|
||||
|
@ -71,9 +71,9 @@ export default {
|
||||
height: 800,
|
||||
roadData: [],
|
||||
focus: false,
|
||||
booleanList: ['lockFirst', 'switchSingleHandle', 'switchNRTurnChain', 'switchSingleLockChain', 'signalForceCancelRoute', 'initSingleLockSwitch'],
|
||||
booleanList: ['lockFirst', 'switchSingleHandle', 'switchNRTurnChain', 'switchSingleLockChain', 'signalForceCancelRoute', 'initSingleLockSwitch', 'ctcOverlapOnlyTurnBackStationLock'],
|
||||
selectList: ['upDirection', 'runMode'],
|
||||
generalConfig: ['lockFirst', 'switchSingleHandle', 'upDirection', 'switchNRTurnChain', 'switchSingleLockChain', 'signalForceCancelRoute', 'runMode', 'initSingleLockSwitch'],
|
||||
generalConfig: ['lockFirst', 'switchSingleHandle', 'upDirection', 'switchNRTurnChain', 'switchSingleLockChain', 'signalForceCancelRoute', 'runMode', 'initSingleLockSwitch', 'ctcOverlapOnlyTurnBackStationLock'],
|
||||
numberList: [],
|
||||
optionsMap: {
|
||||
upDirection: [{label: 'right', value: 'right'}, {label: 'left', value: 'left'}],
|
||||
@ -87,7 +87,8 @@ export default {
|
||||
switchSingleLockChain:'道岔单解/锁是否联动',
|
||||
signalForceCancelRoute:'是否强制取消进路/在接近区段占用时是否依旧强制执行取消进路',
|
||||
runMode:'列车控制模式/级别',
|
||||
initSingleLockSwitch: '初始加载设备时是否默认单锁正线道岔'
|
||||
initSingleLockSwitch: '初始加载设备时是否默认单锁正线道岔',
|
||||
ctcOverlapOnlyTurnBackStationLock: 'CTC列车进路延续保护仅折返站处锁闭'
|
||||
}
|
||||
};
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user