|
@@ -54,17 +54,11 @@ const obj = {
|
|
|
/** 如果currentTask不存在,则返回undefined; 如果currentMarkResult不存在,则创建一个对应的markResult并返回 */
|
|
|
export function findCurrentTaskMarkResult() {
|
|
|
if (!store.currentTask) return;
|
|
|
- const { libraryId, studentId } = store.currentTask;
|
|
|
- const statusValue = store.setting.statusValue;
|
|
|
- let markResult = store.markResults.find(
|
|
|
- (m) =>
|
|
|
- m.libraryId === libraryId &&
|
|
|
- m.studentId === studentId &&
|
|
|
- m.statusValue === statusValue
|
|
|
- );
|
|
|
+ const { libraryId } = store.currentTask;
|
|
|
+ let markResult = store.markResults.find((m) => m.libraryId === libraryId);
|
|
|
|
|
|
if (!markResult) {
|
|
|
- const { libraryId, studentId } = store.currentTask;
|
|
|
+ const { studentId } = store.currentTask;
|
|
|
const statusValue = store.setting.statusValue;
|
|
|
markResult = {} as MarkResult;
|
|
|
markResult.libraryId = libraryId;
|
|
@@ -85,24 +79,16 @@ export function findCurrentTaskMarkResult() {
|
|
|
store.markResults = [...store.markResults, markResult];
|
|
|
}
|
|
|
|
|
|
- return store.markResults.find(
|
|
|
- (m) =>
|
|
|
- m.libraryId === libraryId &&
|
|
|
- m.studentId === studentId &&
|
|
|
- m.statusValue === statusValue
|
|
|
- );
|
|
|
+ return store.markResults.find((m) => m.libraryId === libraryId);
|
|
|
}
|
|
|
|
|
|
+function clearMarkResultFromTask(task: Task) {
|
|
|
+ let { libraryId } = task;
|
|
|
+ const i = store.markResults.findIndex((s) => s.libraryId === libraryId);
|
|
|
+ if (i >= 0) store.markResults.splice(i, 1);
|
|
|
+}
|
|
|
/** 回评时,切换任务前,删除之前的回评markResult */
|
|
|
export function removeOldPreviousMarkResult() {
|
|
|
- function clearMarkResultFromTask(task: Task) {
|
|
|
- let { libraryId, studentId } = task;
|
|
|
- const i = store.markResults.findIndex(
|
|
|
- (s) => s.libraryId === libraryId && s.studentId === studentId
|
|
|
- );
|
|
|
- if (i >= 0) store.markResults.splice(i, 1);
|
|
|
- }
|
|
|
-
|
|
|
for (const task of store.historyTasks) {
|
|
|
// 清理不在当前任务中的markResult,防止回评产生的markResult造成垃圾
|
|
|
clearMarkResultFromTask(task);
|
|
@@ -112,14 +98,6 @@ export function removeOldPreviousMarkResult() {
|
|
|
export function removeCurrentMarkResult() {
|
|
|
if (!store.currentTask) return;
|
|
|
|
|
|
- function clearMarkResultFromTask(task: Task) {
|
|
|
- let { libraryId, studentId } = task;
|
|
|
- const i = store.markResults.findIndex(
|
|
|
- (s) => s.libraryId === libraryId && s.studentId === studentId
|
|
|
- );
|
|
|
- if (i >= 0) store.markResults.splice(i, 1);
|
|
|
- }
|
|
|
-
|
|
|
clearMarkResultFromTask(store.currentTask);
|
|
|
|
|
|
for (const task of store.tasks) {
|