From e9d90e9ea68a2ee82869124ff092dc21f329f2b0 Mon Sep 17 00:00:00 2001
From: yj <2077506045@qq.com>
Date: 星期四, 27 十一月 2025 11:00:22 +0800
Subject: [PATCH] 移动端不显示关闭按钮与相应文字

---
 src/views/exam/paper/job.vue |   48 ++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 38 insertions(+), 10 deletions(-)

diff --git a/src/views/exam/paper/job.vue b/src/views/exam/paper/job.vue
index 7f1db29..70d5579 100644
--- a/src/views/exam/paper/job.vue
+++ b/src/views/exam/paper/job.vue
@@ -23,13 +23,13 @@
             <el-card class="exampaper-item-box" v-if="titleItem.questionItems.length!==0">
               <el-form-item :key="questionItem.itemOrder" class="exam-question-item" label-width="0%"
                             v-for="questionItem in titleItem.questionItems" :id="'question-'+ questionItem.itemOrder">
-                <QuestionJobEdit @callNextSubject="callNext" :qType="questionItem.questionType" :question="questionItem"
+                <QuestionJobEdit @callSelected="callSelected" @callNextSubject="callNext" :qType="questionItem.questionType" :question="questionItem"
                               :answer="answer.answerItems[questionItem.itemOrder-1]"  :isReadOnly="autoNext"/>
               </el-form-item>
             </el-card>
           </el-row>
           <el-row class="do-align-center" v-if="order < form.titleItems.length - 1">
-            <el-button @click="preSubject" type="warning" v-if ="preDisable" round>{{$t('lastQuestion')}}</el-button>
+            <el-button @click="preSubject" type="warning" v-if ="preDisable" :disabled="preDisable2" round>{{$t('lastQuestion')}}</el-button>
             <el-button @click="nextSubject" type="primary" v-if ="nextDisable" round>{{$t('nextQuestion')}}</el-button>
           </el-row>
           <el-row class="do-align-center" v-else>
@@ -77,7 +77,6 @@
         titleItems: null,
         answerItems: [],
         verifyStatus: 2,
-        finish: 0,
         questionOrder: []
       },
       timer: null,
@@ -93,18 +92,21 @@
       submitDisable: false,
       doTime: 0,
       preDisable: false,
+      preDisable2: false,
       nextDisable: false,
       autoNext: true,
       isCallTain: false, // 鏄惁瑕佽皟鐢ㄦ嘲鍥藉洟闃熸帴鍙�
       isLangKaiStyle: false,
-      totalTitleNum: 0
+      totalTitleNum: 0,
+      selectedCount: 0,
+      hasShownSubmitTip: false // 鏍囧織鏄惁宸茬粡鏄剧ず杩囨彁浜ゆ彁绀�
     }
   },
   created () {
     let _this = this
     // 澶氳瑷�
     _this.setLangFlag(false)
-    _this.form = this.$route.query.formDo
+    _this.form = undefined
     if (_this.form !== {} && _this.form !== undefined) {
       _this.formLoading = true
       _this.remainTime = _this.form.suggestTime * 60
@@ -229,6 +231,7 @@
     },
     nextSubject: function () {
       let _this = this
+      _this.preDisable2 = false
       // 璁剧疆涓婁竴棰樼粨鏉熸椂闂�
       _this.form.titleItems[_this.order].endTime = _this.formatDate(new Date(), 'yyyy-MM-dd hh:mm:ss')
       _this.isShowGuide(false)
@@ -294,11 +297,34 @@
           }
         })
       }
+      // JAQ鎶ュ憡鏈�鍚庡ぇ棰樺畬鎴� 鍚敤鎻愪氦鎸夐挳
+      let isCompleted1 = _this.answer.answerItems[_this.answer.answerItems.length - 2].completed
+      let isCompleted2 = _this.answer.answerItems[_this.answer.answerItems.length - 1].completed
+      if (isCompleted1 && isCompleted2) {
+        this.submitDisable = false
+        // 妫�鏌ユ槸鍚︽槸鏈�鍚庝竴棰樹笖宸茬瓟瀹岋紝寮瑰嚭鎻愮ず妗嗭紙鍙脊涓�娆★級
+        if (!_this.hasShownSubmitTip) {
+          _this.hasShownSubmitTip = true
+          _this.$alert(_this.$t('submit_tip'), _this.$t('prompt'), {
+            confirmButtonText: _this.$t('determine'),
+            customClass: 'submit-tip-dialog'
+          })
+        }
+      }
+
       if (jumpNextFlag) {
         _this.nextSubject()
-        this.submitDisable = false
-      } else {
-        this.submitDisable = true
+      }
+    },
+    // 瑙﹀彂閫変腑閫夐」
+    callSelected () {
+      let _this = this
+      if (!_this.preDisable) {
+        return
+      }
+      _this.selectedCount += 1
+      if (_this.selectedCount % 2 === 0) {
+        _this.preDisable2 = true
       }
     },
     submitForm () {
@@ -310,7 +336,9 @@
       for (let i = 0; i < _this.answer.answerItems.length; i++) {
         if (_this.answer.answerItems[i].content === null) {
           unFinish = true
-          _this.answer.finish = 0
+          // 鏈夋湭瀹屾垚鐨勭瓟棰樺簲璇ユ槸 2绛旈涓�
+          // 涔嬪墠鏄�0鏈鐞�
+          _this.answer.finish = 2
         }
       }
       if (unFinish) {
@@ -348,7 +376,7 @@
       let answerSubmit = _this.getSubmitAnswerValue()
       examPaperAnswerApi.answerSubmit(answerSubmit, _this.memberToken).then(re => {
         if (re.code === 1) {
-          _this.$router.push({ path: '/exam/finish', query: { name: _this.form.name, content: mess } })
+          _this.$router.push({ path: '/exam/finish', query: { name: _this.form.name, content: mess, tokenId: _this.memberToken } })
         } else {
           _this.$message.error(re.message + '/exam/finish')
         }

--
Gitblit v1.9.1