Merge branch 'test_dispaly' of https://git.code.tencent.com/lian-cbtc/jl-client into test_dispaly
This commit is contained in:
commit
fd82c05d03
@ -3,16 +3,26 @@ import request from '@/utils/request';
|
|||||||
// 分页查询理论试题
|
// 分页查询理论试题
|
||||||
export function listQuestionPage(params) {
|
export function listQuestionPage(params) {
|
||||||
return request({
|
return request({
|
||||||
url: `/api/questionBank/questions/paging`,
|
// url: `/api/questionBank/questions/paging`,
|
||||||
|
url: `/api/question/org/paging`,
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params
|
params
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 标签列表
|
||||||
|
export function getLableList() {
|
||||||
|
return request({
|
||||||
|
url: `/api/question/org/lable`,
|
||||||
|
method: 'get'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// 创建题目
|
// 创建题目
|
||||||
export function createQuestion(data) {
|
export function createQuestion(data) {
|
||||||
return request({
|
return request({
|
||||||
url: `/api/questionBank/questions`,
|
// url: `/api/questionBank/questions`,
|
||||||
|
url: `/api/question/org`,
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
});
|
});
|
||||||
@ -21,15 +31,18 @@ export function createQuestion(data) {
|
|||||||
// 删除题目
|
// 删除题目
|
||||||
export function deleteQuestion(questionId) {
|
export function deleteQuestion(questionId) {
|
||||||
return request({
|
return request({
|
||||||
url: `/api/questionBank/questions/${questionId}`,
|
// url: `/api/questionBank/questions/${questionId}`,
|
||||||
method: 'delete'
|
url: `/api/question/org`,
|
||||||
|
method: 'delete',
|
||||||
|
data: [questionId]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 更新题目
|
// 更新题目
|
||||||
export function updateOption(data) {
|
export function updateOption(data) {
|
||||||
return request({
|
return request({
|
||||||
url: `/api/questionBank/questions/${data.id}`,
|
// url: `/api/questionBank/questions/${data.id}`,
|
||||||
|
url: `/api/question/org/${data.id}`,
|
||||||
method: 'put',
|
method: 'put',
|
||||||
data
|
data
|
||||||
});
|
});
|
||||||
@ -38,8 +51,17 @@ export function updateOption(data) {
|
|||||||
// 获取题目信息
|
// 获取题目信息
|
||||||
export function getQuestionInfo(questionId) {
|
export function getQuestionInfo(questionId) {
|
||||||
return request({
|
return request({
|
||||||
url: `/api/questionBank/questions/${questionId}`,
|
// url: `/api/questionBank/questions/${questionId}`,
|
||||||
|
url: `/api/question/org/${questionId}`,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 题库批量导入
|
||||||
|
export function importQuestion(data) {
|
||||||
|
return request({
|
||||||
|
url: `/api/question/org/import`,
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
});
|
||||||
|
}
|
||||||
|
@ -1618,16 +1618,6 @@ export const asyncRouter = [
|
|||||||
path: 'examManage',
|
path: 'examManage',
|
||||||
component: OrgExamManage,
|
component: OrgExamManage,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'questionCreate',
|
|
||||||
component: QuestionCreatePage,
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'questionUpdate/:questionId',
|
|
||||||
component: QuestionUpdatePage,
|
|
||||||
hidden: true
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@ -1641,6 +1631,11 @@ export const asyncRouter = [
|
|||||||
component: QuestionUpdatePage,
|
component: QuestionUpdatePage,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
|
{ // 理论题目管理-导入
|
||||||
|
path: 'preTheoryImport',
|
||||||
|
component: PreTheoryImport,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
{ // 出题规则管理
|
{ // 出题规则管理
|
||||||
path: 'questionsRuleManage',
|
path: 'questionsRuleManage',
|
||||||
hidden: true,
|
hidden: true,
|
||||||
|
@ -28,7 +28,7 @@ export default {
|
|||||||
queryForm: {
|
queryForm: {
|
||||||
reset: true,
|
reset: true,
|
||||||
labelWidth: '80px',
|
labelWidth: '80px',
|
||||||
leftSpan: 16,
|
leftSpan: 17,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
type: {
|
type: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
@ -40,14 +40,14 @@ export default {
|
|||||||
topic: {
|
topic: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '题 目'
|
label: '题 目'
|
||||||
},
|
|
||||||
companyId: {
|
|
||||||
type: 'select',
|
|
||||||
label: '单位',
|
|
||||||
config: {
|
|
||||||
data: []
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
// companyId: {
|
||||||
|
// type: 'select',
|
||||||
|
// label: '单位',
|
||||||
|
// config: {
|
||||||
|
// data: []
|
||||||
|
// }
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
queryList: {
|
||||||
@ -59,6 +59,16 @@ export default {
|
|||||||
title: '题 目',
|
title: '题 目',
|
||||||
prop: 'topic'
|
prop: 'topic'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '标 签',
|
||||||
|
prop: 'tags',
|
||||||
|
type: 'tagMore',
|
||||||
|
width: '200',
|
||||||
|
columnValue: (row) => { return this.lableTags(row); },
|
||||||
|
tagType: (row) => {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: '类 型',
|
title: '类 型',
|
||||||
prop: 'type',
|
prop: 'type',
|
||||||
@ -79,14 +89,14 @@ export default {
|
|||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
// {
|
||||||
title: '单位',
|
// title: '单位',
|
||||||
prop: 'companyId',
|
// prop: 'companyId',
|
||||||
width: '100',
|
// width: '100',
|
||||||
type: 'tag',
|
// type: 'tag',
|
||||||
columnValue: (row) => { return this.getCompanyName(row.companyId); },
|
// columnValue: (row) => { return this.getCompanyName(row.orgId); },
|
||||||
tagType: (row) => { return ''; }
|
// tagType: (row) => { return ''; }
|
||||||
},
|
// },
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: '操 作',
|
title: '操 作',
|
||||||
@ -112,7 +122,7 @@ export default {
|
|||||||
actions: [
|
actions: [
|
||||||
{ text: '添 加', handler: this.doCreate },
|
{ text: '添 加', handler: this.doCreate },
|
||||||
{ text: '导 入', fileType: 'file', handler: this.importQuestionBank },
|
{ text: '导 入', fileType: 'file', handler: this.importQuestionBank },
|
||||||
{ text: '试卷规则管理', handler: this.questionsRuleManage},
|
// { text: '试卷规则管理', handler: this.questionsRuleManage},
|
||||||
{ text: '模板导出', handler: this.exportTemplate}
|
{ text: '模板导出', handler: this.exportTemplate}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@ -125,21 +135,21 @@ export default {
|
|||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.companyList = [];
|
this.companyList = [];
|
||||||
getCompanyList().then(resp => {
|
// getCompanyList().then(resp => {
|
||||||
resp.data.forEach(item => {
|
// resp.data.forEach(item => {
|
||||||
this.queryForm.queryObject.companyId.config.data.push({ value: item.id, label: item.name });
|
// // this.queryForm.queryObject.companyId.config.data.push({ value: item.id, label: item.name });
|
||||||
this.companyMap[item.id] = item.name;
|
// this.companyMap[item.id] = item.name;
|
||||||
});
|
// });
|
||||||
});
|
// });
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
doCreate() {
|
doCreate() {
|
||||||
// this.$router.push({path: `${UrlConfig.bank.questionCreate}`});
|
// this.$router.push({path: `${UrlConfig.bank.questionCreate}`});
|
||||||
this.$router.push({path: '/teaching/questionCreate'});
|
this.$router.push({path: '/teaching/questionCreate'});
|
||||||
},
|
},
|
||||||
getCompanyName(companyId) {
|
// getCompanyName(companyId) {
|
||||||
return this.companyMap[companyId];
|
// return this.companyMap[companyId];
|
||||||
},
|
// },
|
||||||
edit(index, row) {
|
edit(index, row) {
|
||||||
// this.$router.push({path: `${UrlConfig.bank.questionUpdate}/${row.id}`});
|
// this.$router.push({path: `${UrlConfig.bank.questionUpdate}/${row.id}`});
|
||||||
this.$router.push({path: `/teaching/questionUpdate/${row.id}`});
|
this.$router.push({path: `/teaching/questionUpdate/${row.id}`});
|
||||||
@ -163,6 +173,10 @@ export default {
|
|||||||
this.$refs.detail.doShow({index, row});
|
this.$refs.detail.doShow({index, row});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
lableTags(row) {
|
||||||
|
return row.tags ? row.tags.split(',') : '';
|
||||||
|
},
|
||||||
|
|
||||||
answerTags(row) {
|
answerTags(row) {
|
||||||
const answer = [];
|
const answer = [];
|
||||||
row.optionList.forEach((el, i) => {
|
row.optionList.forEach((el, i) => {
|
||||||
@ -228,26 +242,29 @@ export default {
|
|||||||
const dataList = convertSheetToList(wb.Sheets[index], true);
|
const dataList = convertSheetToList(wb.Sheets[index], true);
|
||||||
let questionTypeIndex;
|
let questionTypeIndex;
|
||||||
let topicIndex;
|
let topicIndex;
|
||||||
|
let tagsIndex;
|
||||||
let option1Index;
|
let option1Index;
|
||||||
let option2Index;
|
let option2Index;
|
||||||
let option3Index;
|
let option3Index;
|
||||||
let option4Index;
|
let option4Index;
|
||||||
let answerIndex;
|
let answerIndex;
|
||||||
dataList.forEach((item, index) => {
|
dataList.forEach((item, ii) => {
|
||||||
if (item[0] === '题型') {
|
if (item[0] === '题型') {
|
||||||
questionTypeIndex = index;
|
questionTypeIndex = ii;
|
||||||
} else if (item[0] === '题目') {
|
} else if (item[0] === '题目') {
|
||||||
topicIndex = index;
|
topicIndex = ii;
|
||||||
|
} else if (item[0] === '标签') {
|
||||||
|
tagsIndex = ii;
|
||||||
} else if ( item[0] === '选项' && item[1] === 'A') {
|
} else if ( item[0] === '选项' && item[1] === 'A') {
|
||||||
option1Index = index;
|
option1Index = ii;
|
||||||
} else if (!item[0] && item[1] === 'B') {
|
} else if (!item[0] && item[1] === 'B') {
|
||||||
option2Index = index;
|
option2Index = ii;
|
||||||
} else if (!item[0] && item[1] === 'C') {
|
} else if (!item[0] && item[1] === 'C') {
|
||||||
option3Index = index;
|
option3Index = ii;
|
||||||
} else if (!item[0] && item[1] === 'D') {
|
} else if (!item[0] && item[1] === 'D') {
|
||||||
option4Index = index;
|
option4Index = ii;
|
||||||
} else if (item[0] === '答案') {
|
} else if (item[0] === '答案') {
|
||||||
answerIndex = index;
|
answerIndex = ii;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
if (questionTypeIndex || questionTypeIndex === 0) {
|
if (questionTypeIndex || questionTypeIndex === 0) {
|
||||||
@ -256,6 +273,7 @@ export default {
|
|||||||
const param = {
|
const param = {
|
||||||
type: questionTypeMap[item],
|
type: questionTypeMap[item],
|
||||||
topic: dataList[topicIndex][index],
|
topic: dataList[topicIndex][index],
|
||||||
|
tags: dataList[tagsIndex][index],
|
||||||
optionList: []
|
optionList: []
|
||||||
};
|
};
|
||||||
if (param.type === 'fill') {
|
if (param.type === 'fill') {
|
||||||
@ -283,7 +301,7 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
that.$store.dispatch('race/setPreTheoryData', questionList).then(() => {
|
that.$store.dispatch('race/setPreTheoryData', questionList).then(() => {
|
||||||
that.$router.push({ path: `/system/preTheoryImport`});
|
that.$router.push({ path: `/teaching/preTheoryImport`});
|
||||||
}).catch((e) => {
|
}).catch((e) => {
|
||||||
that.$message.error('导入题库失败!');
|
that.$message.error('导入题库失败!');
|
||||||
});
|
});
|
||||||
@ -313,12 +331,12 @@ export default {
|
|||||||
},
|
},
|
||||||
exportTemplate() {
|
exportTemplate() {
|
||||||
const wb = XLSX.utils.book_new();
|
const wb = XLSX.utils.book_new();
|
||||||
const data1 = [{A: '序号', B: '题型', C:'题目', D:'答案', E: '', F: '', G: '', H: ''}];
|
const data1 = [{A: '序号', B: '题型', C:'题目', D:'标签', E:'答案', F: '选项', G: '', H: '', I: ''}];
|
||||||
const data2 = [{A: '', B: '', C:'', D:'', E: 'A', F: 'B', G: 'C', H: 'D'}];
|
const data2 = [{A: '', B: '', C:'', D:'', E: '', F: 'A', G: 'B', H: 'C', I: 'D'}];
|
||||||
const data3 = [{A: '1', B: '判断', C:'题目一', D:'√', E: '', F: '', G: '', H: ''}];
|
const data3 = [{A: '1', B: '判断', C:'题目一', D:'信号机,道岔', E:'√', F: '', G: '', H: '', I: ''}];
|
||||||
const data4 = [{A: '2', B: '判断', C:'题目二', D:'×', E: '', F: '', G: '', H: ''}];
|
const data4 = [{A: '2', B: '判断', C:'题目二', D:'重点', E:'×', F: '', G: '', H: '', I: ''}];
|
||||||
const data5 = [{A: '3', B: '单选', C:'题目三', D:'A', E: '选项A', F: '选项B', G: '选项C', H: '选项D'}];
|
const data5 = [{A: '3', B: '单选', C:'题目三', D:'测试,检验', E:'A', F: '选项A', G: '选项B', H: '选项C', I: '选项D'}];
|
||||||
const data6 = [{A: '4', B: '多选', C:'题目四', D:'ABCD', E: '选项A', F: '选项B', G: '选项C', H: '选项D'}];
|
const data6 = [{A: '4', B: '多选', C:'题目四', D:'', E:'ABCD', F: '选项A', G: '选项B', H: '选项C', I: '选项D'}];
|
||||||
// const data7 = [{A: '5', B: '填空', C:'题目五', D:'第一空答案&&第二空答案&&第三空答案', E: '', F: '', G: '', H: ''}];
|
// const data7 = [{A: '5', B: '填空', C:'题目五', D:'第一空答案&&第二空答案&&第三空答案', E: '', F: '', G: '', H: ''}];
|
||||||
// const data8 = [{A: '6', B: '问答', C:'题目六', D:'问答题答案', E: '', F: '', G: '', H: '问答题答案'}];
|
// const data8 = [{A: '6', B: '问答', C:'题目六', D:'问答题答案', E: '', F: '', G: '', H: '问答题答案'}];
|
||||||
// const data = [...data1, ...data2, ...data3, ...data4, ...data5, ...data6, ...data7, ...data8];
|
// const data = [...data1, ...data2, ...data3, ...data4, ...data5, ...data6, ...data7, ...data8];
|
||||||
@ -326,8 +344,8 @@ export default {
|
|||||||
const ws = XLSX.utils.json_to_sheet(data, {skipHeader:true});
|
const ws = XLSX.utils.json_to_sheet(data, {skipHeader:true});
|
||||||
ws['!merges'] = [
|
ws['!merges'] = [
|
||||||
{
|
{
|
||||||
s: {c: 4, r: 0},
|
s: {c: 5, r: 0},
|
||||||
e: {c: 7, r: 0}
|
e: {c: 8, r: 0}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
s: {c: 0, r: 0},
|
s: {c: 0, r: 0},
|
||||||
@ -344,6 +362,10 @@ export default {
|
|||||||
{
|
{
|
||||||
s: {c: 3, r: 0},
|
s: {c: 3, r: 0},
|
||||||
e: {c: 3, r: 1}
|
e: {c: 3, r: 1}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
s: {c: 4, r: 0},
|
||||||
|
e: {c: 4, r: 1}
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
ws['!cols'] = [
|
ws['!cols'] = [
|
||||||
@ -354,6 +376,7 @@ export default {
|
|||||||
{width: 15},
|
{width: 15},
|
||||||
{width: 15},
|
{width: 15},
|
||||||
{width: 15},
|
{width: 15},
|
||||||
|
{width: 15},
|
||||||
{width: 15}
|
{width: 15}
|
||||||
];
|
];
|
||||||
XLSX.utils.book_append_sheet(wb, ws, 'file');
|
XLSX.utils.book_append_sheet(wb, ws, 'file');
|
||||||
|
@ -71,6 +71,7 @@ export default {
|
|||||||
handler:function(newV, oldV) {
|
handler:function(newV, oldV) {
|
||||||
if (this.type === 'judge' || this.type === 'select') {
|
if (this.type === 'judge' || this.type === 'select') {
|
||||||
this.active = this.optionList.findIndex(ele => ele.correct);
|
this.active = this.optionList.findIndex(ele => ele.correct);
|
||||||
|
this.$emit('change', this.active);
|
||||||
} else if (this.type === 'multi') {
|
} else if (this.type === 'multi') {
|
||||||
this.activeList = [];
|
this.activeList = [];
|
||||||
this.optionList.forEach((el, i) => {
|
this.optionList.forEach((el, i) => {
|
||||||
@ -78,13 +79,16 @@ export default {
|
|||||||
this.activeList.push(i);
|
this.activeList.push(i);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
this.$emit('change', this.activeList);
|
||||||
} else if (this.type === 'fill') {
|
} else if (this.type === 'fill') {
|
||||||
this.answerList = [];
|
this.answerList = [];
|
||||||
this.optionList.forEach(el => {
|
this.optionList.forEach(el => {
|
||||||
this.answerList.push(el.content);
|
this.answerList.push(el.content);
|
||||||
});
|
});
|
||||||
|
this.$emit('change', this.answerList);
|
||||||
} else if (this.type === 'answer') {
|
} else if (this.type === 'answer') {
|
||||||
this.answer = (this.optionList[0] || {content: ''}).content;
|
this.answer = (this.optionList[0] || {content: ''}).content;
|
||||||
|
this.$emit('change', this.answer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,62 +1,38 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="text-align: center;padding: 10px;">
|
<div style="text-align: center;padding: 10px;">
|
||||||
<div style="margin-top: 10px;margin-bottom: 10px;display: flex;justify-content: space-between;">
|
<div style="margin-top: 10px;margin-bottom: 10px;display: flex;justify-content: space-between;">
|
||||||
<div style="display: inline-block;font-size: 14px;">
|
<!-- <div style="display: inline-block;font-size: 14px;">
|
||||||
<span>单位</span>
|
<span>单位</span>
|
||||||
<el-select v-model="companyId" placeholder="请选择单位" clearable size="mini" style="margin-left: 10px;">
|
<el-select v-model="companyId" placeholder="请选择单位" clearable size="mini" style="margin-left: 10px;">
|
||||||
<el-option v-for="it in companyList" :key="it.id" :label="it.name" :value="it.id" />
|
<el-option v-for="it in companyList" :key="it.id" :label="it.name" :value="it.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div> -->
|
||||||
<div style="display: inline-block;">
|
<div style="display: inline-block;">
|
||||||
<el-button
|
<el-button v-loading="loading" size="mini" type="primary" @click="doSave">保存</el-button>
|
||||||
v-loading="loading"
|
<el-button size="mini" type="danger" @click="doCancel">取消</el-button>
|
||||||
size="mini"
|
|
||||||
type="primary"
|
|
||||||
@click="doSave"
|
|
||||||
>保存</el-button>
|
|
||||||
<el-button
|
|
||||||
size="mini"
|
|
||||||
type="danger"
|
|
||||||
@click="doCancel"
|
|
||||||
>取消</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-table
|
<el-table :data="tableData" border style="width: 100%">
|
||||||
:data="tableData"
|
<el-table-column prop="topic" label="题目" />
|
||||||
border
|
<el-table-column prop="tags" label="标签" width="200">
|
||||||
style="width: 100%"
|
|
||||||
>
|
|
||||||
<el-table-column
|
|
||||||
prop="topic"
|
|
||||||
label="题目"
|
|
||||||
/>
|
|
||||||
<el-table-column prop="type" label="类型" width="100">
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag
|
<el-tag v-for="item in getTagesArr(scope.row.tags)" :key="item" type="primary" disable-transitions style="margin-right: 10px;">{{ item }}</el-tag>
|
||||||
type="primary"
|
|
||||||
disable-transitions
|
|
||||||
>{{ $ConstSelect.translate(scope.row.type, 'QuestionTypeList') }}</el-tag>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column prop="type" label="类型" width="100">
|
||||||
prop="answer"
|
<template slot-scope="scope">
|
||||||
label="答案"
|
<el-tag type="primary" disable-transitions>{{ $ConstSelect.translate(scope.row.type, 'QuestionTypeList') }}</el-tag>
|
||||||
>
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="answer" label="答案">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag v-for="(answer, index) in answerTags(scope.row)" :key="index" type="primary" style="margin-right: 10px;">{{ answer }}</el-tag>
|
<el-tag v-for="(answer, index) in answerTags(scope.row)" :key="index" type="primary" style="margin-right: 10px;">{{ answer }}</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" width="200">
|
<el-table-column label="操作" width="200">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<el-button size="mini" @click="edit(scope.$index, scope.row)">编辑</el-button>
|
||||||
size="mini"
|
<el-button size="mini" type="danger" @click="doDelete(scope.$index, scope.row)">删除</el-button>
|
||||||
@click="edit(scope.$index, scope.row)"
|
|
||||||
>编辑</el-button>
|
|
||||||
<el-button
|
|
||||||
size="mini"
|
|
||||||
type="danger"
|
|
||||||
@click="doDelete(scope.$index, scope.row)"
|
|
||||||
>删除</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@ -73,9 +49,10 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { UrlConfig } from '@/scripts/ConstDic';
|
// import { UrlConfig } from '@/scripts/ConstDic';
|
||||||
import { importQuestionBand } from '@/api/race';
|
// import { importQuestionBand } from '@/api/race';
|
||||||
import { getCompanyList } from '@/api/company';
|
import { importQuestion } from '@/api/questionBank.js';
|
||||||
|
// import { getCompanyList } from '@/api/company';
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -98,14 +75,18 @@ export default {
|
|||||||
mounted() {
|
mounted() {
|
||||||
this.handlePreDataPaging();
|
this.handlePreDataPaging();
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
getCompanyList().then(resp => {
|
// getCompanyList().then(resp => {
|
||||||
this.companyList = resp.data;
|
// this.companyList = resp.data;
|
||||||
});
|
// });
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getTagesArr(tags) {
|
||||||
|
return tags ? tags.split(',') : '';
|
||||||
|
},
|
||||||
edit(index, row) {
|
edit(index, row) {
|
||||||
const number = (this.currentPage - 1) * this.pageSize + index;
|
const number = (this.currentPage - 1) * this.pageSize + index;
|
||||||
this.$router.push({path: `${UrlConfig.bank.questionUpdate}/${number}`, query:{ draft: true }});
|
// this.$router.push({path: `${UrlConfig.bank.questionUpdate}/${number}`, query:{ draft: true }});
|
||||||
|
this.$router.push({path: `/teaching/questionUpdate/${number}`, query:{ draft: true }});
|
||||||
},
|
},
|
||||||
handlePreDataPaging() {
|
handlePreDataPaging() {
|
||||||
const preData = this.$store.state.race.preTheoryData;
|
const preData = this.$store.state.race.preTheoryData;
|
||||||
@ -193,7 +174,8 @@ export default {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
importQuestionBand(this.$store.state.race.preTheoryData, this.companyId).then(resp => {
|
// importQuestionBand(this.$store.state.race.preTheoryData, this.companyId).then(resp => {
|
||||||
|
importQuestion(this.$store.state.race.preTheoryData).then(resp => {
|
||||||
this.$store.dispatch('race/setPreTheoryData', []);
|
this.$store.dispatch('race/setPreTheoryData', []);
|
||||||
// this.$message.success('导入题库成功!');
|
// this.$message.success('导入题库成功!');
|
||||||
this.$alert(`<strong>本次导入:</strong><br><strong>${judgeNum}道判断题;</strong><br><strong>${selectNum}道选择题;</strong><br><strong>${multiNum}道多选题;</strong><br>`, '导入题库成功!', {
|
this.$alert(`<strong>本次导入:</strong><br><strong>${judgeNum}道判断题;</strong><br><strong>${selectNum}道选择题;</strong><br><strong>${multiNum}道多选题;</strong><br>`, '导入题库成功!', {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<div class="page">
|
<div class="page">
|
||||||
<div class="page__container">
|
<div class="page__container">
|
||||||
<el-card class="page__container-body">
|
<el-card class="page__container-body">
|
||||||
<question-form ref="info" :option="formModel" :remove="true" @modify="doModify" @companyIdChange="companyIdChange" />
|
<question-form ref="info" :option="formModel" :remove="true" @modify="doModify" @companyIdChange="companyIdChange" @tagsChange="tagsChange" />
|
||||||
</el-card>
|
</el-card>
|
||||||
<div class="page__container-footer">
|
<div class="page__container-footer">
|
||||||
<el-button type="primary" :is-create="true" @click="create">提 交</el-button>
|
<el-button type="primary" :is-create="true" @click="create">提 交</el-button>
|
||||||
@ -31,10 +31,12 @@ export default {
|
|||||||
id: '',
|
id: '',
|
||||||
topic: '',
|
topic: '',
|
||||||
type: 'select',
|
type: 'select',
|
||||||
answer: 0,
|
tags: '',
|
||||||
|
answer: '',
|
||||||
optionList: []
|
optionList: []
|
||||||
},
|
},
|
||||||
companyId: null
|
companyId: null,
|
||||||
|
tagsArr: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -62,10 +64,14 @@ export default {
|
|||||||
companyIdChange(value) {
|
companyIdChange(value) {
|
||||||
this.companyId = value;
|
this.companyId = value;
|
||||||
},
|
},
|
||||||
|
tagsChange(list) {
|
||||||
|
this.tagsArr = list;
|
||||||
|
},
|
||||||
create() {
|
create() {
|
||||||
this.$refs.info.validate().then(valid => {
|
this.$refs.info.validate().then(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
this.formModel.companyId = parseInt(this.companyId);
|
// this.formModel.companyId = parseInt(this.companyId);
|
||||||
|
this.formModel.tags = this.tagsArr.join(',');
|
||||||
createQuestion(this.formModel).then(resp => {
|
createQuestion(this.formModel).then(resp => {
|
||||||
authUtils.setSessionStorage(this.path, JSON.stringify({
|
authUtils.setSessionStorage(this.path, JSON.stringify({
|
||||||
type: this.formModel.type
|
type: this.formModel.type
|
||||||
|
@ -1,16 +1,21 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<el-form ref="form" :model="option" :rules="rules" label-width="80px">
|
<el-form ref="form" :model="option" :rules="rules" label-width="80px">
|
||||||
<el-form-item v-if="!$route.query.draft && !isProject" label="单 位" prop="companyId">
|
<!-- <el-form-item v-if="!$route.query.draft && !isProject" label="单 位" prop="companyId">
|
||||||
<el-select v-model="companyId" placeholder="请选择单位" clearable @change="companyIdChange">
|
<el-select v-model="companyId" placeholder="请选择单位" clearable @change="companyIdChange">
|
||||||
<el-option v-for="it in companyList" :key="it.id" :label="it.name" :value="it.id" />
|
<el-option v-for="it in companyList" :key="it.id" :label="it.name" :value="it.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item label="类 型" prop="type">
|
<el-form-item label="类 型" prop="type">
|
||||||
<el-select v-model="option.type" :disabled="update" placeholder="请选择试题类型" @change="onTypeChnage">
|
<el-select v-model="option.type" :disabled="update" placeholder="请选择试题类型" @change="onTypeChnage">
|
||||||
<el-option v-for="it in QuestionTypeList" :key="it.value" :label="it.label" :value="it.value" />
|
<el-option v-for="it in QuestionTypeList" :key="it.value" :label="it.label" :value="it.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="标 签">
|
||||||
|
<el-select v-model="tagsArr" multiple filterable allow-create default-first-option placeholder="请选择标签" @change="tagsChange">
|
||||||
|
<el-option v-for="item in labelList" :key="item" :label="item" :value="item" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item label="问 题" prop="topic">
|
<el-form-item label="问 题" prop="topic">
|
||||||
<item-rich v-model="option.topic" @modify="onModify({model: option, prop: 'topic'})" />
|
<item-rich v-model="option.topic" @modify="onModify({model: option, prop: 'topic'})" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -32,6 +37,7 @@ import ItemOptions from './item-options';
|
|||||||
import ItemAnswer from './item-answer';
|
import ItemAnswer from './item-answer';
|
||||||
import { getCompanyList } from '@/api/company';
|
import { getCompanyList } from '@/api/company';
|
||||||
import { getSessionStorage } from '@/utils/auth';
|
import { getSessionStorage } from '@/utils/auth';
|
||||||
|
import { getLableList } from '@/api/questionBank.js';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
@ -60,7 +66,9 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
companyList: [],
|
companyList: [],
|
||||||
companyId: null
|
companyId: null,
|
||||||
|
tagsArr: [],
|
||||||
|
labelList: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -111,7 +119,7 @@ export default {
|
|||||||
return this.option.optionList;
|
return this.option.optionList;
|
||||||
},
|
},
|
||||||
QuestionTypeList() {
|
QuestionTypeList() {
|
||||||
return this.$ConstSelect.QuestionTypeList;
|
return this.$ConstSelect.QuestionTypeList.filter(item => { return !['fill', 'answer'].includes(item.value); });
|
||||||
},
|
},
|
||||||
rules() {
|
rules() {
|
||||||
return {
|
return {
|
||||||
@ -119,10 +127,10 @@ export default {
|
|||||||
{ required: true, message: '请输入试题内容', trigger: 'blur' }
|
{ required: true, message: '请输入试题内容', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
type: [
|
type: [
|
||||||
{ required: true, message: '请输入试题类型', trigger: 'change' }
|
{ required: true, message: '请输入试题类型', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
answer: [
|
answer: [
|
||||||
{ required: true, message: '请选择正确答案', trigger: 'change' }
|
{ required: true, message: '请选择正确答案', trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -133,6 +141,12 @@ export default {
|
|||||||
this.companyList = resp.data;
|
this.companyList = resp.data;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
getLableList().then(res => {
|
||||||
|
this.labelList = res.data || [];
|
||||||
|
}).catch(err => {
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
validate() {
|
validate() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
@ -144,6 +158,9 @@ export default {
|
|||||||
companyIdChange(e) {
|
companyIdChange(e) {
|
||||||
this.$emit('companyIdChange', e);
|
this.$emit('companyIdChange', e);
|
||||||
},
|
},
|
||||||
|
tagsChange(list) {
|
||||||
|
this.$emit('tagsChange', list);
|
||||||
|
},
|
||||||
onTypeChnage(type) {
|
onTypeChnage(type) {
|
||||||
if (this.templateMap[type] && !this.update) {
|
if (this.templateMap[type] && !this.update) {
|
||||||
this.option.optionList = this.templateMap[type]();
|
this.option.optionList = this.templateMap[type]();
|
||||||
@ -171,6 +188,11 @@ export default {
|
|||||||
this.option.optionList[0] = {content: answer, correct:true};
|
this.option.optionList[0] = {content: answer, correct:true};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (Array.isArray(answer)) {
|
||||||
|
this.option.answer = answer.join(',');
|
||||||
|
} else {
|
||||||
|
this.option.answer = answer + '';
|
||||||
|
}
|
||||||
},
|
},
|
||||||
onModify(node) {
|
onModify(node) {
|
||||||
this.$emit('modify', node);
|
this.$emit('modify', node);
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<div class="page">
|
<div class="page">
|
||||||
<div class="page__container">
|
<div class="page__container">
|
||||||
<el-card class="page__container-body">
|
<el-card class="page__container-body">
|
||||||
<question-form ref="info" :option="formModel" :remove="true" :update="true" @modify="doModify" @companyIdChange="companyIdChange" />
|
<question-form ref="info" :option="formModel" :remove="true" :update="true" @modify="doModify" @companyIdChange="companyIdChange" @tagsChange="tagsChange" />
|
||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
<div class="page__container-footer">
|
<div class="page__container-footer">
|
||||||
@ -30,10 +30,12 @@ export default {
|
|||||||
id: '',
|
id: '',
|
||||||
topic: '',
|
topic: '',
|
||||||
type: 'select',
|
type: 'select',
|
||||||
answer: 0,
|
tags: '',
|
||||||
|
answer: '',
|
||||||
optionList: []
|
optionList: []
|
||||||
},
|
},
|
||||||
optionList: []
|
optionList: [],
|
||||||
|
tagsArr: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -55,11 +57,13 @@ export default {
|
|||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.formModel = deepAssign({}, this.$store.state.race.preTheoryData[this.questionId]);
|
this.formModel = deepAssign({}, this.$store.state.race.preTheoryData[this.questionId]);
|
||||||
this.formModel.answer = this.formModel.optionList.findIndex(ele => ele.correct);
|
this.formModel.answer = this.formModel.optionList.findIndex(ele => ele.correct);
|
||||||
|
this.$refs.info.tagsArr = this.formModel.tags.split(',');
|
||||||
}, 500);
|
}, 500);
|
||||||
} else {
|
} else {
|
||||||
getQuestionInfo(this.questionId).then(resp => {
|
getQuestionInfo(this.questionId).then(resp => {
|
||||||
this.formModel = resp.data;
|
this.formModel = resp.data;
|
||||||
this.formModel.answer = this.formModel.optionList.findIndex(ele => ele.correct);
|
this.formModel.answer = this.formModel.optionList.findIndex(ele => ele.correct);
|
||||||
|
this.$refs.info.tagsArr = this.formModel.tags.split(',');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -69,6 +73,9 @@ export default {
|
|||||||
companyIdChange(value) {
|
companyIdChange(value) {
|
||||||
this.companyId = value;
|
this.companyId = value;
|
||||||
},
|
},
|
||||||
|
tagsChange(list) {
|
||||||
|
this.tagsArr = list;
|
||||||
|
},
|
||||||
doModify(node) {
|
doModify(node) {
|
||||||
this.$refs.rich.doShow(node);
|
this.$refs.rich.doShow(node);
|
||||||
},
|
},
|
||||||
@ -78,7 +85,8 @@ export default {
|
|||||||
this.$store.state.race.preTheoryData[this.questionId] = this.formModel;
|
this.$store.state.race.preTheoryData[this.questionId] = this.formModel;
|
||||||
this.doBack();
|
this.doBack();
|
||||||
} else if (valid) {
|
} else if (valid) {
|
||||||
this.formModel.companyId = parseInt(this.companyId);
|
// this.formModel.companyId = parseInt(this.companyId);
|
||||||
|
this.formModel.tags = this.tagsArr.join(',');
|
||||||
updateOption(this.formModel).then(resp => {
|
updateOption(this.formModel).then(resp => {
|
||||||
this.doBack();
|
this.doBack();
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
|
@ -1,14 +1,17 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
|
<!-- 设备登陆 -->
|
||||||
<div v-if="syncLogin">
|
<div v-if="syncLogin">
|
||||||
{{}}
|
{{}}
|
||||||
</div>
|
</div>
|
||||||
<div v-else v-show="loadedConfig" class="login-container" :style="{ 'background-image': showBackPic?'url(' + bgImg + ')':'none' }">
|
<div v-else v-show="loadedConfig" class="login-container" :style="{ 'background-image': showBackPic?'url(' + bgImg + ')':'none' }">
|
||||||
|
<!-- 中英文切换 -->
|
||||||
<div class="language_box">
|
<div class="language_box">
|
||||||
<el-tooltip effect="dark" :content="this.$t('login.clickSwitchLanguage')" placement="bottom-end">
|
<el-tooltip effect="dark" :content="this.$t('login.clickSwitchLanguage')" placement="bottom-end">
|
||||||
<el-button class="language_btn" type="text" @click="handleLanguage">{{ language }}</el-button>
|
<el-button class="language_btn" type="text" @click="handleLanguage">{{ language }}</el-button>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- logo和名称 -->
|
||||||
<div class="left-logo-box">
|
<div class="left-logo-box">
|
||||||
<img class="logo" :src="loginProLogo" :style="{ width: loginProLogoWidth+'px'}">
|
<img class="logo" :src="loginProLogo" :style="{ width: loginProLogoWidth+'px'}">
|
||||||
<span>{{ loginOrgTitle }}</span>
|
<span>{{ loginOrgTitle }}</span>
|
||||||
@ -20,12 +23,16 @@
|
|||||||
<!-- 默认登陆 -->
|
<!-- 默认登陆 -->
|
||||||
<normal-login ref="normalLogin" :project="backProject" :local-project="localProject" @forgetPassword="forgetPassword" @showOrgList="showOrgList" />
|
<normal-login ref="normalLogin" :project="backProject" :local-project="localProject" @forgetPassword="forgetPassword" @showOrgList="showOrgList" />
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 基于系统开发 -->
|
||||||
<base-development v-if="baseDevelopment" ref="baseDevelopment" />
|
<base-development v-if="baseDevelopment" ref="baseDevelopment" />
|
||||||
|
<!-- 关于系统 -->
|
||||||
<div class="bottomInfo">
|
<div class="bottomInfo">
|
||||||
<span>{{ aboutSystem }}</span>
|
<span>{{ aboutSystem }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 忘记密码 -->
|
||||||
<forget-password ref="forgetPassword" />
|
<forget-password ref="forgetPassword" />
|
||||||
|
<!-- 选择组织 -->
|
||||||
<OrgSelect ref="orgSelect" @select="selectOrgnization" />
|
<OrgSelect ref="orgSelect" @select="selectOrgnization" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -41,6 +48,8 @@ import ForgetPassword from './forgetPassword';
|
|||||||
import OrgSelect from './orgSelect';
|
import OrgSelect from './orgSelect';
|
||||||
export default {
|
export default {
|
||||||
name:'LoginNew',
|
name:'LoginNew',
|
||||||
|
// components: { Register },
|
||||||
|
// export const RegisterCodeList = ['cgy', 'designcgy'];
|
||||||
components: { WechatLogin, NormalLogin, BaseDevelopment, ForgetPassword, OrgSelect },
|
components: { WechatLogin, NormalLogin, BaseDevelopment, ForgetPassword, OrgSelect },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -77,7 +77,6 @@
|
|||||||
</el-form>
|
</el-form>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
// export const RegisterCodeList = ['cgy', 'designcgy'];
|
|
||||||
import QCode from '@/assets/erCode.jpg';
|
import QCode from '@/assets/erCode.jpg';
|
||||||
import md5 from 'js-md5';
|
import md5 from 'js-md5';
|
||||||
import Cookies from 'js-cookie';
|
import Cookies from 'js-cookie';
|
||||||
@ -85,8 +84,6 @@ import Cookies from 'js-cookie';
|
|||||||
import { getOrgList, selectOrgnization } from '@/api/login';
|
import { getOrgList, selectOrgnization } from '@/api/login';
|
||||||
export default {
|
export default {
|
||||||
name:'NormalLogin',
|
name:'NormalLogin',
|
||||||
// Register,
|
|
||||||
// components: { ForgetPassword },
|
|
||||||
props: {
|
props: {
|
||||||
project: {
|
project: {
|
||||||
type: String,
|
type: String,
|
||||||
@ -142,8 +139,6 @@ export default {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
// created() {
|
|
||||||
// },
|
|
||||||
watch: {
|
watch: {
|
||||||
'project': function(val) {
|
'project': function(val) {
|
||||||
if (Cookies.get(this.cookiesName) && Cookies.get(this.cookiesToken)) {
|
if (Cookies.get(this.cookiesName) && Cookies.get(this.cookiesToken)) {
|
||||||
@ -158,6 +153,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
|
// 密码显隐
|
||||||
showPwd() {
|
showPwd() {
|
||||||
if (this.pwdType === 'password') {
|
if (this.pwdType === 'password') {
|
||||||
this.pwdDisplay = false;
|
this.pwdDisplay = false;
|
||||||
@ -167,12 +163,12 @@ export default {
|
|||||||
this.pwdDisplay = true;
|
this.pwdDisplay = true;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
// 登陆接口
|
||||||
loginAction(model) {
|
loginAction(model) {
|
||||||
this.$store
|
this.$store
|
||||||
.dispatch('Login', model)
|
.dispatch('Login', model)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.$store.dispatch('SetAccount', model.username);
|
this.$store.dispatch('SetAccount', model.username);
|
||||||
// this.handleLoginSucessRoute();
|
|
||||||
this.checkOrgnizationInfo();
|
this.checkOrgnizationInfo();
|
||||||
})
|
})
|
||||||
.catch(error => {
|
.catch(error => {
|
||||||
@ -193,6 +189,7 @@ export default {
|
|||||||
}, 5000);
|
}, 5000);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 获取组织列表
|
||||||
checkOrgnizationInfo() {
|
checkOrgnizationInfo() {
|
||||||
getOrgList().then(resp => {
|
getOrgList().then(resp => {
|
||||||
const orgList = resp.data;
|
const orgList = resp.data;
|
||||||
@ -205,16 +202,17 @@ export default {
|
|||||||
this.handleLoginSucessRoute();
|
this.handleLoginSucessRoute();
|
||||||
} else {
|
} else {
|
||||||
this.$emit('showOrgList', orgList);
|
this.$emit('showOrgList', orgList);
|
||||||
// this.showOrgSelect(orgList).then(this.handleLoginSucessRoute());
|
|
||||||
}
|
}
|
||||||
}).catch(()=>{
|
}).catch(()=>{
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 选择组织
|
||||||
selectOrg(orgId) {
|
selectOrg(orgId) {
|
||||||
this.handleLoginSucessRoute();
|
this.handleLoginSucessRoute();
|
||||||
selectOrgnization(orgId);
|
selectOrgnization(orgId);
|
||||||
},
|
},
|
||||||
|
// 跳转路由
|
||||||
handleLoginSucessRoute() {
|
handleLoginSucessRoute() {
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
this.tipsMsg = '';
|
this.tipsMsg = '';
|
||||||
@ -243,6 +241,7 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 忘记密码
|
||||||
forgetPassword() {
|
forgetPassword() {
|
||||||
this.$emit('forgetPassword');
|
this.$emit('forgetPassword');
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
<dispatch-cmd v-if="datie" ref="dispatchCmd" @close="close" />
|
<dispatch-cmd v-if="datie" ref="dispatchCmd" @close="close" />
|
||||||
<dispatcher-loger v-if="datie" ref="dispatcherLoger" @close="close" />
|
<dispatcher-loger v-if="datie" ref="dispatcherLoger" @close="close" />
|
||||||
<terminal-menu v-if="menuShow" ref="terminalMenu" @pictureChange="pictureChange" @popupTerminalShow="popupTerminalShow" @loadingChange="loadingChange" />
|
<terminal-menu v-if="menuShow" ref="terminalMenu" @pictureChange="pictureChange" @popupTerminalShow="popupTerminalShow" @loadingChange="loadingChange" />
|
||||||
|
<iscs-system v-else-if="picture === 'iscs'" ref="IscsSystem" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -32,6 +33,7 @@ import DigitalStand from '@/views/jlmap3d/simulation/jl3dsimulation';
|
|||||||
import IbpPlate from '@/views/ibp/ibpsystem/index';
|
import IbpPlate from '@/views/ibp/ibpsystem/index';
|
||||||
import TrafficTerminalWork from './trafficTerminalWork';
|
import TrafficTerminalWork from './trafficTerminalWork';
|
||||||
import BigTrainRunplanManage from '@/views/bigTrainRunplanManage/index';
|
import BigTrainRunplanManage from '@/views/bigTrainRunplanManage/index';
|
||||||
|
import IscsSystem from '@/views/iscs/iscsSystem/index';
|
||||||
export default {
|
export default {
|
||||||
name: 'Index',
|
name: 'Index',
|
||||||
components: {
|
components: {
|
||||||
@ -46,7 +48,8 @@ export default {
|
|||||||
IbpPlate,
|
IbpPlate,
|
||||||
TrafficTerminalWork,
|
TrafficTerminalWork,
|
||||||
DigitalStand,
|
DigitalStand,
|
||||||
BigTrainRunplanManage
|
BigTrainRunplanManage,
|
||||||
|
IscsSystem
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
Loading…
Reference in New Issue
Block a user