fix:系统考试未发布时允许修改信息

This commit is contained in:
wyx
2023-03-05 14:53:18 +08:00
parent 8afb42e242
commit ad051036d1
3 changed files with 27 additions and 15 deletions

View File

@@ -43,7 +43,7 @@
</div>
<div class="btnbox">
<a-input v-model:value="formData.examinationName" style="width: 400px; height: 40px; border-radius: 8px"
placeholder="请输入考试名称" :maxlength="20" :disabled="taskIndex >= 0" />
placeholder="请输入考试名称" :maxlength="20" :disabled="taskIndex >= 0 && isEdit" />
</div>
</div>
@@ -58,7 +58,7 @@
<a-tag closable color="processing" @close="delTag" :closeIcon="true">
<span style="font-size: 14px; line-height: 33px">{{ formData.examinationTestName }}</span>
</a-tag>
</div>
</div>
<s-test v-if="taskIndex < 0" v-model:id="formData.examinationPaperId" v-model:name="formData.examinationTestName">
<div class="btnbox">
<button class="xkbtn" style="margin:0" >
@@ -66,6 +66,13 @@
</button>
</div>
</s-test>
<s-test v-if="taskIndex >= 0 && isEdit==false" v-model:id="formData.examinationPaperId" v-model:name="formData.examinationTestName">
<div class="btnbox">
<button class="xkbtn" style="margin:0" >
{{ formData.examinationPaperId ? "重选" : "选择" }}试卷
</button>
</div>
</s-test>
</div>
<div class="main_item">
@@ -89,7 +96,7 @@
<span style="margin-right: 3px">考试时长</span>
</div>
<div class="select">
<a-input-number :disabled="taskIndex >= 0" :min="0" :max="300" :precision="0"
<a-input-number :disabled="taskIndex >= 0 && isEdit" :min="0" :max="300" :precision="0"
style="width: 400px; height: 40px; border-radius: 8px"
v-model:value="formData.examinationDuration"></a-input-number>
<span style="color: #999999; margin-left: 8px">分钟</span>
@@ -103,7 +110,7 @@
<span style="margin-right: 3px">及格线</span>
</div>
<div class="btnbox">
<a-input :disabled="taskIndex >= 0" v-model:value="formData.passLine" type="number"
<a-input :disabled="taskIndex >= 0 && isEdit" v-model:value="formData.passLine" type="number"
style="width: 400px; height: 40px; border-radius: 8px" />
<span style="color: #999999; margin-left: 8px"></span>
@@ -114,7 +121,7 @@
<span style="margin-right: 3px">考试说明</span>
</div>
<div class="textarea">
<a-textarea :disabled="taskIndex >= 0" v-model:value="formData.examinationExplain" placeholder="请输入考试说明"
<a-textarea :disabled="taskIndex >= 0 && isEdit" v-model:value="formData.examinationExplain" placeholder="请输入考试说明"
allow-clear show-count :maxlength="200" :rows="6" />
</div>
</div>
@@ -126,7 +133,7 @@
<div class="setbox">
<div class="timerbox">
<span>允许重复考试</span>
<a-input-number :disabled="taskIndex >= 0" :min="-1" :max="300" :precision="0" style="
<a-input-number :disabled="taskIndex >= 0 && isEdit" :min="-1" :max="300" :precision="0" style="
width: 100px;
height: 32px;
border-radius: 8px;
@@ -142,7 +149,7 @@
<span style="margin-right: 3px">显示答案</span>
</div>
<div class="btnbox">
<a-radio-group :disabled="taskIndex >= 0" style="margin-right: 12px" v-model:value="formData.showAnswers">
<a-radio-group :disabled="taskIndex >= 0 && isEdit" style="margin-right: 12px" v-model:value="formData.showAnswers">
<a-radio :value="1">允许查看</a-radio>
<a-radio :value="2">不允许查看</a-radio>
</a-radio-group>
@@ -153,7 +160,7 @@
<span style="margin-right: 3px">显示解析</span>
</div>
<div class="btnbox">
<a-radio-group :disabled="taskIndex >= 0" style="margin-right: 12px" v-model:value="formData.showAnalysis">
<a-radio-group :disabled="taskIndex >= 0 && isEdit" style="margin-right: 12px" v-model:value="formData.showAnalysis">
<a-radio :value="1">允许查看</a-radio>
<a-radio :value="2">不允许查看</a-radio>
</a-radio-group>
@@ -164,7 +171,7 @@
<span style="margin-right: 3px">评分模式</span>
</div>
<div class="btnbox">
<a-radio-group :disabled="taskIndex >= 0" style="margin-right: 12px" v-model:value="formData.scoringModel">
<a-radio-group :disabled="taskIndex >= 0 && isEdit" style="margin-right: 12px" v-model:value="formData.scoringModel">
<a-radio :value="1">最高一次</a-radio>
<a-radio :value="2">最后一次</a-radio>
</a-radio-group>
@@ -177,7 +184,7 @@
<span style="margin-right: 3px">试题排列</span>
</div>
<div class="btnbox">
<a-radio-group :disabled="taskIndex >= 0" style="margin-right: 12px"
<a-radio-group :disabled="taskIndex >= 0 && isEdit" style="margin-right: 12px"
v-model:value="formData.questionArrangement">
<a-radio :value="1">试题乱序</a-radio>
<a-radio :value="2">选项乱序</a-radio>
@@ -199,7 +206,7 @@
<span style="margin-right: 3px">考试名称</span>
</div>
<div class="btnbox">
<a-input v-model:value="formData.examinationName" style="width: 400px; height: 40px; border-radius: 8px" :disabled="taskIndex >= 0"
<a-input v-model:value="formData.examinationName" style="width: 400px; height: 40px; border-radius: 8px" :disabled="taskIndex >= 0 && isEdit"
placeholder="请输入考试名称" :maxlength="20" />
</div>
</div>
@@ -212,7 +219,7 @@
</div>
<div class="btnbox">
<a-input v-model:value="formData.source"
style="width: 400px; height: 40px; border-radius: 8px" :disabled="taskIndex >= 0"
style="width: 400px; height: 40px; border-radius: 8px" :disabled="taskIndex >= 0 && isEdit"
placeholder="请输入数据来源" show-count :maxlength="420" />
</div>
</div>
@@ -221,7 +228,7 @@
<span style="margin-right: 3px">考试说明</span>
</div>
<div class="textarea">
<a-textarea v-model:value="formData.externalExplain" placeholder="请输入考试说明" allow-clear show-count :disabled="taskIndex >= 0"
<a-textarea v-model:value="formData.externalExplain" placeholder="请输入考试说明" allow-clear show-count :disabled="taskIndex >= 0 && isEdit"
:maxlength="200" :rows="6" />
</div>
</div>
@@ -242,7 +249,8 @@ import { Form, message } from "ant-design-vue";
const props = defineProps({
type: Number,
taskList: []
taskList: [],
infoType: String
})
const visible = ref(false)
const initValue = {
@@ -318,6 +326,7 @@ const rulesRef = ref(innerRule);
const emit = defineEmits({})
const taskIndex = ref(-1);
const dateTime = ref([]);
let isEdit = ref(true);
const { resetFields, validate } = Form.useForm(formData, rulesRef);
@@ -366,6 +375,7 @@ async function confirm() {
function openDrawer(i, row) {
row && (props.infoType=='1'?(row.projectTaskId?row.projectTaskId==null?isEdit.value=false:isEdit.value=true:isEdit.value=false):(row.routerTaskId?row.routerTaskId==null?isEdit.value=false:isEdit.value=true:isEdit.value=false));
row && resetFields(row.info);
row && (dateTime.value = [row.info.examinationStartTime, row.info.examinationEndTime]);
(i >= 0) && (taskIndex.value = i);

View File

@@ -558,6 +558,7 @@ const submitStorage = async () => {
await releaseRouter(routerId);
message.success("关卡和任务数据已保存");
confirmLoading.value = false;
getDetail();
},
});
return;

View File

@@ -606,7 +606,8 @@ const submitStorage = async () => {
confirmLoading.value = true
await request(PROJECT_RELEASE, {projectId: route.query.projectId})
message.success("保存成功");
confirmLoading.value = false
confirmLoading.value = false;
getTask();
},
})
return