Merge branch 'test' of https://git.code.tencent.com/lian-cbtc/jl-client into test
This commit is contained in:
commit
5ff71d3820
@ -87,4 +87,11 @@ export function forceDeleteLesson(lessonId) {
|
||||
method: 'delete'
|
||||
});
|
||||
}
|
||||
|
||||
/** 一键生成课程和试卷 */
|
||||
export function aKeyGeneratingLesson(data) {
|
||||
return request({
|
||||
url: `/api/lesson/generating`,
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
@ -116,6 +116,9 @@
|
||||
<signal-detail ref="signalDetail" />
|
||||
<init-signal-mode ref="initSignalMode" />
|
||||
<signal-mode ref="signalMode" />
|
||||
<system-detain ref="systemDetain" />
|
||||
<running-interval ref="runningInterval" />
|
||||
<adjust-strategy ref="adjustStrategy" />
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@ -154,6 +157,9 @@ import SignalBlock from './menuDialog/signalBlock';
|
||||
import SignalDetail from './menuDialog/signalDetail';
|
||||
import InitSignalMode from './menuDialog/initSignalMode';
|
||||
import SignalMode from './menuDialog/signalMode';
|
||||
import SystemDetain from './menuDialog/systemDetain';
|
||||
import RunningInterval from './menuDialog/runningInterval';
|
||||
import AdjustStrategy from './menuDialog/adjustStrategy';
|
||||
|
||||
export default {
|
||||
name: 'MenuBar',
|
||||
@ -186,7 +192,10 @@ export default {
|
||||
SectionShow,
|
||||
SectionLock,
|
||||
InitSignalMode,
|
||||
SignalMode
|
||||
SignalMode,
|
||||
SystemDetain,
|
||||
RunningInterval,
|
||||
AdjustStrategy
|
||||
},
|
||||
props: {
|
||||
selected: {
|
||||
@ -589,7 +598,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: '系统扣车',
|
||||
click: this.undeveloped
|
||||
click: this.setSystemDetain
|
||||
},
|
||||
{
|
||||
title: '修改自动分配',
|
||||
@ -633,11 +642,11 @@ export default {
|
||||
children: [
|
||||
{
|
||||
title: '固定列车间隔',
|
||||
click: this.undeveloped
|
||||
click: this.setRunningInterval
|
||||
},
|
||||
{
|
||||
title: '调整策略',
|
||||
click: this.undeveloped
|
||||
click: this.adjustStrategy
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -1056,7 +1065,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: '系统扣车',
|
||||
click: this.undeveloped
|
||||
click: this.setSystemDetain
|
||||
},
|
||||
{
|
||||
title: '修改自动分配',
|
||||
@ -1100,11 +1109,11 @@ export default {
|
||||
children: [
|
||||
{
|
||||
title: '固定列车间隔',
|
||||
click: this.undeveloped
|
||||
click: this.setRunningInterval
|
||||
},
|
||||
{
|
||||
title: '调整策略',
|
||||
click: this.undeveloped
|
||||
click: this.adjustStrategy
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -1684,6 +1693,45 @@ export default {
|
||||
this.$refs.initSignalMode.doShow(operate);
|
||||
}
|
||||
});
|
||||
},
|
||||
setSystemDetain() {
|
||||
const operate = {
|
||||
type: 'bar',
|
||||
operation: ''
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', operate).then(({valid}) => {
|
||||
if (valid) {
|
||||
this.closeMenu(true);
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
|
||||
this.$refs.systemDetain.doShow(operate);
|
||||
}
|
||||
});
|
||||
},
|
||||
setRunningInterval() {
|
||||
const operate = {
|
||||
type: 'bar',
|
||||
operation: ''
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', operate).then(({valid}) => {
|
||||
if (valid) {
|
||||
this.closeMenu(true);
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', {break: true});
|
||||
this.$refs.runningInterval.doShow(operate);
|
||||
}
|
||||
});
|
||||
},
|
||||
adjustStrategy() {
|
||||
const operate = {
|
||||
type: 'bar',
|
||||
operation: ''
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', operate).then(({valid}) => {
|
||||
if (valid) {
|
||||
this.closeMenu(true);
|
||||
this.$store.dispatch('menuOperation/handleBreakFlag', {barek: true});
|
||||
this.$refs.adjustStrategy.doShow(operate);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
177
src/jmapNew/theme/ningbo_03/menus/menuDialog/adjustStrategy.vue
Normal file
177
src/jmapNew/theme/ningbo_03/menus/menuDialog/adjustStrategy.vue
Normal file
@ -0,0 +1,177 @@
|
||||
<template>
|
||||
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="600px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
|
||||
<el-row>
|
||||
<el-col :span="14">
|
||||
<el-table :data="signalList" height="300px">
|
||||
<el-table-column prop="startTime" label="开始时间" />
|
||||
<el-table-column prop="endTime" label="结束时间" />
|
||||
<el-table-column prop="strategy" label="策略" />
|
||||
</el-table>
|
||||
</el-col>
|
||||
<el-col :span="10" style="text-align: center;padding-left: 10px;">
|
||||
<div class="set-status-title">设置策略</div>
|
||||
<div class="set-status-box">
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<div style="display: inline-block;">开始(T)</div>
|
||||
<el-time-picker
|
||||
v-model="startTime"
|
||||
size="mini"
|
||||
style="width: 150px;"
|
||||
placeholder="任意时间点"
|
||||
/>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: space-between;">
|
||||
<div style="display: inline-block;">结束</div>
|
||||
<el-time-picker
|
||||
v-model="endTime"
|
||||
size="mini"
|
||||
style="width: 150px;"
|
||||
placeholder="任意时间点"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<el-radio v-model="radio" label="1">服务恢复(R)</el-radio>
|
||||
<el-radio v-model="radio" label="2">节能(P)</el-radio>
|
||||
<el-button>设置(E)</el-button>
|
||||
<div class="set-status-title">复位策略</div>
|
||||
<div class="set-status-box">
|
||||
<el-button style="width: 130px;">复位到默认值(D)</el-button>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row justify="center" class="button-group">
|
||||
<el-col :span="4" :offset="1">
|
||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button>应用(A)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button :id="domIdCancel" @click="cancel">关闭(C)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button>帮助(H)</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
|
||||
// import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
|
||||
import { mapGetters } from 'vuex';
|
||||
|
||||
export default {
|
||||
name: 'SignalBlock',
|
||||
components: {
|
||||
NoticeInfo
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
status: false,
|
||||
command: true,
|
||||
allChecked: false,
|
||||
dialogShow: false,
|
||||
loading: false,
|
||||
selected: null,
|
||||
activeName: 'first',
|
||||
operate: {},
|
||||
startTime: new Date(),
|
||||
endTime: new Date(),
|
||||
radio: ''
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapGetters('map', [
|
||||
'signalList'
|
||||
]),
|
||||
show() {
|
||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
||||
},
|
||||
domIdCancel() {
|
||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
||||
},
|
||||
domIdChoose() {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
|
||||
},
|
||||
domIdConfirm() {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
|
||||
},
|
||||
title() {
|
||||
return '调整策略';
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
'$store.state.map.keyboardEnterCount': function (val) {
|
||||
if (this.show) {
|
||||
this.commit();
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.$store.dispatch('training/tipReload');
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
doShow(operate, selected) {
|
||||
this.selected = selected;
|
||||
this.operate = operate;
|
||||
// 如果不是断点激活,而是第一次显示,则需要设置初始值
|
||||
this.dialogShow = true;
|
||||
this.$nextTick(function () {
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
});
|
||||
},
|
||||
doClose() {
|
||||
this.loading = false;
|
||||
this.dialogShow = false;
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
},
|
||||
commit() {
|
||||
},
|
||||
handleClick() {
|
||||
|
||||
},
|
||||
cancel() {
|
||||
const operate = {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
}).catch(() => {
|
||||
this.doClose();
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
.menu-li {
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
text-align: left;
|
||||
list-style:none;
|
||||
padding-left: 5px;
|
||||
border-right: 2px solid #696969;
|
||||
color: #000;
|
||||
}
|
||||
.set-status-box {
|
||||
position: relative;
|
||||
border: 1px solid #AFAFAF;
|
||||
padding: 15px 5px;
|
||||
}
|
||||
.set-status-title{
|
||||
position: relative;
|
||||
top: 15px;
|
||||
background: #F0F0F0;
|
||||
width: 60px;
|
||||
text-align: center;
|
||||
z-index: 22;
|
||||
left: 10px;
|
||||
}
|
||||
</style>
|
@ -14,8 +14,8 @@
|
||||
<el-tab-pane label="站台" name="first">
|
||||
<el-row>
|
||||
<el-col :span="11">
|
||||
<div style="width: 220px;border: 2px solid #696969; border-bottom: 0;color: #000;padding-left: 5px;">站台</div>
|
||||
<div style="width: 220px;height: 350px;overflow: scroll; border: 2px solid #696969;">
|
||||
<div style="width: 220px;border: 2px inset #E9E9E9; border-bottom: 0;color: #000;padding-left: 5px;">站台</div>
|
||||
<div style="width: 220px;height: 350px;overflow: scroll; border: 2px inset #E9E9E9;">
|
||||
<template v-for="(stationStand, index) in stationStandList">
|
||||
<li :key="index" class="menu-li" :style="{background: selectStandCode === stationStand.code? '#BFCDDB': '#FFF'}" @click="selectStand(stationStand)">{{ stationStand.name }}</li>
|
||||
</template>
|
||||
@ -36,7 +36,7 @@
|
||||
</el-row>
|
||||
<el-row justify="center" class="button-group">
|
||||
<el-col :span="4" :offset="1">
|
||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
|
||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button>应用(A)</el-button>
|
||||
@ -154,7 +154,6 @@ export default {
|
||||
text-align: left;
|
||||
list-style:none;
|
||||
padding-left: 5px;
|
||||
border-right: 2px solid #696969;
|
||||
color: #000;
|
||||
}
|
||||
</style>
|
||||
|
204
src/jmapNew/theme/ningbo_03/menus/menuDialog/runningInterval.vue
Normal file
204
src/jmapNew/theme/ningbo_03/menus/menuDialog/runningInterval.vue
Normal file
@ -0,0 +1,204 @@
|
||||
<template>
|
||||
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="750px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
|
||||
<el-row>
|
||||
<el-col :span="10">
|
||||
<el-table :data="signalList" height="300px">
|
||||
<el-table-column prop="runLine" label="运行线" />
|
||||
<el-table-column prop="interval" label="运行间隔" />
|
||||
</el-table>
|
||||
</el-col>
|
||||
<el-col :span="14">
|
||||
<el-row>
|
||||
<el-col :span="14" style="padding-left: 10px;">
|
||||
<div class="set-status-title" style="width: 90px;">设置运行间隔</div>
|
||||
<div class="set-status-box">
|
||||
<div>
|
||||
<div style="display: inline-block;">运行间隔值(W)</div>
|
||||
<el-input-number v-model="intervalValue" controls-position="right" :min="1" size="mini" precision="0" style="width: 100px;" />
|
||||
</div>
|
||||
<div style="padding-top: 10px;text-align: center;">
|
||||
<el-button style="margin-right: 20px;">设置(S)</el-button>
|
||||
<el-button>清除(R)</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="10" style="padding-left: 10px;">
|
||||
<div class="set-status-title" style="width: 80px;">清除间隔</div>
|
||||
<div class="set-status-box"><el-button>全部清除(L)</el-button></div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row style="padding-left: 10px;">
|
||||
<div class="set-status-title" style="width: 100px;">运行间隔计算器</div>
|
||||
<div class="set-status-box">
|
||||
<el-row>
|
||||
<el-col :span="12" style="display: flex; justify-content: space-between;">
|
||||
<div style="display: inline-block;">往返运行时间</div>
|
||||
<el-input v-model="roundTripRunningTime" size="mini" style="width: 80px;" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12" style="display: flex; justify-content: space-between;">
|
||||
<div style="display: inline-block;">请求间隔(Y)</div>
|
||||
<el-input v-model="requestInterval" size="mini" style="width: 80px;" />
|
||||
</el-col>
|
||||
<el-col :span="12" style="display: flex; justify-content: space-between;">
|
||||
<div style="display: inline-block;">需要的列车</div>
|
||||
<el-input v-model="needTrainNumber" size="mini" :disabled="true" style="width: 80px;" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row style="text-align: center;">
|
||||
或
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12" style="display: flex; justify-content: space-between;">
|
||||
<div style="display: inline-block;">请求列车</div>
|
||||
<el-input v-model="requestTrainNumber" size="mini" style="width: 80px;" />
|
||||
</el-col>
|
||||
<el-col :span="12" style="display: flex; justify-content: space-between;">
|
||||
<div style="display: inline-block;">需要的间隔</div>
|
||||
<el-input v-model="needInterval" size="mini" style="width: 80px;" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-row>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row justify="center" class="button-group">
|
||||
<el-col :span="4" :offset="1">
|
||||
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定(O)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button>应用(A)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button :id="domIdCancel" @click="cancel">关闭(C)</el-button>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="2">
|
||||
<el-button>帮助(H)</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<notice-info ref="noticeInfo" pop-class="ningbo-01__systerm" />
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler';
|
||||
import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo';
|
||||
// import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate';
|
||||
import { mapGetters } from 'vuex';
|
||||
|
||||
export default {
|
||||
name: 'SignalBlock',
|
||||
components: {
|
||||
NoticeInfo
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
status: false,
|
||||
command: true,
|
||||
allChecked: false,
|
||||
dialogShow: false,
|
||||
loading: false,
|
||||
selected: null,
|
||||
activeName: 'first',
|
||||
operate: {},
|
||||
intervalValue: 180,
|
||||
roundTripRunningTime:4487,
|
||||
requestInterval: 200,
|
||||
needTrainNumber: 22,
|
||||
requestTrainNumber: 25,
|
||||
needInterval: 179
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapGetters('map', [
|
||||
'signalList'
|
||||
]),
|
||||
show() {
|
||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
||||
},
|
||||
domIdCancel() {
|
||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
||||
},
|
||||
domIdChoose() {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.choose.domId : '';
|
||||
},
|
||||
domIdConfirm() {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
|
||||
},
|
||||
title() {
|
||||
return '运行间隔调整';
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
'$store.state.map.keyboardEnterCount': function (val) {
|
||||
if (this.show) {
|
||||
this.commit();
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
this.$store.dispatch('training/tipReload');
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
doShow(operate, selected) {
|
||||
this.selected = selected;
|
||||
this.operate = operate;
|
||||
// 如果不是断点激活,而是第一次显示,则需要设置初始值
|
||||
this.dialogShow = true;
|
||||
this.$nextTick(function () {
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
});
|
||||
},
|
||||
doClose() {
|
||||
this.loading = false;
|
||||
this.dialogShow = false;
|
||||
this.$store.dispatch('training/emitTipFresh');
|
||||
},
|
||||
commit() {
|
||||
},
|
||||
handleClick() {
|
||||
|
||||
},
|
||||
cancel() {
|
||||
const operate = {
|
||||
operation: OperationEvent.Command.cancel.menu.operation
|
||||
};
|
||||
this.$store.dispatch('training/nextNew', operate).then(({ valid }) => {
|
||||
if (valid) {
|
||||
this.doClose();
|
||||
}
|
||||
}).catch(() => {
|
||||
this.doClose();
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
.menu-li {
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
text-align: left;
|
||||
list-style:none;
|
||||
padding-left: 5px;
|
||||
border-right: 2px solid #696969;
|
||||
color: #000;
|
||||
}
|
||||
.set-status-box {
|
||||
position: relative;
|
||||
border: 1px solid #AFAFAF;
|
||||
padding: 10px 5px;
|
||||
}
|
||||
.set-status-title{
|
||||
position: relative;
|
||||
top: 15px;
|
||||
background: #F0F0F0;
|
||||
width: 40px;
|
||||
text-align: center;
|
||||
z-index: 22;
|
||||
left: 10px;
|
||||
}
|
||||
</style>
|
@ -2,8 +2,24 @@
|
||||
<el-dialog v-dialogDrag class="ningbo-01__systerm route-setting" :title="title" :visible.sync="show" width="750px" :before-close="doClose" :z-index="2000" :modal="false" :close-on-click-modal="false">
|
||||
<el-row>
|
||||
<el-col :span="19">
|
||||
|
||||
</el-col>
|
||||
<el-tabs v-model="activeName" type="border-card" style="background: #F0F0F0">
|
||||
<el-tab-pane label="站台" name="first" style="height: 300px;background: #F0F0F0;">站台</el-tab-pane>
|
||||
<el-tab-pane label="系统" name="second" style="height:300px;background: #F0F0F0;">
|
||||
<div class="set-status-title" style="width: 80px;">系统状态</div>
|
||||
<div class="set-status-box" style="padding: 20px;">
|
||||
<el-input v-model="active" :disabled="true" size="mini" />
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="1">
|
||||
<div class="set-status-title">扣车</div>
|
||||
<div class="set-status-box">
|
||||
<el-radio v-model="command" :disabled="true" :label="true">设置</el-radio>
|
||||
<br>
|
||||
<el-radio v-model="command" :label="false">取消</el-radio>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row justify="center" class="button-group">
|
||||
<el-col :span="4" :offset="1">
|
||||
@ -42,7 +58,9 @@ export default {
|
||||
dialogShow: false,
|
||||
loading: false,
|
||||
selected: null,
|
||||
operate: {}
|
||||
activeName: 'first',
|
||||
operate: {},
|
||||
active: '未激活'
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -52,9 +70,6 @@ export default {
|
||||
show() {
|
||||
return this.dialogShow && !this.$store.state.menuOperation.break;
|
||||
},
|
||||
isCbtc() {
|
||||
return this.operate.operation === OperationEvent.Command.mBar.cbtcMode.operation;
|
||||
},
|
||||
domIdCancel() {
|
||||
return this.dialogShow ? OperationEvent.Command.cancel.menu.domId : '';
|
||||
},
|
||||
@ -65,7 +80,7 @@ export default {
|
||||
return this.dialogShow ? OperationEvent.Signal.arrangementRoute.menu.domId : '';
|
||||
},
|
||||
title() {
|
||||
return this.isCbtc ? '确认/取消CBTC模式' : '确认/取消后备模式';
|
||||
return '扣车';
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
|
60
src/views/publish/publishLesson/generate.vue
Normal file
60
src/views/publish/publishLesson/generate.vue
Normal file
@ -0,0 +1,60 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="500px" :before-close="doClose" center>
|
||||
<div style="text-align: center;">
|
||||
<span>生成地图:</span>
|
||||
<el-select v-model="mapId" placeholder="请选择" size="small">
|
||||
<el-option
|
||||
v-for="item in mapList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</div>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="doCreate">{{ $t('global.confirm') }}</el-button>
|
||||
<el-button @click="doClose">{{ $t('global.cancel') }}</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { aKeyGeneratingLesson } from '@/api/jmap/lesson';
|
||||
export default {
|
||||
name: 'Generate',
|
||||
props: {
|
||||
mapList: {
|
||||
type: Array,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialogVisible: false,
|
||||
title: '一键生成课程和试卷',
|
||||
mapId: ''
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
doShow() {
|
||||
this.dialogVisible = true;
|
||||
},
|
||||
doCreate() {
|
||||
aKeyGeneratingLesson([this.mapId]).then(resp => {
|
||||
this.$message.success('生成课程、试卷成功!');
|
||||
}).catch(() => {
|
||||
this.$message.error('生成课程、试卷失败!');
|
||||
});
|
||||
},
|
||||
doClose() {
|
||||
this.dialogVisible = false;
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
@ -2,6 +2,7 @@
|
||||
<div>
|
||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||
<update-operate ref="updateLesson" :title="$t('publish.updateLesson')" @create="handleUpdate" />
|
||||
<key-generation ref="keyGeneration" :map-list="mapList" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -9,12 +10,14 @@
|
||||
import { publishLessonList, delPublishLesson, putLessonOnLine, putLessonOffLine, updatePublishLesson } from '@/api/jmap/lesson';
|
||||
import localStore from 'storejs';
|
||||
import UpdateOperate from './draft.vue';
|
||||
import KeyGeneration from './generate';
|
||||
import { getPublishMapListOnline } from '@/api/jmap/map';
|
||||
|
||||
export default {
|
||||
name: 'PublishMap',
|
||||
components:{
|
||||
UpdateOperate
|
||||
UpdateOperate,
|
||||
KeyGeneration
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@ -22,6 +25,7 @@ export default {
|
||||
pageSize: 'pageSize',
|
||||
pageIndex: 'pageNum'
|
||||
},
|
||||
mapList:[],
|
||||
queryForm: {
|
||||
labelWidth: '80px',
|
||||
reset: true,
|
||||
@ -91,6 +95,9 @@ export default {
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
actions: [
|
||||
{ text: '一键生成课程&试卷', handler: this.handleGenerate }
|
||||
]
|
||||
},
|
||||
|
||||
@ -178,6 +185,9 @@ export default {
|
||||
},
|
||||
reloadTable() {
|
||||
this.queryList.reload();
|
||||
},
|
||||
handleGenerate() {
|
||||
this.$refs.keyGeneration.doShow();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user