Browse Source

删除无用代码,提前公共代码

Michael Wang 3 năm trước cách đây
mục cha
commit
c4f72d7417

+ 1 - 6
src/api/arbitratePage.ts

@@ -1,10 +1,5 @@
 import { httpApp } from "@/plugins/axiosApp";
 import { httpApp } from "@/plugins/axiosApp";
-import {
-  HistoryQueryParams,
-  MarkHistoryOrderBy,
-  MarkHistorySortField,
-  Question,
-} from "@/types";
+import { HistoryQueryParams } from "@/types";
 
 
 /** 清理仲裁任务(libraryId 与其他参数互斥填写) */
 /** 清理仲裁任务(libraryId 与其他参数互斥填写) */
 export async function clearArbitrateTask(
 export async function clearArbitrateTask(

+ 0 - 1
src/api/importInspectPage.ts

@@ -8,7 +8,6 @@ export async function getInspectedSetting(studentId?: string) {
 
 
 /** 查看单个学生的复核任务 */
 /** 查看单个学生的复核任务 */
 export async function getSingleInspectedTask(studentId: string) {
 export async function getSingleInspectedTask(studentId: string) {
-  // return httpApp.post("/admin/exam/inspected/getTask?studentId=" + studentId);
   const form = new FormData();
   const form = new FormData();
   studentId && form.append("studentId", studentId);
   studentId && form.append("studentId", studentId);
   return httpApp.post("/admin/exam/inspected/import/getTask", form);
   return httpApp.post("/admin/exam/inspected/import/getTask", form);

+ 3 - 4
src/components/QmDialog.vue

@@ -74,10 +74,9 @@ const positionStyle = reactive({
 const savedStyle = JSON.parse(
 const savedStyle = JSON.parse(
   sessionStorage.getItem("dialog-" + title) ?? "{}"
   sessionStorage.getItem("dialog-" + title) ?? "{}"
 );
 );
-if (savedStyle?.top) positionStyle.top = savedStyle?.top;
-if (savedStyle?.left) positionStyle.left = savedStyle?.left;
-if (savedStyle?.width) positionStyle.width = savedStyle?.width;
-if (savedStyle?.height) positionStyle.height = savedStyle?.height;
+if (savedStyle) {
+  Object.assign(positionStyle, savedStyle);
+}
 let mouseHandler = $ref(null as unknown as HTMLHeadElement);
 let mouseHandler = $ref(null as unknown as HTMLHeadElement);
 let resizeHandler = $ref(null as unknown as HTMLDivElement);
 let resizeHandler = $ref(null as unknown as HTMLDivElement);
 
 

+ 5 - 38
src/features/arbitrate/Arbitrate.vue

@@ -11,12 +11,12 @@
       <ArbitrateMarkList />
       <ArbitrateMarkList />
       <mark-body @error="renderError" />
       <mark-body @error="renderError" />
       <mark-board-key-board
       <mark-board-key-board
-        v-if="showMarkBoardKeyBoard"
+        v-if="store.shouldShowMarkBoardKeyBoard"
         @submit="saveTaskToServer(false)"
         @submit="saveTaskToServer(false)"
         @unselectiveSubmit="saveTaskToServer(true)"
         @unselectiveSubmit="saveTaskToServer(true)"
       />
       />
       <mark-board-mouse
       <mark-board-mouse
-        v-if="showMarkBoardMouse"
+        v-if="store.shouldShowMarkBoardMouse"
         @submit="saveTaskToServer(false)"
         @submit="saveTaskToServer(false)"
         @unselectiveSubmit="saveTaskToServer(true)"
         @unselectiveSubmit="saveTaskToServer(true)"
       />
       />
@@ -28,8 +28,7 @@
 </template>
 </template>
 
 
 <script setup lang="ts">
 <script setup lang="ts">
-import { computed, onMounted, watch } from "vue";
-// 要共用UI就要共用store
+import { onMounted, watch } from "vue";
 import { store } from "@/store/store";
 import { store } from "@/store/store";
 import MarkHeader from "./MarkHeader.vue";
 import MarkHeader from "./MarkHeader.vue";
 import { useRoute } from "vue-router";
 import { useRoute } from "vue-router";
@@ -49,8 +48,7 @@ import {
   saveArbitrateTask,
   saveArbitrateTask,
 } from "@/api/arbitratePage";
 } from "@/api/arbitratePage";
 import ArbitrateMarkList from "./ArbitrateMarkList.vue";
 import ArbitrateMarkList from "./ArbitrateMarkList.vue";
-import type { Setting, Task } from "@/types";
-import { isNumber } from "lodash";
+import { ModeEnum, Setting, Task } from "@/types";
 import AnswerModal from "../mark/AnswerModal.vue";
 import AnswerModal from "../mark/AnswerModal.vue";
 import PaperModal from "../mark/PaperModal.vue";
 import PaperModal from "../mark/PaperModal.vue";
 import { getPaper } from "@/api/jsonMark";
 import { getPaper } from "@/api/jsonMark";
@@ -89,6 +87,7 @@ async function updateSetting() {
     "score.board.collapse": false,
     "score.board.collapse": false,
     "normal.mode": "keyboard",
     "normal.mode": "keyboard",
   } as Setting["uiSetting"];
   } as Setting["uiSetting"];
+  store.setting.mode = ModeEnum.COMMON;
   store.setting.splitConfig = settingRes.data.splitConfig;
   store.setting.splitConfig = settingRes.data.splitConfig;
 
 
   if (store.setting.subject?.answerUrl) {
   if (store.setting.subject?.answerUrl) {
@@ -136,12 +135,6 @@ async function updateTask() {
   }
   }
 }
 }
 
 
-// async function reloadAndfetchTask() {
-//   // 需要清除缓存,才能取到之前锁定的任务
-//   await updateClearTask();
-//   // await updateSetting();
-//   await fetchTask();
-// }
 watch(
 watch(
   () => store.historyOpen,
   () => store.historyOpen,
   async () => {
   async () => {
@@ -158,13 +151,6 @@ async function fetchTask() {
   await updateTask();
   await updateTask();
 }
 }
 
 
-const showMarkBoardKeyBoard = computed(() => {
-  return store.setting.uiSetting["normal.mode"] === "keyboard";
-});
-const showMarkBoardMouse = computed(() => {
-  return store.setting.uiSetting["normal.mode"] === "mouse";
-});
-
 onMounted(async () => {
 onMounted(async () => {
   await updateClearTask();
   await updateClearTask();
   await updateSetting();
   await updateSetting();
@@ -180,25 +166,6 @@ watch(
   }
   }
 );
 );
 
 
-// FIXME: 更新分数,在评卷界面不需要
-watch(
-  () => store.currentTask,
-  () => {
-    const markResult = store.currentTask?.markResult;
-
-    if (markResult && store.currentTask) {
-      const scoreList = store.currentTask.questionList.map((q) => q.score);
-      markResult.scoreList = [...(scoreList as number[])];
-      markResult.markerScore =
-        (markResult.scoreList.filter((s) => isNumber(s)) as number[]).reduce(
-          (acc, v) => (acc += Math.round(v * 100)),
-          0
-        ) / 100;
-    }
-  },
-  { deep: true }
-);
-
 async function getSingleStuTask() {
 async function getSingleStuTask() {
   return getSingleArbitrateTask(libraryId);
   return getSingleArbitrateTask(libraryId);
 }
 }

+ 2 - 16
src/features/mark/Mark.vue

@@ -11,13 +11,13 @@
         @unselectiveSubmit="unselectiveSubmit"
         @unselectiveSubmit="unselectiveSubmit"
       />
       />
       <mark-board-key-board
       <mark-board-key-board
-        v-if="showMarkBoardKeyBoard"
+        v-if="store.shouldShowMarkBoardKeyBoard"
         @submit="saveTaskToServer"
         @submit="saveTaskToServer"
         @allZeroSubmit="allZeroSubmit"
         @allZeroSubmit="allZeroSubmit"
         @unselectiveSubmit="unselectiveSubmit"
         @unselectiveSubmit="unselectiveSubmit"
       />
       />
       <mark-board-mouse
       <mark-board-mouse
-        v-if="showMarkBoardMouse"
+        v-if="store.shouldShowMarkBoardMouse"
         @submit="saveTaskToServer"
         @submit="saveTaskToServer"
         @allZeroSubmit="allZeroSubmit"
         @allZeroSubmit="allZeroSubmit"
         @unselectiveSubmit="unselectiveSubmit"
         @unselectiveSubmit="unselectiveSubmit"
@@ -208,20 +208,6 @@ const showMarkBoardTrack = computed(() => {
   return store.setting.mode === ModeEnum.TRACK;
   return store.setting.mode === ModeEnum.TRACK;
 });
 });
 
 
-const showMarkBoardKeyBoard = computed(() => {
-  return (
-    store.setting.mode === ModeEnum.COMMON &&
-    store.setting.uiSetting["normal.mode"] === "keyboard"
-  );
-});
-
-const showMarkBoardMouse = computed(() => {
-  return (
-    store.setting.mode === ModeEnum.COMMON &&
-    store.setting.uiSetting["normal.mode"] === "mouse"
-  );
-});
-
 const removeBrokenTask = () => {
 const removeBrokenTask = () => {
   store.currentTask = undefined;
   store.currentTask = undefined;
 
 

+ 13 - 1
src/store/store.ts

@@ -1,4 +1,4 @@
-import { Setting, MarkStore, Track } from "@/types";
+import { Setting, MarkStore, Track, ModeEnum } from "@/types";
 import { watch } from "vue";
 import { watch } from "vue";
 import { defineStore } from "pinia";
 import { defineStore } from "pinia";
 
 
@@ -69,6 +69,18 @@ export const useMarkStore = defineStore("mark", {
 
 
       return "";
       return "";
     },
     },
+    shouldShowMarkBoardKeyBoard(): boolean {
+      return (
+        store.setting.mode === ModeEnum.COMMON &&
+        store.setting.uiSetting["normal.mode"] === "keyboard"
+      );
+    },
+    shouldShowMarkBoardMouse(): boolean {
+      return (
+        store.setting.mode === ModeEnum.COMMON &&
+        store.setting.uiSetting["normal.mode"] === "mouse"
+      );
+    },
   },
   },
   actions: {
   actions: {
     toggleHistory(): void {
     toggleHistory(): void {