Selaa lähdekoodia

Merge branch 'fix/submit_withoutremark_error' of FanYanPeng/EAIFrontend into host-nju

JiangPengYu 4 kuukautta sitten
vanhempi
commit
7c72b9dd03
2 muutettua tiedostoa jossa 14 lisäystä ja 11 poistoa
  1. 1 1
      src/router/index.ts
  2. 13 10
      src/views/CorrectPage/CorrectPage.vue

+ 1 - 1
src/router/index.ts

@@ -260,7 +260,7 @@ const router = createRouter({
  */
   router.beforeEach(async (to) => {
     const store = useStore();
-    const publicPaths = [  '/register', '/passwordChange', '/admin/login'];
+    const publicPaths = [  '/register', '/passwordChange', '/admin/login' ];
     // 1. 检查URL中的token
     const urlToken = new URLSearchParams(window.location.search).get('token');
     if (urlToken) {

+ 13 - 10
src/views/CorrectPage/CorrectPage.vue

@@ -174,12 +174,12 @@
             @click="handleCorrect"
             :loading="submitting"
           >
-            提交评语
+            提交批改
           </el-button>
           <el-button 
             class="action-btn next-btn"
             @click="handleNext"
-            :disabled="isAllCorrected"
+            :disabled="isNextDisabled"
           >
             下一个
           </el-button>
@@ -369,12 +369,14 @@ const progressPercentage = computed(() => {
 
 // 计算未批改数量
 const uncorrectedNumber = computed(() => {
-  return correctionStats.engageNumber - correctionStats.correctNumber;
+  const engageNumber = Number(correctionStats.engageNumber) || 0;
+  const correctNumber = Number(correctionStats.correctNumber) || 0;
+  return Math.max(engageNumber - correctNumber, 0);
 });
 
-// 判断是否全部批改完成
-const isAllCorrected = computed(() => {
-  return uncorrectedNumber.value === 0;
+// 判断是否还有下一个待批改学生
+const isNextDisabled = computed(() => {
+  return uncorrectedNumber.value <= 1;
 });
 
 // 判断当前用户是否为学生
@@ -670,10 +672,6 @@ const handleCorrect = async () => {
     ElMessage.error("请先评分")
     return
   }
-  if (!correctionData.remark) {
-    ElMessage.error("请先输入评语")
-    return
-  }
   
   submitting.value = true
   try {
@@ -730,6 +728,11 @@ const getNextStudentAssignment = async () => {
 
 // 处理下一个学生
 const handleNext = async () => {
+  if (isNextDisabled.value) {
+    ElMessage.info("当前没有下一个待批改学生");
+    return;
+  }
+
   const nextStudentId = await getNextStudentAssignment();
   if (nextStudentId) {
     router.push({