From a11bc1bed7953b88213330582c2085f60b5a73b1 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期三, 12 六月 2024 15:01:56 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit

---
 h5/pages/answer/answer.vue |  156 +++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 130 insertions(+), 26 deletions(-)

diff --git a/h5/pages/answer/answer.vue b/h5/pages/answer/answer.vue
index c589aa3..68aa17e 100644
--- a/h5/pages/answer/answer.vue
+++ b/h5/pages/answer/answer.vue
@@ -6,24 +6,13 @@
     </view>
     <view class="box_list">
       <view class="box_list_answer" v-if="list && list.length > 0">
-        <!--    鍒ゆ柇   -->
-        <!-- 				<template v-if="list[i].type === 0">
-					<view class="box_list_answer_item" v-for="(item, index) in list[i].options" :key="index" @click="select(index)">
-						<image src="@/static/video_error@2x.png" v-if="success && problemIndex === index" />
-						<image src="@/static/video@2x.png" v-else-if="!String(problemIndex) || problemIndex !== index" />
-						<image src="@/static/video_sel@2x.png" v-else-if="problemIndex === index" />
-						<text style="color: rgba(237, 69, 69, 1)" v-if="success && problemIndex === index">{{item.code}}</text>
-						<text v-else-if="!String(problemIndex) || problemIndex !== index">{{item.code}}</text>
-						<text style="color: rgba(2, 94, 239, 1)" v-else-if="problemIndex === index">{{item.code}}</text>
-					</view>
-				</template> -->
-        <!--    鍗曢��   -->
+        <!--    鍗曢��/鍒ゆ柇   -->
         <view v-for="(item, index) in list" :key="index" class="list_item">
-          <template v-if="item.type == 1">
-            <view class="box_list_answer_name">
-              {{ index + 1 }}銆亄{ item.title
-              }}<text style="color: #ed4545">*</text>
-            </view>
+          <view class="box_list_answer_name">
+            {{ index + 1 }}銆亄{ item.title
+            }}<text style="color: #ed4545">*</text>
+          </view>
+          <template v-if="item.type == 1 || item.type == 0">
             <view
               class="box_list_answer_item"
               v-for="(line, lIndex) in item.options"
@@ -40,7 +29,9 @@
                   (item.selAnswer &&
                     item.answer === item.selAnswer &&
                     item.selAnswer == line.code) ||
-                  item.selAnswer == line.code
+                  (item.selAnswer == line.code && status != '2') ||
+                  (item.answer === item.selAnswer &&
+                    item.selAnswer == line.code)
                 "
               />
               <image
@@ -61,7 +52,9 @@
                   (item.selAnswer &&
                     item.answer === item.selAnswer &&
                     item.selAnswer == line.code) ||
-                  item.selAnswer == line.code
+                  (item.selAnswer == line.code && status != '2') ||
+                  (item.answer === item.selAnswer &&
+                    item.selAnswer == line.code)
                 "
                 style="color: rgba(2, 94, 239, 1)"
                 ><text class="mr24" style="color: rgba(2, 94, 239, 1)">{{
@@ -72,6 +65,7 @@
               <text
                 v-if="
                   item.selAnswer &&
+                  item.selAnswer == line.code &&
                   item.answer !== item.selAnswer &&
                   status == '2'
                 "
@@ -84,17 +78,103 @@
             </view>
             <view
               class="box_list_answer_tips"
-              v-if="item.selAnswer && item.answer !== item.selAnswer && status != '0'"
+              v-if="
+                item.selAnswer &&
+                item.answer !== item.selAnswer &&
+                status != '0'
+              "
             >
               <image src="@/static/ic_wrong@2x.png" />
               <text>鍥炵瓟閿欒</text>
             </view>
             <view
               class="box_list_answer_tips"
-              v-if="item.selAnswer && item.answer === item.selAnswer && status != '0'"
+              v-if="
+                item.selAnswer &&
+                item.answer === item.selAnswer &&
+                status != '0'
+              "
             >
               <image src="@/static/meeting/icon/ic_choose_sel@2x.png" />
-              <text>鍥炵瓟姝g‘</text>
+              <text class="success">鍥炵瓟姝g‘</text>
+            </view>
+          </template>
+          <template v-if="item.type == 2">
+            <view
+              class="box_list_answer_item"
+              v-for="(line, lIndex) in item.options"
+              :key="lIndex"
+              @click="changeBox(index, lIndex)"
+            >
+              <image src="@/static/checkbox@2x.png" v-if="!line.checked" />
+              <image
+                src="@/static/checkbo1x_sel@2x.png"
+                v-if="
+                  (line.checked && status != '2') ||
+                  (item.selAnswer === item.answer &&
+                    line.checked &&
+                    status != '2')
+                "
+              />
+              <image
+                src="@/static/checkbox_wrong@2x.png"
+                v-if="
+                  line.checked &&
+                  item.selAnswer !== item.answer &&
+                  status == '2'
+                "
+              />
+              <text v-if="!line.checked"
+                ><text class="mr24">{{ line.code }}</text>
+                {{ line.value }}</text
+              >
+              <text
+                v-if="
+                  (line.checked && status != '2') ||
+                  (item.selAnswer === item.answer &&
+                    line.checked &&
+                    status != '2')
+                "
+                style="color: rgba(2, 94, 239, 1)"
+                ><text class="mr24" style="color: rgba(2, 94, 239, 1)">{{
+                  line.code
+                }}</text>
+                {{ line.value }}</text
+              >
+              <text
+                v-if="
+                  line.checked &&
+                  item.selAnswer !== item.answer &&
+                  status == '2'
+                "
+                style="color: rgba(237, 69, 69, 1)"
+                ><text class="mr24" style="color: rgba(237, 69, 69, 1)">{{
+                  line.code
+                }}</text>
+                {{ line.value }}</text
+              >
+            </view>
+            <view
+              class="box_list_answer_tips"
+              v-if="
+                item.selAnswer &&
+                item.answer !== item.selAnswer &&
+                status != '0'
+              "
+            >
+              <image src="@/static/ic_wrong@2x.png" />
+              <text>鍥炵瓟閿欒</text>
+            </view>
+            <view
+              class="box_list_answer_tips"
+              v-if="
+                item.selAnswer &&
+                item.answer === item.selAnswer &&
+                status != '0'
+              "
+            >
+              <image src="@/static/meeting/icon/ic_choose_sel@2x.png" />
+              <text class="success">鍥炵瓟姝g‘</text>
             </view>
           </template>
         </view>
@@ -112,7 +192,7 @@
           v-if="status == '2'"
           style="background-color: #db534c"
           class="box_list_answer_btn"
-          @click="status = '0'"
+          @click="handleAgain"
           >绛旈澶辫触锛屽啀鏉ヤ竴娆�</view
         >
         <!--    澶氶��    -->
@@ -186,16 +266,21 @@
             res.data.forEach(item => {
               // 鍒ゆ柇
               if (item.type === 0) {
-                item.options = [{ code: '姝g‘', value: '姝g‘' }, { code: '閿欒', value: '閿欒' }]
+                item.options = [{ code: '姝g‘' }, { code: '閿欒' }]
               }
               // 鍗曢��/澶氶��
               if (item.type === 1 || item.type === 2) {
                 item.options = JSON.parse(item.options)
               }
+              if (item.type === 2) {
+                item.options.forEach(i => {
+                  i.checked = false
+                })
+              }
               item.status = '0'
               item.selAnswer = null
             })
-            console.log('options', res.data)
+            console.log(res.data)
             this.list = res.data
           }
           // res.param.problemsDOList.forEach(item => {
@@ -213,6 +298,18 @@
         }
       })
       // this.problemIndex = index
+    },
+    changeBox(index, jeck) {
+      this.list.forEach((item, i) => {
+        if (index === i) {
+          item.options.forEach((item2, j) => {
+            if (j === jeck) {
+              item2.checked = !item2.checked
+            }
+          })
+          item.selAnswer = item.options.filter(a => a.checked).map(b => b.code).sort().join(',')
+        }
+      })
     },
     sort(arr) {
       arr.sort(function (a, b) {
@@ -272,6 +369,10 @@
       } else {
         this.status = '1'
       }
+    },
+    handleAgain() {
+      this.status = '0'
+      this.getProblems()
     },
     next() {
       uni.navigateTo({
@@ -351,10 +452,13 @@
           color: #e42d2d;
           margin-left: 16rpx;
         }
+        .success {
+          color: #275de6;
+        }
       }
     }
     .list_item {
-      margin-bottom: 24rpx;
+      margin-bottom: 46rpx;
     }
     .box_list_answer_item {
       width: 100%;

--
Gitblit v1.9.3