|
@@ -1,4 +1,5 @@
|
|
|
import { useMarkStore } from "@/store";
|
|
|
+import { getStatus } from "@/api/markPage";
|
|
|
|
|
|
export default function useTaskQuestion() {
|
|
|
const markStore = useMarkStore();
|
|
@@ -24,8 +25,10 @@ export default function useTaskQuestion() {
|
|
|
if (!firstUnfinishedQuestion) return;
|
|
|
|
|
|
let remainCount = markStore.tasks.length + 1;
|
|
|
+
|
|
|
for (let i = 0; i < markStore.status.length; i++) {
|
|
|
const curStatus = markStore.status[i];
|
|
|
+ if (curStatus.leftCount <= 0) continue;
|
|
|
remainCount = curStatus.leftCount - remainCount;
|
|
|
if (remainCount >= 0) return curStatus.questionId;
|
|
|
}
|
|
@@ -43,16 +46,21 @@ export default function useTaskQuestion() {
|
|
|
const questionIndex = markStore.status.findIndex(
|
|
|
(item) => item.questionId === data.questionId
|
|
|
);
|
|
|
- console.log(questionIndex);
|
|
|
-
|
|
|
if (questionIndex < 0) return;
|
|
|
markStore.status[questionIndex].leftCount = data.leftCount;
|
|
|
+ }
|
|
|
|
|
|
- console.log(markStore.status[questionIndex]);
|
|
|
+ async function updateQuestionStatus(questionId: string) {
|
|
|
+ const res = await getStatus(markStore.setting.questionModel, questionId);
|
|
|
+ updateStatusQuestionCount({
|
|
|
+ questionId,
|
|
|
+ leftCount: res.data[0]?.leftCount,
|
|
|
+ });
|
|
|
}
|
|
|
|
|
|
return {
|
|
|
getNextTaskQuestionId,
|
|
|
updateStatusQuestionCount,
|
|
|
+ updateQuestionStatus,
|
|
|
};
|
|
|
}
|