zhangjie 9 сар өмнө
parent
commit
bcbc6378a8

+ 1 - 1
src/render/styles/pages.less

@@ -18,7 +18,7 @@
     .head-no {
       display: inline-block;
       height: 24px;
-      line-height: 24px;
+      line-height: 22px;
       background: linear-gradient(135deg, #fdd62d 0%, #faad14 100%);
       border-radius: 4px;
       border: 1px solid #ffc53d;

+ 4 - 22
src/render/views/Audit/Main/index.vue

@@ -80,7 +80,9 @@
           </div>
           <div class="audit-box-foot">
             <a-tag :bordered="false">
-              <template #icon><PieChartFilled /></template>抽查比例:0%
+              <template #icon><PieChartFilled /></template>抽查比例:{{
+                overviewData.imageCheckTask.checkRatio
+              }}%
             </a-tag>
             <a-space :size="8">
               <span>轮播时间配置:</span>
@@ -160,28 +162,8 @@ watch(
   () => userStore.curExam,
   (val) => {
     if (!val) return;
-    // getOverviewData();
+    getOverviewData();
   },
   { immediate: true }
 );
-
-// TODO:测试
-overviewData.value = {
-  //实时审核任务
-  verifyTask: {
-    todoCount: 5,
-  },
-  //图片审核
-  imageCheckTask: {
-    //抽查比例
-    checkRatio: 0.5,
-    finishCount: 50,
-    //全部未处理数量
-    todoCount: 20,
-  },
-  //人工绑定审核
-  assignedCheck: {
-    todoCount: 30,
-  },
-};
 </script>

+ 1 - 1
src/render/views/Login/AdminLogin.vue

@@ -50,7 +50,7 @@ const loginHandle = () => {
         let routeName =
           res.role === "SCHOOL_ADMIN"
             ? "CurExam"
-            : res.role === "SCAN_ADMIN"
+            : res.role === "AUDITOR"
             ? "Audit"
             : "";
         if (routeName) {

+ 2 - 2
src/render/views/Review/ExportTypeDialog.vue

@@ -8,14 +8,14 @@
   >
     <a-row :gutter="16">
       <a-col :span="12">
-        <div class="type-box" @click="seleted('student')">
+        <div class="type-box" @click="seleted('STUDENT_CODE')">
           <img src="@/assets/imgs/scan_login_icon.png" alt="按考生导出" />
           <p>按考生导出</p>
           <p>EXPORT BY CANDIDATE</p>
         </div>
       </a-col>
       <a-col :span="12">
-        <div class="type-box" @click="seleted('room')">
+        <div class="type-box" @click="seleted('EXAM_ROOM')">
           <img src="@/assets/imgs/room_icon.png" alt="按考场导出" />
           <p>按考场导出</p>
           <p>EXPORT BY TEST ROOM</p>

+ 1 - 0
src/render/views/Review/ResetConfirmDialog.vue

@@ -79,6 +79,7 @@ async function checkStatus() {
     if (!res.synching) {
       stopLoopSync();
       message.success("操作成功!");
+      emit("confirm");
       close();
     }
   } else {

+ 10 - 2
src/render/views/Review/ReviewAction.vue

@@ -65,7 +65,11 @@
         <a-collapse-panel key="3">
           <template #header><PushpinFilled />复核标记 </template>
 
-          <a-radio-group v-model:value="result" @change="onMark">
+          <a-radio-group
+            v-if="reviewStore.curTask"
+            v-model:value="result"
+            @change="onMark"
+          >
             <a-radio :value="1">正常</a-radio>
             <a-radio :value="0">异常</a-radio>
           </a-radio-group>
@@ -101,7 +105,11 @@
         <a-collapse-panel key="1">
           <template #header><PushpinFilled />复核标记 </template>
 
-          <a-radio-group v-model:value="historyResult" @change="onMark">
+          <a-radio-group
+            v-if="reviewStore.curTask"
+            v-model:value="historyResult"
+            @change="onMark"
+          >
             <a-radio :value="1">正常</a-radio>
             <a-radio :value="0">异常</a-radio>
           </a-radio-group>

+ 11 - 10
src/render/views/Review/index.vue

@@ -134,12 +134,6 @@ async function onMark(assignedSuspect: boolean) {
 
   try {
     await reviewTaskSave({ id: reviewStore.curTask.id, assignedSuspect });
-    reviewStore.setInfo({
-      curTask: Object.assign({}, reviewStore.curTask, {
-        assignedSuspect,
-      }),
-    });
-
     if (reviewStore.tabKey === "history") return;
 
     await getNextTask();
@@ -161,15 +155,22 @@ async function onReset(data: SubjectItem | null) {
   resetConfirmDialogRef.value?.open();
 }
 
-function onResetConfirm() {
-  onSearch("");
+async function onResetConfirm() {
+  if (!searchModel.subjectCode) return;
+  await releaseTask();
+  await getNextTask();
+  await updateProgress();
+}
+
+async function releaseTask() {
+  await reviewTaskRelease({ examId: userStore.curExam.id });
 }
 
 onMounted(async () => {
   reviewStore.resetInfo();
-  await reviewTaskRelease({ examId: userStore.curExam.id });
+  await releaseTask();
 });
 onBeforeUnmount(async () => {
-  await reviewTaskRelease({ examId: userStore.curExam.id });
+  await releaseTask();
 });
 </script>