提交 645ac1f9 authored 作者: 王鹏飞's avatar 王鹏飞

bug fixes

上级 3b3fb049
......@@ -171,7 +171,7 @@ function rowScore(percent = 0) {
<el-table-column prop="rule_mode">
<template #default="{ row }">
<el-radio-group v-model="row.rule_mode" size="small">
<el-radio :label="1">工评分</el-radio>
<el-radio :label="1">工评分</el-radio>
<el-radio :label="2" v-if="[2, 3].includes(row.type)">自动评分</el-radio>
</el-radio-group>
</template>
......
......@@ -49,6 +49,9 @@ function handleChange(data: any, index: number) {
datalist[index] = data
emit('update:modelValue', datalist)
}
function handleDraggableUpdate() {
emit('update:modelValue', datalist)
}
</script>
<template>
......@@ -63,13 +66,14 @@ function handleChange(data: any, index: number) {
<slot name="header"></slot>
</div>
<div class="report-design-bd">
<draggable v-model="datalist" item-key="id">
<draggable v-model="datalist" item-key="id" @update="handleDraggableUpdate">
<template #item="{ element, index }">
<div class="report-design-item-card">
<component
:is="getComponent(element.type)"
:index="index"
:data="element"
:key="index"
@change="(data:any) => handleChange(data, index)" />
<el-button type="danger" :icon="Delete" circle @click="handleRemove(index)" />
</div>
......
......@@ -55,11 +55,7 @@ function handleScoreChange(value: number) {
</el-form-item>
</el-col>
</el-row>
<el-form-item
label="组件提示信息"
label-width="130px"
:prop="'detail_list.' + index + '.notice_message'"
:rules="[{ required: true, message: '请输入' }]">
<el-form-item label="组件提示信息" label-width="130px" :prop="'detail_list.' + index + '.notice_message'">
<el-input
type="textarea"
v-model="form.notice_message"
......
......@@ -55,11 +55,7 @@ function handleScoreChange(value: number) {
</el-form-item>
</el-col>
</el-row>
<el-form-item
label="思考题题干内容"
label-width="130px"
:prop="'detail_list.' + index + '.question_stem'"
:rules="[{ required: true, message: '请输入' }]">
<el-form-item label="思考题题干内容" label-width="130px" :prop="'detail_list.' + index + '.question_stem'">
<el-input
type="textarea"
v-model="form.question_stem"
......
......@@ -30,12 +30,14 @@ onMounted(() => {
<template>
<el-dialog title="实验成绩规则" width="500px">
<el-form :column="1" label-width="170px" label-position="right" label-suffix=":" v-if="detail">
<el-form-item label="是否允许查看成绩明细" align="right">{{ canViewText }}</el-form-item>
<el-form-item label="实验成绩规则" align="right">
<el-form label-suffix=":">
<el-form-item label="是否允许查看成绩明细">{{ canViewText }}</el-form-item>
<el-form-item label="实验成绩规则">
<el-form label-suffix=":" style="width: 100%">
<el-form-item :label="item.name" v-for="(item, index) in detail.rule_list" :key="index">
<span>{{ item.percent }}%</span>
<span style="padding-left: 80px">满分:{{ (data.score * item.percent) / 100 }}</span>
<div style="width: 100%; display: flex; text-align: left">
<span style="flex: 1">{{ item.percent }}%</span>
<span style="min-width: 80px">满分:{{ (data.score * item.percent) / 100 }}</span>
</div>
</el-form-item>
</el-form>
</el-form-item>
......
......@@ -60,6 +60,13 @@ const total = $computed(() => {
return result + (item.score || 0)
}, 0)
})
watch(
form.detail_list,
() => {
console.log(1)
},
{ deep: true }
)
// 保存
function handleSubmit() {
......
......@@ -33,7 +33,7 @@ export const gradeRuleList = json2Array(gradeRule)
// 实验报告评分规则
export const reportScoreRule: Record<number, any> = {
1: '工评分',
1: '工评分',
2: '自动评分'
}
export const reportScoreRuleList = json2Array(reportScoreRule)
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论