Merge branch 'test' of https://git.code.tencent.com/lian-cbtc/jl-client into test
This commit is contained in:
commit
f749a9bfdb
@ -17,6 +17,7 @@ import ibp from './modules/ibp';
|
|||||||
import order from './modules/order';
|
import order from './modules/order';
|
||||||
import iscs from './modules/iscs';
|
import iscs from './modules/iscs';
|
||||||
import rpTools from './modules/rpTools';
|
import rpTools from './modules/rpTools';
|
||||||
|
import race from './modules/race';
|
||||||
|
|
||||||
import getters from './getters';
|
import getters from './getters';
|
||||||
|
|
||||||
@ -39,8 +40,9 @@ const store = new Vuex.Store({
|
|||||||
scriptRecord,
|
scriptRecord,
|
||||||
ibp,
|
ibp,
|
||||||
order,
|
order,
|
||||||
iscs,
|
iscs,
|
||||||
rpTools
|
rpTools,
|
||||||
|
race
|
||||||
},
|
},
|
||||||
getters
|
getters
|
||||||
});
|
});
|
||||||
|
@ -16,6 +16,7 @@ import scriptRecord from './modules/scriptRecord';
|
|||||||
import ibp from './modules/ibp';
|
import ibp from './modules/ibp';
|
||||||
import order from './modules/order';
|
import order from './modules/order';
|
||||||
import iscs from './modules/iscs';
|
import iscs from './modules/iscs';
|
||||||
|
import race from './modules/race';
|
||||||
|
|
||||||
import getters from './getters';
|
import getters from './getters';
|
||||||
|
|
||||||
@ -38,7 +39,8 @@ const store = new Vuex.Store({
|
|||||||
scriptRecord,
|
scriptRecord,
|
||||||
ibp,
|
ibp,
|
||||||
order,
|
order,
|
||||||
iscs
|
iscs,
|
||||||
|
race
|
||||||
},
|
},
|
||||||
getters
|
getters
|
||||||
});
|
});
|
||||||
|
40
src/store/modules/race.js
Normal file
40
src/store/modules/race.js
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/**
|
||||||
|
* 竞赛状态数据
|
||||||
|
*/
|
||||||
|
const race = {
|
||||||
|
namespaced: true,
|
||||||
|
state: {
|
||||||
|
preTheoryData: [] // 导入的理论预保存数据,
|
||||||
|
},
|
||||||
|
getters: {
|
||||||
|
preTheoryData: (state)=>{
|
||||||
|
return state.preTheoryData;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mutations: {
|
||||||
|
setPreTheoryData: (state, preTheoryData) => {
|
||||||
|
state.orderList = preTheoryData;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
actions: {
|
||||||
|
/**
|
||||||
|
* 设置导入的理论预保存数据
|
||||||
|
*/
|
||||||
|
setPreTheoryData: ({ commit }, preTheoryData) => {
|
||||||
|
commit('setPreTheoryData', preTheoryData);
|
||||||
|
}
|
||||||
|
// getRouteDataListByCode: ({ state, commit }, code) => { // 获取进路数据
|
||||||
|
// return new Promise((resolve) => {
|
||||||
|
// const list = [];
|
||||||
|
// const routeList = Object.values(state.routeData);
|
||||||
|
// routeList.forEach(route => {
|
||||||
|
// if (route.startSignalCode == code) {
|
||||||
|
// list.push(route);
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// resolve(list);
|
||||||
|
// });
|
||||||
|
// },
|
||||||
|
}
|
||||||
|
};
|
||||||
|
export default race;
|
@ -38,6 +38,7 @@ export default {
|
|||||||
doInput() {
|
doInput() {
|
||||||
const node = this.node;
|
const node = this.node;
|
||||||
node.model[node.prop] = this.content;
|
node.model[node.prop] = this.content;
|
||||||
|
// this.$emit('update');
|
||||||
this.doClose();
|
this.doClose();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -254,6 +254,11 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// this.$store.dispatch('race/setPreTheoryData', questionList).then(({ valid }) => {
|
||||||
|
//
|
||||||
|
// }).catch(() => {
|
||||||
|
// this.$message.error('导入题库失败!');
|
||||||
|
// });
|
||||||
importQuestionBand(questionList, 'DRTS').then(resp => {
|
importQuestionBand(questionList, 'DRTS').then(resp => {
|
||||||
this.$message.success('导入题库成功!');
|
this.$message.success('导入题库成功!');
|
||||||
}).catch(()=>{
|
}).catch(()=>{
|
||||||
|
@ -78,13 +78,13 @@ export default {
|
|||||||
} else if (this.type === 'answer') {
|
} else if (this.type === 'answer') {
|
||||||
this.answer = (this.optionList[0] || {content: ''}).content;
|
this.answer = (this.optionList[0] || {content: ''}).content;
|
||||||
}
|
}
|
||||||
},
|
|
||||||
answerList: {
|
|
||||||
handler(val) {
|
|
||||||
this.onChange(val);
|
|
||||||
},
|
|
||||||
deep: true
|
|
||||||
}
|
}
|
||||||
|
// answerList: {
|
||||||
|
// handler(val) {
|
||||||
|
// this.onChange(val);
|
||||||
|
// },
|
||||||
|
// deep: true
|
||||||
|
// }
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
onChange(e) {
|
onChange(e) {
|
||||||
@ -95,6 +95,7 @@ export default {
|
|||||||
},
|
},
|
||||||
doModify(el) {
|
doModify(el) {
|
||||||
this.$emit('modify', {model: el, prop: 'value'});
|
this.$emit('modify', {model: el, prop: 'value'});
|
||||||
|
console.log('-----------', this.answerList);
|
||||||
},
|
},
|
||||||
doRemove(index) {
|
doRemove(index) {
|
||||||
this.answerList.splice(index, 1);
|
this.answerList.splice(index, 1);
|
||||||
|
136
src/views/competitionManage/bankList/preImport.vue
Normal file
136
src/views/competitionManage/bankList/preImport.vue
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<query-list-page ref="user" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { UrlConfig } from '@/scripts/ConstDic';
|
||||||
|
import { listQuestionPage, deleteQuestion } from '@/api/questionBank.js';
|
||||||
|
import { convertSheetToList } from '@/utils/runPlan';
|
||||||
|
import XLSX from 'xlsx';
|
||||||
|
import { importQuestionBand } from '@/api/race';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
pagerConfig: {
|
||||||
|
pageSize: 'pageSize',
|
||||||
|
pageIndex: 'pageNum'
|
||||||
|
},
|
||||||
|
queryForm: {
|
||||||
|
reset: true,
|
||||||
|
labelWidth: '80px',
|
||||||
|
leftSpan: 18,
|
||||||
|
queryObject: {
|
||||||
|
}
|
||||||
|
},
|
||||||
|
queryList: {
|
||||||
|
query: this.handlePreDataPaging,
|
||||||
|
selectCheckShow: false,
|
||||||
|
indexShow: true,
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: '题 目',
|
||||||
|
prop: 'topic'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '类 型',
|
||||||
|
prop: 'type',
|
||||||
|
type: 'tag',
|
||||||
|
width: '120',
|
||||||
|
columnValue: (row) => { return this.$ConstSelect.translate(row.type, 'QuestionTypeList'); },
|
||||||
|
tagType: (row) => {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '答 案',
|
||||||
|
prop: 'answer',
|
||||||
|
type: 'tagMore',
|
||||||
|
width: '200',
|
||||||
|
columnValue: (row) => { return this.answerTags(row); },
|
||||||
|
tagType: (row) => {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'button',
|
||||||
|
title: '操 作',
|
||||||
|
width: '320',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
name: '编辑',
|
||||||
|
handleClick: this.edit
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '删 除',
|
||||||
|
handleClick: this.doDelete,
|
||||||
|
type: 'danger'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
userId() {
|
||||||
|
return this.$store.state.user.id;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
edit(index, row) {
|
||||||
|
this.$router.push({path: `${UrlConfig.bank.questionUpdate}/${row.id}`});
|
||||||
|
},
|
||||||
|
handlePreDataPaging(param) {
|
||||||
|
|
||||||
|
},
|
||||||
|
doDelete(index, row) {
|
||||||
|
this.$confirm('删除试题,是否继续?', '提 示', {
|
||||||
|
confirmButtonText: '确 定',
|
||||||
|
cancelButtonText: '取 消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
deleteQuestion(row.id).then(resp => {
|
||||||
|
this.reloadTable();
|
||||||
|
}).catch(error => {
|
||||||
|
this.$message.error(`删除试题失败: ${error.message}`);
|
||||||
|
});
|
||||||
|
}).catch( () => { });
|
||||||
|
},
|
||||||
|
answerTags(row) {
|
||||||
|
const answer = [];
|
||||||
|
row.optionList.forEach((el, i) => {
|
||||||
|
switch (row.type) {
|
||||||
|
case 'select':
|
||||||
|
if (el.correct) {
|
||||||
|
answer.push(this.$asc2chart(i + 65));
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'judge':
|
||||||
|
if (el.correct) {
|
||||||
|
answer.push(el.content);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'multi':
|
||||||
|
if (el.correct) {
|
||||||
|
answer.push(this.$asc2chart(i + 65));
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'fill':
|
||||||
|
answer.push(el.content);
|
||||||
|
break;
|
||||||
|
case 'answer':
|
||||||
|
answer.push(el.content);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return answer;
|
||||||
|
},
|
||||||
|
reloadTable() {
|
||||||
|
this.queryList.reload();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
Loading…
Reference in New Issue
Block a user