提交 80c8e9f7 authored 作者: lihuihui's avatar lihuihui

updata

上级 566f885b
...@@ -164,10 +164,12 @@ export default { ...@@ -164,10 +164,12 @@ export default {
data.child_question_type = b.question_type || 1 data.child_question_type = b.question_type || 1
data.question_content = b.question_content data.question_content = b.question_content
data.question_analysis = b.question_analysis data.question_analysis = b.question_analysis
data.order = b.order
if (this.type !== 3) data.question_options = b.question_options if (this.type !== 3) data.question_options = b.question_options
a.push(data) a.push(data)
return a return a
}, []) }, []).sort((a, b) => a.order - b.order)
console.log(this.checkedList, '123')
}, },
// 筛选更新列表 // 筛选更新列表
refetchList() { refetchList() {
......
...@@ -27,12 +27,12 @@ const routes = [ ...@@ -27,12 +27,12 @@ const routes = [
}, },
{ {
path: 'questionDetail', path: 'questionDetail',
component: () => import('./views/Create.vue'), component: () => import('./views/EditView.vue'),
meta: { title: '试题详情' } meta: { title: '试题详情' }
}, },
{ {
path: 'editQuestion', path: 'editQuestion',
component: () => import('./views/Create.vue'), component: () => import('./views/EditView.vue'),
meta: { title: '编辑试题' } meta: { title: '编辑试题' }
} }
] ]
......
<template> <template>
<app-card> <app-card>
<template v-if="[1, 2, 3, 6].includes(questionTypeNum) && !cache"> <detail v-if="[1, 2, 3, 6].includes(questionTypeNum) && !cache" @questionType="questionType"></detail>
<template v-if="$route.query.id"> <situation-question v-else :questionTypeNumber="questionTypeNum" @questionType="questionType"></situation-question>
<detail v-if="Object.keys(detailData).length" :detailData="detailData" @questionType="questionType"></detail>
</template>
<detail v-else @questionType="questionType"></detail>
</template>
<template v-else>
<template v-if="$route.query.id">
<situation-question v-if="$route.query.id && Object.keys(detailData).length" :detailData="detailData" :questionTypeNumber="questionTypeNum" @questionType="questionType"></situation-question>
</template>
<situation-question v-else :questionTypeNumber="questionTypeNum" @questionType="questionType"></situation-question>
</template>
</app-card> </app-card>
</template> </template>
<script> <script>
import Detail from '../components/Detail.vue' import Detail from '../components/Detail.vue'
import SituationQuestion from '../components/QTypeSituation.vue' import SituationQuestion from '../components/QTypeSituation.vue'
import { questionDetail } from '../api'
export default { export default {
components: { Detail, SituationQuestion }, components: { Detail, SituationQuestion },
data() { data() {
...@@ -28,16 +17,6 @@ export default { ...@@ -28,16 +17,6 @@ export default {
cache: window.localStorage.cacheQuestion cache: window.localStorage.cacheQuestion
} }
}, },
mounted() {
if (this.$route.query.id) {
questionDetail(this.$route.query.id).then(res => {
this.questionTypeNum = res.data.question_type
res.data.permission = res.data.permission.toString()
res.data.question_difficulty = res.data.question_difficulty.toString()
this.detailData = res.data
})
}
},
methods: { methods: {
questionType(n) { questionType(n) {
this.cache = '' this.cache = ''
......
<template>
<app-card>
<template v-if="[1, 2, 3, 6].includes(questionTypeNum) && !cache">
<template v-if="$route.query.id">
<detail v-if="Object.keys(detailData).length" :detailData="detailData" @questionType="questionType"></detail>
</template>
<detail v-else @questionType="questionType"></detail>
</template>
<template v-else>
<template v-if="$route.query.id">
<situation-question v-if="$route.query.id && Object.keys(detailData).length" :detailData="detailData" :questionTypeNumber="questionTypeNum" @questionType="questionType"></situation-question>
</template>
<situation-question v-else :questionTypeNumber="questionTypeNum" @questionType="questionType"></situation-question>
</template>
</app-card>
</template>
<script>
import Detail from '../components/Detail.vue'
import SituationQuestion from '../components/QTypeSituation.vue'
import { questionDetail } from '../api'
export default {
components: { Detail, SituationQuestion },
data() {
return {
questionTypeNum: 1,
detailData: {},
cache: window.localStorage.cacheQuestion
}
},
mounted() {
if (this.$route.query.id) {
questionDetail(this.$route.query.id).then(res => {
this.questionTypeNum = res.data.question_type
res.data.permission = res.data.permission.toString()
res.data.question_difficulty = res.data.question_difficulty.toString()
this.detailData = res.data
})
}
},
methods: {
questionType(n) {
this.cache = ''
this.questionTypeNum = n
}
}
}
</script>
<style lang="scss" scoped>
</style>
<template> <template>
<app-card> <app-card>
<div style="margin-bottom:25px;">
<span style="font-size: 14px;color: #606266;padding-right:12px;">题库范围:</span>
<el-radio @change="refetchList" v-model="permission" :label="1">我的题库</el-radio>
<el-radio @change="refetchList" v-model="permission" :label="2">公共题库</el-radio>
</div>
<app-list v-bind="tableOptions" ref="list" @selection-change="handleSelectionChange"> <app-list v-bind="tableOptions" ref="list" @selection-change="handleSelectionChange">
<template v-slot:radio-filter="{ params }">
<el-radio @change="refetchList" v-model="params.permission" :label="1">我的题库</el-radio>
<el-radio @change="refetchList" v-model="params.permission" :label="2">公共题库</el-radio>
</template>
<template v-slot:filter-category="{ params }"> <template v-slot:filter-category="{ params }">
<question-type-cascader v-model="params.question_category" @change="refetchList"></question-type-cascader> <question-type-cascader v-model="params.question_category" @change="refetchList"></question-type-cascader>
</template> </template>
...@@ -46,6 +47,7 @@ export default { ...@@ -46,6 +47,7 @@ export default {
components: { importQuestion, QuestionTypeCascader }, components: { importQuestion, QuestionTypeCascader },
data() { data() {
return { return {
permission: 1,
importDialogVisible: false, // 模板导入弹窗 importDialogVisible: false, // 模板导入弹窗
deleteQuestions: [], // 批量删除, deleteQuestions: [], // 批量删除,
treeDialogVisible: false, // tree弹窗 treeDialogVisible: false, // tree弹窗
...@@ -62,11 +64,6 @@ export default { ...@@ -62,11 +64,6 @@ export default {
return { return {
limit: 10, limit: 10,
filters: [ filters: [
{
slots: 'radio-filter',
prop: 'permission',
label: '题库范围:'
},
{ {
type: 'select', type: 'select',
label: '题目类型:', label: '题目类型:',
...@@ -116,7 +113,7 @@ export default { ...@@ -116,7 +113,7 @@ export default {
remote: { remote: {
httpRequest: getAppList, httpRequest: getAppList,
params: { params: {
permission: 1, permission: this.permission,
project_prefix: this.activeProject.tag, project_prefix: this.activeProject.tag,
question_category: '' question_category: ''
}, },
......
...@@ -75,7 +75,7 @@ httpRequest.interceptors.response.use( ...@@ -75,7 +75,7 @@ httpRequest.interceptors.response.use(
if (status === 403) { if (status === 403) {
window.location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(window.location.href)}` window.location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(window.location.href)}`
} else { } else {
Message.error(message || error.response.data) Message.error(message || error.response.data || '权限不足')
} }
} else { } else {
console.log(error) console.log(error)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论