Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
S
saas-lab
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
saas-lab
Commits
290fea76
提交
290fea76
authored
11月 28, 2022
作者:
王鹏飞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chore: update
上级
d4aa4f79
显示空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
32 行增加
和
10 行删除
+32
-10
GradeRulesDialog.vue
...ules/admin/lab/experiment/components/GradeRulesDialog.vue
+19
-4
ReportPreview.vue
...modules/admin/lab/experiment/components/ReportPreview.vue
+1
-1
ViewGradeRules.vue
...odules/admin/lab/experiment/components/ViewGradeRules.vue
+4
-3
View.vue
src/modules/admin/lab/experiment/views/View.vue
+1
-1
ScoreDialog.vue
src/modules/admin/lab/score/components/ScoreDialog.vue
+7
-1
没有找到文件。
src/modules/admin/lab/experiment/components/GradeRulesDialog.vue
浏览文件 @
290fea76
...
...
@@ -116,6 +116,11 @@ function handlePercentChange(row: any, index: number) {
row
.
percent
=
Math
.
min
(
100
-
otherTotal
,
row
.
percent
)
})
}
function
rowScore
(
percent
=
0
)
{
const
score
=
parseFloat
(
props
.
data
.
score
)
||
0
return
(
percent
/
100
)
*
score
}
</
script
>
<
template
>
...
...
@@ -126,19 +131,26 @@ function handlePercentChange(row: any, index: number) {
@
update:modelValue=
"$emit('update:modelValue')"
>
<el-form
ref=
"formRef"
:model=
"form"
label-suffix=
":"
>
<el-form-item
label=
"实验名称"
>
{{
data
?.
name
}}
</el-form-item>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"是否允许查看成绩明细"
prop=
"is_show"
>
<el-radio-group
v-model=
"form.is_show"
>
<el-radio
label=
"1"
>
是
</el-radio>
<el-radio
label=
"0"
>
否
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"实验总成绩"
>
{{
data
?.
score
}}
</el-form-item>
</el-col>
</el-row>
<el-form-item>
<el-row
justify=
"space-between"
style=
"width: 100%"
>
<p>
实验成绩规则:
</p>
<el-button
type=
"primary"
:icon=
"Plus"
@
click=
"handleAdd"
></el-button>
</el-row>
<el-table
:data=
"form.rule_list"
row-key=
"id"
>
<el-table-column
prop=
"name"
width=
"2
5
0"
>
<el-table-column
prop=
"name"
width=
"2
0
0"
>
<template
#
default=
"
{ row }">
<el-input
v-model=
"row.name"
:maxlength=
"20"
style=
"width: 100%"
v-if=
"row.type === 5"
/>
<el-select
...
...
@@ -158,13 +170,16 @@ function handlePercentChange(row: any, index: number) {
</el-table-column>
<el-table-column
prop=
"rule_mode"
>
<
template
#
default=
"{ row }"
>
<el-radio-group
v-model=
"row.rule_mode"
>
<el-radio-group
v-model=
"row.rule_mode"
size=
"small"
>
<el-radio
:label=
"1"
>
手工评分
</el-radio>
<el-radio
:label=
"2"
v-if=
"[2, 3].includes(row.type)"
>
自动评分
</el-radio>
</el-radio-group>
</
template
>
</el-table-column>
<el-table-column
align=
"right"
width=
"70"
>
<el-table-column
width=
"100"
>
<
template
#
default=
"{ row }"
>
满分:
{{
rowScore
(
row
.
percent
)
}}
</
template
>
</el-table-column>
<el-table-column
align=
"right"
width=
"60"
>
<
template
#
default=
"{ $index, row }"
>
<el-button
text
type=
"primary"
@
click=
"handleRemove($index)"
v-if=
"row.type !== 1"
>
删除
</el-button>
</
template
>
...
...
@@ -185,7 +200,7 @@ function handlePercentChange(row: any, index: number) {
<
style
lang=
"scss"
scoped
>
.total
{
width
:
100%
;
padding
:
10px
2
5
0px
;
padding
:
10px
2
0
0px
;
box-sizing
:
border-box
;
p
{
margin-left
:
16px
;
...
...
src/modules/admin/lab/experiment/components/ReportPreview.vue
浏览文件 @
290fea76
...
...
@@ -74,7 +74,7 @@ const teacherText = $computed(() => {
</
template
>
<!-- 附件组件 -->
<
template
v-else-if=
"item.type === 2"
>
<el-table
:data=
"[
{}, {}]"
stripe :header-cell-style="{ background: '#ededed' }">
<el-table
stripe
:header-cell-style=
"
{ background: '#ededed' }">
<el-table-column
label=
"序号"
type=
"index"
width=
"80px"
align=
"center"
></el-table-column>
<el-table-column
label=
"附件类型"
align=
"center"
></el-table-column>
<el-table-column
label=
"附件名称"
align=
"center"
></el-table-column>
...
...
src/modules/admin/lab/experiment/components/ViewGradeRules.vue
浏览文件 @
290fea76
<
script
setup
>
import
{
getExperimentGradeRule
}
from
'../api'
const
props
=
defineProps
({
experiment_id
:
String
})
const
props
=
defineProps
({
data
:
Object
})
const
detail
=
reactive
({
is_show
:
undefined
,
rule_list
:
[]
})
const
canViewText
=
$computed
(()
=>
{
const
map
=
{
1
:
'是'
,
0
:
'否'
}
...
...
@@ -9,7 +9,7 @@ const canViewText = $computed(() => {
})
function
fetchInfo
()
{
getExperimentGradeRule
({
experiment_id
:
props
.
experiment_
id
}).
then
(
res
=>
{
getExperimentGradeRule
({
experiment_id
:
props
.
data
.
id
}).
then
(
res
=>
{
const
data
=
res
.
data
.
detail
let
ruleList
=
[]
try
{
...
...
@@ -34,7 +34,8 @@ onMounted(() => {
<el-form-item
label=
"实验成绩规则"
align=
"right"
>
<el-form
label-suffix=
":"
>
<el-form-item
:label=
"item.name"
v-for=
"(item, index) in detail.rule_list"
:key=
"index"
>
{{
item
.
percent
}}
%
<span>
{{
item
.
percent
}}
%
</span>
<span
style=
"padding-left: 80px"
>
满分:
{{
(
data
.
score
*
item
.
percent
)
/
100
}}
</span>
</el-form-item>
</el-form>
</el-form-item>
...
...
src/modules/admin/lab/experiment/views/View.vue
浏览文件 @
290fea76
...
...
@@ -144,6 +144,6 @@ const reportRulesVisible = $ref(false)
v-model=
"studentListVisible"
:data=
"rowData"
v-if=
"studentListVisible && rowData"
></StudentListDialog>
<ViewGradeRules
v-model=
"gradeRulesVisible"
:
experiment_id=
"id"
v-if=
"gradeRulesVisible
"
></ViewGradeRules>
<ViewGradeRules
v-model=
"gradeRulesVisible"
:
data=
"detail"
v-if=
"gradeRulesVisible && detail
"
></ViewGradeRules>
<ViewReportRules
v-model=
"reportRulesVisible"
:experiment_id=
"id"
v-if=
"reportRulesVisible"
></ViewReportRules>
</template>
src/modules/admin/lab/score/components/ScoreDialog.vue
浏览文件 @
290fea76
...
...
@@ -172,7 +172,10 @@ const resultVisible = $ref(false)
</el-row>
</el-form-item>
<div
class=
"score-result"
>
<p
class=
"score-result__total"
>
{{
scoreValue
(
score
)
}}
</p>
<div
class=
"score-result__total"
>
<p
class=
"t1"
>
{{
scoreValue
(
score
)
}}
</p>
<p
class=
"t2"
>
满分:
{{
experiment
.
score
}}
</p>
</div>
<el-table
:data=
"form.score_details"
stripe
...
...
@@ -182,6 +185,7 @@ const resultVisible = $ref(false)
<el-table-column
label=
"权重"
prop=
"percent"
align=
"center"
>
<template
#
default=
"
{ row }">
{{
row
.
percent
}}
%
</
template
>
</el-table-column>
<el-table-column
label=
"满分"
prop=
"score"
align=
"center"
></el-table-column>
<el-table-column
label=
"得分"
prop=
"commit_score"
align=
"center"
></el-table-column>
<el-table-column
label=
"操作"
prop=
"commit_score"
align=
"center"
>
<
template
#
default=
"{ row }"
>
...
...
@@ -266,7 +270,9 @@ const resultVisible = $ref(false)
min-width
:
120px
;
white-space
:
nowrap
;
text-align
:
center
;
.t1
{
font-size
:
30px
;
color
:
var
(
--
main-color
);
}
}
</
style
>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论