Преглед на файлове

feat(student): add homework type mapping and submit details

添加作业类型映射表,在提交作业时携带作业类型和幻灯片索引信息,便于后续统计和追踪不同类型作业的提交情况。
lsc преди 5 дни
родител
ревизия
8ac6a1e03b
променени са 1 файла, в които са добавени 19 реда и са изтрити 4 реда
  1. 19 4
      src/views/Student/index.vue

+ 19 - 4
src/views/Student/index.vue

@@ -2126,7 +2126,22 @@ const handleHomeworkSubmit = async () => {
   isSubmitting.value = true
   isSubmitting.value = true
   let homeworkContent: string = lang.ssHwSubmit // 默认作业内容
   let homeworkContent: string = lang.ssHwSubmit // 默认作业内容
   let hasSubmitWork = false // 标记是否成功提交作业
   let hasSubmitWork = false // 标记是否成功提交作业
-
+  const typeMap: Record<number, string> = {
+    45: lang.ssChoiceQ,
+    15: lang.ssQATest,
+    72: lang.ssAiApp,
+    73: lang.ssHPage,
+    81: lang.ssHPage,
+    74: lang.ssVideo,
+    75: lang.lang == 'cn' ? lang.ssBiliVideo : lang.ssYouTube,
+    76: lang.ssCreative,
+    77: lang.ssEnglishSpeakingTool,
+    [ARTICLE_READING_TOOL_TYPE]: lang.ssArticleReadingTool,
+    78: lang.ssVote,
+    79: lang.ssPhoto,
+    84: lang.ssFile,
+    831: lang.ssKwlTitle,
+  }
   try {
   try {
     // 获取所有iframe元素
     // 获取所有iframe元素
     const iframes = document.querySelectorAll('.viewer-canvas .screen-slide')[slideIndex.value].querySelectorAll('iframe')
     const iframes = document.querySelectorAll('.viewer-canvas .screen-slide')[slideIndex.value].querySelectorAll('iframe')
@@ -2583,16 +2598,16 @@ const handleHomeworkSubmit = async () => {
     message.error(lang.ssSubmitFailed)
     message.error(lang.ssSubmitFailed)
     message.error(lang.ssHwSubmitFail)
     message.error(lang.ssHwSubmitFail)
     isSubmitting.value = false
     isSubmitting.value = false
-    addOp3(1, new Date().getTime(), { courseid: props.courseid, homeworkContent, error }, 'error')
+    addOp3(1, new Date().getTime(), { courseid: props.courseid, homeworkContent, error, homeworkType: typeMap[currentSlideToolType.value], slideIndex: slideIndex.value }, 'error') 
   }
   }
   finally {
   finally {
     // isSubmitting.value = false
     // isSubmitting.value = false
     getWork(true)
     getWork(true)
     if (hasSubmitWork) {
     if (hasSubmitWork) {
-      addOp3(1, new Date().getTime(), { courseid: props.courseid, homeworkContent }, 'success')
+      addOp3(1, new Date().getTime(), { courseid: props.courseid, homeworkContent, homeworkType: typeMap[currentSlideToolType.value], slideIndex: slideIndex.value }, 'success')
     }
     }
     else {
     else {
-      addOp3(1, new Date().getTime(), { courseid: props.courseid, homeworkContent: '未找到可用的作业提交功能' }, 'error')
+      addOp3(1, new Date().getTime(), { courseid: props.courseid, homeworkContent: '未找到可用的作业提交功能', homeworkType: typeMap[currentSlideToolType.value], slideIndex: slideIndex.value }, 'error')
     }
     }
   }
   }
 }
 }