|
@@ -15,12 +15,18 @@
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
-import { computed, defineComponent, onMounted, watch } from "vue";
|
|
|
-import { getSingleStudentTask } from "@/api/inspectPage";
|
|
|
+import { defineComponent, onMounted } from "vue";
|
|
|
+import {
|
|
|
+ clearInspectedTask,
|
|
|
+ getInspectedSetting,
|
|
|
+ getInspectedTaskStatus,
|
|
|
+ getOneOfInspectedTask,
|
|
|
+ getSingleInspectedTask,
|
|
|
+} from "@/api/inspectPage";
|
|
|
import { store } from "./store";
|
|
|
import MarkHeader from "./MarkHeader.vue";
|
|
|
+import { useRoute } from "vue-router";
|
|
|
// import MarkBody from "./MarkBody.vue";
|
|
|
-import { useTimers } from "@/setups/useTimers";
|
|
|
// import MarkHistory from "./MarkHistory.vue";
|
|
|
|
|
|
export default defineComponent({
|
|
@@ -31,114 +37,91 @@ export default defineComponent({
|
|
|
// MarkHistory,
|
|
|
},
|
|
|
setup: () => {
|
|
|
- // const { addInterval } = useTimers();
|
|
|
-
|
|
|
- // async function updateMarkTask() {
|
|
|
- // const settingRes = await clearMarkTask();
|
|
|
- // }
|
|
|
-
|
|
|
- // async function updateSetting() {
|
|
|
- // const settingRes = await getSetting();
|
|
|
- // // settingRes.data.uiSetting["answer.paper.scale"] ||= 1;
|
|
|
- // if (isEmpty(settingRes.data.uiSetting)) {
|
|
|
- // settingRes.data.uiSetting = {
|
|
|
- // "answer.paper.scale": 1,
|
|
|
- // "score.board.collapse": false,
|
|
|
- // "normal.mode": "keyboard",
|
|
|
- // } as Setting["uiSetting"];
|
|
|
- // }
|
|
|
- // store.setting = settingRes.data;
|
|
|
- // }
|
|
|
- // async function updateStatus() {
|
|
|
- // const res = await getStatus();
|
|
|
- // store.status = res.data;
|
|
|
- // }
|
|
|
- // async function updateGroups() {
|
|
|
- // const res = await getGroup();
|
|
|
- // store.groups = res.data;
|
|
|
- // }
|
|
|
- // async function updateTask() {
|
|
|
- // const res = await getTask();
|
|
|
- // if (res.data.libraryId) {
|
|
|
- // store.tasks.push(res.data);
|
|
|
- // store.currentTask = store.tasks[0];
|
|
|
- // }
|
|
|
- // }
|
|
|
-
|
|
|
- // // 5秒更新一次tasks
|
|
|
- // addInterval(() => {
|
|
|
- // // console.log("get task", store.tasks);
|
|
|
- // if (store.tasks.length < 3) {
|
|
|
- // updateTask();
|
|
|
- // }
|
|
|
- // }, 5 * 1000);
|
|
|
-
|
|
|
- // // TODO: 后续改掉,不需要
|
|
|
- // addInterval(() => {
|
|
|
- // updateStatus();
|
|
|
- // }, 30 * 1000);
|
|
|
-
|
|
|
- // onMounted(async () => {
|
|
|
- // await updateMarkTask();
|
|
|
- // updateSetting();
|
|
|
- // updateStatus();
|
|
|
- // updateGroups();
|
|
|
- // updateTask();
|
|
|
- // });
|
|
|
-
|
|
|
- // watch(
|
|
|
- // () => [store.setting.uiSetting, store.setting.mode],
|
|
|
- // () => {
|
|
|
- // updateUISetting(store.setting.mode, store.setting.uiSetting);
|
|
|
- // },
|
|
|
- // { deep: true }
|
|
|
- // );
|
|
|
+ const route = useRoute();
|
|
|
+ let isSingleStudent = !!route.query.studentId;
|
|
|
+ const {
|
|
|
+ studentId,
|
|
|
+ subjectCode,
|
|
|
+ startScore,
|
|
|
+ endScore,
|
|
|
+ mainNumber,
|
|
|
+ mainStartScore,
|
|
|
+ mainEndScore,
|
|
|
+ questionScore,
|
|
|
+ } = route.query as {
|
|
|
+ studentId: string;
|
|
|
+ subjectCode: string;
|
|
|
+ startScore: string;
|
|
|
+ endScore: string;
|
|
|
+ mainNumber: string;
|
|
|
+ mainStartScore: string;
|
|
|
+ mainEndScore: string;
|
|
|
+ questionScore: string;
|
|
|
+ };
|
|
|
|
|
|
- // const showMarkBoardTrack = computed(() => {
|
|
|
- // return store.setting.mode === ModeEnum.TRACK;
|
|
|
- // });
|
|
|
+ async function updateClearTask() {
|
|
|
+ await clearInspectedTask(studentId, subjectCode);
|
|
|
+ }
|
|
|
|
|
|
- // const showMarkBoardKeyBoard = computed(() => {
|
|
|
- // return (
|
|
|
- // store.setting.mode === ModeEnum.COMMON &&
|
|
|
- // store.setting.uiSetting["normal.mode"] === "keyboard"
|
|
|
- // );
|
|
|
- // });
|
|
|
+ async function updateSetting() {
|
|
|
+ const settingRes = await getInspectedSetting();
|
|
|
+ store.setting.fileServer = settingRes.data.fileServer;
|
|
|
+ store.setting.userName = settingRes.data.userName;
|
|
|
+ store.setting.uiSetting = {
|
|
|
+ "answer.paper.scale": 1,
|
|
|
+ "score.board.collapse": false,
|
|
|
+ };
|
|
|
+ }
|
|
|
+ async function updateStatus() {
|
|
|
+ const res = await getInspectedTaskStatus({
|
|
|
+ subjectCode,
|
|
|
+ mainNumber,
|
|
|
+ startScore,
|
|
|
+ endScore,
|
|
|
+ mainStartScore,
|
|
|
+ mainEndScore,
|
|
|
+ questionScore,
|
|
|
+ });
|
|
|
+ if (res.data.valid) store.status = res.data;
|
|
|
+ }
|
|
|
+ async function updateTask() {
|
|
|
+ let res;
|
|
|
+ if (isSingleStudent) {
|
|
|
+ res = await getSingleStuTask();
|
|
|
+ } else {
|
|
|
+ res = await getOneOfStuTask();
|
|
|
+ }
|
|
|
+
|
|
|
+ store.currentTask = res.data;
|
|
|
+ if (store.currentTask) store.setting.subject = store.currentTask.subject;
|
|
|
+ }
|
|
|
|
|
|
- // const showMarkBoardMouse = computed(() => {
|
|
|
- // return (
|
|
|
- // store.setting.mode === ModeEnum.COMMON &&
|
|
|
- // store.setting.uiSetting["normal.mode"] === "mouse"
|
|
|
- // );
|
|
|
- // });
|
|
|
+ onMounted(async () => {
|
|
|
+ await updateClearTask();
|
|
|
|
|
|
- // const saveTaskToServer = async () => {
|
|
|
- // console.log("save task to server");
|
|
|
- // const res = (await saveTask()) as any;
|
|
|
- // updateStatus();
|
|
|
- // if (res.data.success && store.currentTask) {
|
|
|
- // let { libraryId, studentId } = store.currentTask;
|
|
|
- // const i = store.markResults.findIndex(
|
|
|
- // (s) => s.libraryId === libraryId && s.studentId === studentId
|
|
|
- // );
|
|
|
- // store.markResults.splice(i, 1);
|
|
|
- // store.currentTask = undefined;
|
|
|
- // store.tasks.shift();
|
|
|
- // } else {
|
|
|
- // console.log(res.data.message);
|
|
|
- // }
|
|
|
- // };
|
|
|
+ updateSetting();
|
|
|
+ updateStatus();
|
|
|
+ updateTask();
|
|
|
+ });
|
|
|
|
|
|
async function getSingleStuTask() {
|
|
|
- return getSingleStudentTask("1581");
|
|
|
+ return getSingleInspectedTask(studentId);
|
|
|
+ }
|
|
|
+
|
|
|
+ async function getOneOfStuTask() {
|
|
|
+ return getOneOfInspectedTask({
|
|
|
+ subjectCode,
|
|
|
+ mainNumber,
|
|
|
+ startScore,
|
|
|
+ endScore,
|
|
|
+ mainStartScore,
|
|
|
+ mainEndScore,
|
|
|
+ questionScore,
|
|
|
+ });
|
|
|
}
|
|
|
- console.log(getSingleStuTask());
|
|
|
return {
|
|
|
store,
|
|
|
// saveTaskToServer,
|
|
|
- // showMarkBoardTrack,
|
|
|
- // showMarkBoardKeyBoard,
|
|
|
- // showMarkBoardMouse,
|
|
|
};
|
|
|
},
|
|
|
});
|