Преглед изворни кода

修改评价进度列表页的按钮禁选逻辑

lm пре 1 недеља
родитељ
комит
cb84a22b23

+ 9 - 4
src/views/appView/SelfQuestionnaireProcess.vue

@@ -51,7 +51,9 @@
         <!-- 底部操作区域 -->
         <div class="bottom_action">
             <!-- 开始评价按钮 -->
-            <el-button class="button_background" @click="GoToFillOutQuestionnaire">开始评价</el-button>
+            <el-button 
+                :class="[teacherList.length > 0 ? 'button_background' : 'is-disabled']" 
+                 @click="teacherList.length > 0 ?  GoToFillOutQuestionnaire() : '' ">开始评价</el-button>
         </div>
     </div>
 </template>
@@ -102,9 +104,12 @@ const isQuestionnaireEnd = computed(()=>{
 //  当前问卷任务是否全部完成 ———— 以及问卷是否结束
 const isCurrentQuestionnaireTaskFinish = computed(()=>{
     // 判断教师列表是否全部完成
-    return !(teacherList.value.find(teacher=>{
-        return (teacher.evaluationStatus === 0 || teacher.evaluationStatus === 1)
-    }))
+    let allTaskFinish = teacherList.value?.length > 0 
+                        ? !(teacherList.value.find(teacher=>{
+                            return (teacher.evaluationStatus === 0 || teacher.evaluationStatus === 1)
+                        })) 
+                        : false
+    return allTaskFinish || isQuestionnaireEnd.value
 }) 
 
 // 当前问卷是否有选科

+ 22 - 4
src/views/selfQuestionnaireProcess/SelfQuestionnaireProcess.vue

@@ -63,7 +63,9 @@
         <!-- 底部操作区域 -->
         <div class="bottom_action">
             <!-- 开始评价按钮 -->
-            <el-button class="button_background" @click="GoToFillOutQuestionnaire">开始评价</el-button>
+            <el-button 
+                :class="[teacherList.length > 0 ? 'button_background' : 'is-disabled']" 
+                @click="teacherList.length > 0 ?  GoToFillOutQuestionnaire() : ''">开始评价</el-button>
         </div>
 
         <SubjectAndClassChooseDialog 
@@ -137,12 +139,28 @@ const GetEvaluationProcessMsg = async ()=>{
     }
 }
 
+
+// 问卷是否结束
+const isQuestionnaireEnd = computed(()=>{
+    let timestamp = new Date(deadlineTime.value).getTime()
+    let currentTimestamp = new Date().getTime()
+    let sectionTime = timestamp - currentTimestamp
+    if(sectionTime > 0){
+        return false
+    }else{
+        return true
+    }
+})
+
 //  当前问卷任务是否全部完成 ———— 以及问卷是否结束
 const isCurrentQuestionnaireTaskFinish = computed(()=>{
     // 判断教师列表是否全部完成
-    return !(teacherList.value.find(teacher=>{
-        return (teacher.evaluationStatus === 0 || teacher.evaluationStatus === 1)
-    }))
+    let allTaskFinish = teacherList.value?.length > 0 
+                            ? !(teacherList.value.find(teacher=>{
+                                return (teacher.evaluationStatus === 0 || teacher.evaluationStatus === 1)
+                            })) 
+                            : false
+    return allTaskFinish || isQuestionnaireEnd.value
 })