feat: show reference score and training progress

dev-QQq
chenyuan 1 month ago
parent 7b5d816066
commit bad2437914

@ -45,7 +45,12 @@
<el-table-column prop="name" label="用户名" align="center" />
<el-table-column prop="username" label="学号" align="center" />
<el-table-column prop="className" label="班级" align="center" />
<el-table-column prop="score" label="实训成绩" align="center" />
<el-table-column prop="score" label="参考成绩" align="center" />
<el-table-column label="实训进度" align="center">
<template #default="{ row }">
<span :title="trainingProgressTitle(row)">{{ formatTrainingProgress(row) }}</span>
</template>
</el-table-column>
<el-table-column label="成绩详情" align="center">
<template #default="{ row }">
<el-button link type="success" @click="getClassScoreDetail(row)"></el-button>
@ -132,6 +137,16 @@ const WeightStart = ref(false);
//
const workingCapitalTotal = ref(0);
const scoreWeightObj = ref({});
const formatTrainingProgress = (row) => {
if (row.trainingProgress === null || row.trainingProgress === undefined) return "--";
const percentage = Number(row.trainingProgress);
if (!Number.isFinite(percentage)) return "--";
return `${percentage.toFixed(2).replace(/\.00$/, "")}%`;
};
const trainingProgressTitle = (row) => {
if (row.trainingProgress === null || row.trainingProgress === undefined) return "";
return `已完成 ${row.completedTaskCount || 0}/${row.totalTaskCount || 0}`;
};
const rules = {
marketResearchWeight: [
{ required: true, message: "请输入市场需求挖掘权重", trigger: "blur" },

@ -0,0 +1,12 @@
const assert = require("assert");
const fs = require("fs");
const path = require("path");
const source = fs.readFileSync(path.join(__dirname, "..", "src", "views", "teacherEnd", "score", "index.vue"), "utf8");
assert.match(source, /prop="score"\s+label="参考成绩"/);
assert.match(source, /label="实训进度"/);
assert.match(source, /formatTrainingProgress/);
assert.match(source, /return "--"/);
console.log("score reference progress static checks passed");
Loading…
Cancel
Save