Ver Fonte

错题回顾页面添加2

JXDS18FUJT há 1 ano atrás
pai
commit
babaecaf14

+ 1 - 11
src/api/question/question.ts

@@ -55,7 +55,7 @@ export default {
         return request({
             data,
             url: "/question/wrong/wrongs",
-            method: 'delete',
+            method: 'post',
 
         })
     },
@@ -102,15 +102,5 @@ export default {
         })
 
     },
-    //(三力测试)获取题库详细信息批量取题
-    threeForceGetThreeForceListIds(params: {
-        ids: string
-    }): Promise<questionApi.selectTestK14QuestionInfoList>{
-        return request({
-            url: "/three/force/getThreeForceListIds",
-            method: 'get',
-            params
 
-        })
-    }
 }

+ 5 - 4
src/hooks/exam/driverExam.ts

@@ -712,7 +712,8 @@ export const useDriverExam = (requestFn: Promise<openApi.selectFreeQuestionInfoR
   const submitDriveExam = () => {
     setUserAnswerAndRes(list.value[listIndex.value].userAnswer)
     let score = 0
-    const wrongList: openApi.selectFreeQuestionInfoRes["rows"] = []
+    const wrongTempList: openApi.selectFreeQuestionInfoRes["rows"] = [] //临时错题
+    const wrongList: openApi.selectFreeQuestionInfoRes["rows"]= [] //永久错题
     const wrongListRes: string[] = []
     list.value.forEach((item, index) => {
       //题目正确加分
@@ -721,7 +722,7 @@ export const useDriverExam = (requestFn: Promise<openApi.selectFreeQuestionInfoR
       }
       else if (!item.isComplete && list.value[index].userAnswer.length == 0) {
         //没做的题目
-        wrongList.push(list.value[index])
+        wrongTempList.push(list.value[index])
         wrongListRes.push('0')
       }
       else {
@@ -742,13 +743,13 @@ export const useDriverExam = (requestFn: Promise<openApi.selectFreeQuestionInfoR
           userAnswerIndex = (String(optsArr.indexOf(userAnswer) + 1))
         }
 
+        wrongTempList.push(list.value[index])
         wrongList.push(list.value[index])
-
         wrongListRes.push(String(userAnswerIndex))
       }
     })
     //保存临时错题
-    window.sessionStorage.setItem('driverExam_temp_wrong_list', JSON.stringify(wrongList || '[]'))
+    window.sessionStorage.setItem('driverExam_temp_wrong_list', JSON.stringify(wrongTempList || '[]'))
     //同步全部的错题
     api.question.questionWrongWrongs({
       km: Number(route.query.subject),

+ 6 - 4
src/hooks/exam/threeExam.ts

@@ -596,7 +596,8 @@ export const useThreeExam = (requestFn: Promise<threeApi.threeForceList>, config
     const submitThreeExam = () => {
         setUserAnswerAndRes(list.value[listIndex.value].userAnswer)
         let score = 0
-        const wrongList:threeApi.threeForceList["rows"] = []
+        const wrongTempList:threeApi.threeForceList["rows"] = [] //临时错题
+        const wrongList:threeApi.threeForceList["rows"] = [] //永久错题
         const wrongListRes:string[] = []
         list.value.forEach((item, index) => {
             //题目正确加分
@@ -605,13 +606,13 @@ export const useThreeExam = (requestFn: Promise<threeApi.threeForceList>, config
             }
             else if(!item.isComplete&&list.value[index].userAnswer.length==0){
               //没做的题目
-              wrongList.push(list.value[index])
+              wrongTempList.push(list.value[index])
               wrongListRes.push('0')
             }
             else {
                 //错误的题目
                 let userAnswerIndex = 0
-                wrongList.push(list.value[index])
+                wrongTempList.push(list.value[index])
                 for (let i = 1; i <= 6; i++) {
                     if (list.value[index].userAnswer == '') {
                         break;
@@ -622,10 +623,11 @@ export const useThreeExam = (requestFn: Promise<threeApi.threeForceList>, config
                     }
                 }
                 wrongListRes.push(String(userAnswerIndex))
+                wrongList.push(list.value[index])
             }
         })
         //保存临时错题
-        window.sessionStorage.setItem('threeExam_temp_wrong_list',JSON.stringify(wrongList))
+        window.sessionStorage.setItem('threeExam_temp_wrong_list',JSON.stringify(wrongTempList))
         //同步全部的错题
         api.question.questionthreeWrongWrongs({
        

+ 29 - 20
src/views/driverExamAnaly/index.vue

@@ -34,11 +34,7 @@
           :key="index"
           class="round10 pt30 pr30 pl30 pb30 text-left round10 gray-border mb20"
         >
-          <div
-           
-          >
-            {{ index + 1 }}、{{ list[index].issue }}
-          </div>
+          <div>{{ index + 1 }}、{{ list[index].issue }}</div>
           <div
             :class="{
               'text-red-500': userAnswerList[index] == '0',
@@ -46,21 +42,34 @@
             v-for="(_item, _index) in list[index].optsArr"
             :key="_index"
           >
-            <span
-              v-if="
-                userAnswerList[index].includes(_index + 1 + '') &&
-                userAnswerList[index] != '0'
-              "
-              >x</span
-            >
-            <span
-              v-if="
-                userAnswerList[index].includes(_index + 1 + '') &&
-                userAnswerList[index] != '0'
-              "
-              >√</span
-            >
-            {{ switchIndexBySelect(_index) }} . {{ _item }}
+            <div v-if="list[index].questionType!==3">
+              <span
+                v-if="
+                  list[index].answer!==_item &&
+                  userAnswerList[index] != '0'
+                "
+                >×</span
+              >
+              <span
+                v-if="
+                  list[index].answer===_item &&
+                  userAnswerList[index] != '0'
+                "
+                >√</span
+              >
+              {{ switchIndexBySelect(_index) }} . {{ _item }}
+            </div>
+            <div v-if="list[index].questionType==3">
+             
+              <span
+                v-if="
+                  list[index].answer.split('-').includes(_item) &&
+                  userAnswerList[index] != '0'
+                "
+                >√</span
+              >
+              {{ switchIndexBySelect(_index) }} . {{ _item }}
+            </div>
           </div>
 
           <div

+ 15 - 6
src/views/home/practiseSelect/index.vue

@@ -38,9 +38,15 @@
                   练习
                 </div>
               </router-link>
-              <div class="w64 lh34 mr15 round4 overflow-hidden select-border2">
-                回顾
-              </div>
+              <router-link
+                :to="'/reviewDriverError?subject=' + $route.query.subject"
+              >
+                <div
+                  class="w64 lh34 mr15 round4 overflow-hidden select-border2"
+                >
+                  回顾
+                </div>
+              </router-link>
             </div>
           </div>
         </div>
@@ -48,7 +54,10 @@
       <div class="flex items-center pt30 pb30">
         <div class="vertical-line mr10"></div>
         <span class="font20 font-bold mr15">全部错误题回顾</span>
-        <div class="lh34 round4 pr15 pl15 select-border1 mr15">错误回顾</div>
+         <router-link
+                :to="'/reviewDriverError?subject=' + $route.query.subject"
+              >
+        <div class="lh34 round4 pr15 pl15 select-border1 mr15">错误回顾</div></router-link>
         <div
           @click="
             () => {
@@ -86,7 +95,7 @@ export default defineComponent({
   name: "practiseSelect",
   setup() {
     const route = useRoute();
-    const dialogVisible =ref(false)
+    const dialogVisible = ref(false);
     let list = ref<
       {
         createTime?: string;
@@ -118,7 +127,7 @@ export default defineComponent({
             km: Number(route.query.subject),
           })
           .then((res) => {
-            dialogVisible.value = false
+            dialogVisible.value = false;
             message.success({
               content: "成功清除",
             });

+ 8 - 2
src/views/home/selectDriveExamSubject/index.vue

@@ -25,12 +25,18 @@
             货车
           </div>
         </div>
-        <div class="lh34 ml15 select-border1 round4 pr15 pl15">错误回顾</div>
+             <router-link
+                :to="'/reviewDriverError?subject=' + $route.query.subject"
+              >
+        <div class="lh34 ml15 select-border1 round4 pr15 pl15">错误回顾</div></router-link>
       </div>
       <div class="flex items-center pt30 pb30">
         <div class="vertical-line mr10"></div>
         <span class="font20 font-bold mr15">全部错误题回顾</span>
-        <div class="lh34 round4 pr15 pl15 select-border1 mr15">错误回顾</div>
+             <router-link
+                :to="'/reviewDriverError?subject=' + $route.query.subject"
+              >
+        <div class="lh34 round4 pr15 pl15 select-border1 mr15">错误回顾</div></router-link>
         <div
           @click="
             () => {

+ 15 - 8
src/views/home/threeExam/index.vue

@@ -13,7 +13,7 @@
             练习
           </div>
         </div>
-        <div class="lh34 ml15 select-border1 round4 pr15 pl15">错误回顾</div>
+       <router-link :to="'/reviewThreeError'">   <div class="lh34 ml15 select-border1 round4 pr15 pl15">错误回顾</div></router-link>
       </div>
       <div class="flex items-center">
         <div class="vertical-line mr10"></div>
@@ -27,12 +27,20 @@
             考试
           </div>
         </div>
-        <div class="lh34 ml15 select-border1 round4 pr15 pl15">错误回顾</div>
+          <router-link :to="'/reviewThreeError'">    <div class="lh34 ml15 select-border1 round4 pr15 pl15">错误回顾</div></router-link>
+    
       </div>
       <div class="flex items-center pt30 pb30">
         <div class="vertical-line mr10"></div>
+
         <span class="font20 font-bold mr15">全部错误题回顾</span>
-        <div class="lh34 round4 pr15 pl15 select-border1 mr15">错误回顾</div>
+
+        <router-link :to="'/reviewThreeError'">
+          <div class="lh34 round4 pr15 pl15 select-border1 mr15">
+            错误回顾
+          </div></router-link
+        >
+
         <div
           @click="
             () => {
@@ -67,17 +75,16 @@ import api from "@/api";
 import { message } from "ant-design-vue";
 export default defineComponent({
   setup() {
-     const route = useRoute()
-     const dialogVisible = ref(false)
-    
+    const route = useRoute();
+    const dialogVisible = ref(false);
+
     return {
-     
       dialogVisible,
       alertVisible: ref(false),
       deleteAllWrong() {
         api.question
           .questionWrongCancelAll({
-            km:5,
+            km: 5,
           })
           .then((res) => {
             dialogVisible.value = false;

+ 1 - 0
src/views/reviewDriverError/index.vue

@@ -217,6 +217,7 @@
       title="题目解析"
     ></mProblemAlert>
     <mProblemDialog
+      @confirm="submitDriveExam()"
       v-model:visible="dialogVisible"
       title="提示"
       content="是否真的要交卷(按确定键交卷,按取消键继续答题)"

+ 14 - 9
src/views/reviewThreeError/index.vue

@@ -50,7 +50,6 @@
                 switchPageNumBySelect(list[listIndex].answertrue)
               }}</span
             >
-           
           </div>
           <div>
             <div
@@ -275,6 +274,7 @@
       title="题目解析"
     ></mProblemAlert>
     <mProblemDialog
+      @confirm="submitThreeExam()"
       v-model:visible="dialogVisible"
       title="提示"
       content="是否真的要交卷(按确定键交卷,按取消键继续答题)"
@@ -317,18 +317,23 @@ export default defineComponent({
       var reg = /\.(mp4|rmvb|3gp|flv|avi)$/;
       return reg.test(url);
     };
-    let wrongList:{id:number,timestamp:number}[] = []
-    wrongList = JSON.parse(window.localStorage.getItem('threeExam_local_wrong_list')||'[]') as {id:number,timestamp:number}[]
+    let wrongList: { id: number; timestamp: number }[] = [];
+    wrongList = JSON.parse(
+      window.localStorage.getItem("threeExam_local_wrong_list") || "[]"
+    ) as { id: number; timestamp: number }[];
     return {
       sysConfig,
       alertVisible: ref(false),
       dialogVisible: ref(false),
-      ...useThreeExam(api.three.threeForceGetThreeForceListIds({
-        ids:wrongList.map(item=>item.id).join(',')
-      }), {
-        autoAnswer: false,
-        countDown: false,
-      }),
+      ...useThreeExam(
+        api.three.threeForceGetThreeForceListIds({
+          ids: wrongList.map((item) => item.id).join(","),
+        }),
+        {
+          autoAnswer: false,
+          countDown: false,
+        }
+      ),
       changeSysConfig,
       fixedNumber,
       isImageUrl,

+ 24 - 5
src/views/studySkill/index.vue

@@ -93,10 +93,29 @@
               {{ switchIndexBySelect(index) }}
             </div>
           </div>
+          <div v-if="list[listIndex].questionType == 3" class="flex mt15">
+            <div
+              @click="setUserAnswer(item)"
+              v-for="(item, index) in list[listIndex].optsArr"
+              :key="index"
+              class="w57 lh46 bottom-button mr15"
+            >
+              {{ switchIndexBySelect(index) }}
+            </div>
+            <div
+              @click="setUserAnswerAndRes(list[listIndex].userAnswer)"
+              class="bg-primary-yellow font16 lh40 w110 text-center round4 mt20 cursor-pointer"
+            >
+              确定
+            </div>
+          </div>
         </div>
         <div class="w430 pr30 flex items-center bg-white">
-          <img class="w400" v-if="list[listIndex].image" :src="list[listIndex].image">
-
+          <img
+            class="w400"
+            v-if="list[listIndex].image"
+            :src="list[listIndex].image"
+          />
         </div>
       </div>
       <div class="w-full pt30">
@@ -241,13 +260,13 @@ export default defineComponent({
       autoNext: store.state.sysConfig.autoNext,
     });
     const changeSysConfig = (event: any) => {
-      console.log(sysConfig.value)
+      console.log(sysConfig.value);
       store.commit("SET_SYSCONFIG", sysConfig.value);
     };
     const fixedNumber = (decimal: number, digit: number) => {
       return decimal.toFixed(digit);
     };
- 
+
     return {
       sysConfig,
       alertVisible: ref(false),
@@ -270,7 +289,7 @@ export default defineComponent({
   },
   components: {
     mProblemAlert,
-    mProblemDialog
+    mProblemDialog,
   },
 });
 </script>