JXDS18FUJT преди 2 години
родител
ревизия
26c5c4a768

+ 2 - 0
src/App.vue

@@ -96,5 +96,7 @@ html {
   padding-bottom: 20rpx;
   padding-top: 20rpx;
   border-top: 2rpx dashed #a8a8a8;
+  width: 100%;
+  
 }
 </style>

+ 1 - 1
src/components/m-do-topic/m-do-topic.vue

@@ -1494,7 +1494,7 @@ export default {
 
 .jqIcon {
   position: absolute;
-  top: 0;
+  top: -15rpx;
   left: 50%;
   transform: translate(-50%, -40%);
   width: 166rpx;

+ 61 - 46
src/components/m-nav-bar/m-nav-bar.vue

@@ -1,62 +1,77 @@
 <template>
-    <div class="header" >
-       <image @click="onClickLeft" class="arrow" src="https://ct.zzxcx.net/ctjk/mp-wx/beforeMockExam/arrow-left.png"></image>
-        <span class="title">{{ title }}</span>
-    </div>
+  <div class="header">
+    <image
+      @click="onClickLeft"
+      class="arrow"
+      :src="theme == 'white' ? whiteArrow : blackArrow"
+    ></image>
+    <text
+      :style="{
+        color: theme,
+      }"
+      class="title"
+      >{{ title }}</text
+    >
+  </div>
 </template>
 
 <script>
-import mIcon from './../m-icon/m-icon.vue'
+import mIcon from "./../m-icon/m-icon.vue";
 export default {
-    data() {
-        return {
-
-        }
+  data() {
+    return {
+      whiteArrow:
+        "https://ct.zzxcx.net/ctjk/mp-wx/beforeMockExam/arrow-left.png",
+      blackArrow: "https://ct.zzxcx.net/ctjk/mp-wx/mockExamEnd/arrow-left.png",
+    };
+  },
+  components: {
+    mIcon,
+  },
+  props: {
+    transparent: {
+      type: Boolean,
+      default: false,
     },
-    components: {
-        mIcon,
+    title: {
+      type: String,
+      default: "",
     },
-    props: {
-        transparent: {
-            type: Boolean,
-            default: false
-        },
-        title: {
-            type: String,
-            default: ''
-        },
-        iconStyle: {
-            type: String,
-            default: ''
-        }
+    theme: {
+      type: String,
+      default: "white",
     },
-    methods: {
-        onClickLeft() {
-           uni.navigateBack()
-        }
+    iconStyle: {
+      type: String,
+      default: "",
     },
-
-}
+  },
+  methods: {
+    onClickLeft() {
+      uni.navigateBack();
+    },
+  },
+};
 </script>
 
 <style lang="less" scoped>
 .header {
-    position: sticky;
-    top: 0;
-    font-size: 15px;
-    padding: 15px;
-    z-index: 999;
-    .arrow{
-        width: 10px;
-        height: 17px;
-    }
+  position: sticky;
+  top: 0;
+  font-size: 15px;
+  padding: 15px;
+  z-index: 999;
+  .arrow {
+    width: 10px;
+    height: 17px;
+  }
 
-    .title {
-        position: absolute;
-        left: 50%;
-        top: 50%;
-        transform: translate(-50%, -50%);
-        color: #fff;
-    }
+  .title {
+    position: absolute;
+    left: 50%;
+    top: 50%;
+    transform: translate(-50%, -50%);
+    color: #fff;
+  }
 }
 </style>

+ 99 - 18
src/otherPages/classifyArea/index.vue

@@ -3,25 +3,54 @@
     <van-cell
       title-class="uni-app-fontsize-paragraph"
       class="cell"
+      value-class="custom-right-cell"
       :title="
         item.placeIssueName ||
         item.classIssueName ||
         item.excellIssueName ||
         item.sequeIssueName
       "
-      is-link
       center
       v-for="(item, index) in classData"
       :key="index"
       :border="false"
-      @click="
-        () => {
-          goExercise({
-            placeIssueName: item.placeIssueName,
-          });
-        }
-      "
     >
+      <div class="select">
+        <div
+          class="select-item0 uni-app-fontsize-paragraph"
+          @click="
+            () => {
+              goExercise({
+                placeIssueName: item.placeIssueName,
+                placeIssue: item.placeIssue,
+              });
+            }
+          "
+        >
+          <image
+            style="width: 22rpx; height: 26rpx; padding-right: 6rpx"
+            src="https://ct.zzxcx.net/ctjk/mp-wx/classifyOrder/yuyin.png"
+          ></image>
+          语音讲解
+        </div>
+        <div
+          @click="
+            () => {
+              goExerciseExam({
+                placeIssueName: item.placeIssueName,
+                placeIssue: item.placeIssue,
+              });
+            }
+          "
+          class="select-item1 uni-app-fontsize-paragraph"
+        >
+          <image
+            style="width: 26rpx; height: 26rpx; padding-right: 6rpx"
+            src="https://ct.zzxcx.net/ctjk/mp-wx/classifyOrder/danxiang.png"
+          ></image>
+          单项测试
+        </div>
+      </div>
       <template #icon>
         <div class="icon">{{ index + 1 }}</div>
       </template>
@@ -29,9 +58,12 @@
     <div style="height: 40rpx; width: 750rpx"></div>
     <m-classify-tip :content="classifyTip"></m-classify-tip>
     <view class="wxad">
-      <ad :ad-intervals="100" ad-type="video" unit-id="adunit-8eb44bbd7e3147d4"></ad>
+      <ad
+        :ad-intervals="100"
+        ad-type="video"
+        unit-id="adunit-8eb44bbd7e3147d4"
+      ></ad>
     </view>
-   
   </div>
 </template>
 
@@ -53,6 +85,8 @@ export default {
   },
   methods: {
     goExercise(extraQuery) {
+      console.log(extraQuery);
+      
       let query = Object.assign({}, this.query);
       if (extraQuery) {
         query = {
@@ -66,6 +100,22 @@ export default {
         url: "/otherPages/exercise/index?" + utils.mapToUrlQuery(query),
       });
     },
+    goExerciseExam(extraQuery) {
+      console.log(extraQuery);
+      
+      let query = Object.assign({}, this.query);
+      if (extraQuery) {
+        query = {
+          ...query,
+          ...extraQuery,
+        };
+      } else {
+      }
+
+      uni.navigateTo({
+        url: "/otherPages/exerciseExam/index?" + utils.mapToUrlQuery(query),
+      });
+    },
     getClassData() {
       api.exam
         .studentQuestionInfoSelectDfQuestionInfo(this.query)
@@ -93,25 +143,56 @@ export default {
 // 	classData.value = data.data;
 // });
 </script>
-
+<style>
+.custom-right-cell {
+  flex: 1.8 !important;
+}
+</style>
 <style lang="scss" scoped>
-
 .cell-box {
   display: flex;
-  padding: 30rpx 30rpx;
+
   flex-wrap: wrap;
   justify-content: space-between;
+  .select {
+    display: flex;
+    flex-direction: row;
+    color: white;
 
+    .select-item0 {
+      padding: 0 18rpx;
+      background: #d6e9fc;
+      margin-right: 20rpx;
+      border-radius: 8rpx;
+      white-space: nowrap;
+      font-size: 32rpx;
+      color: #498ef5;
+      height: 60rpx;
+      line-height: 60rpx;
+      border-radius: 50rpx;
+    }
+
+    .select-item1 {
+      padding: 0 18rpx;
+      background: #d1f5eb;
+      white-space: nowrap;
+      border-radius: 8rpx;
+      font-size: 32rpx;
+      color: #01c18d;
+      height: 60rpx;
+      line-height: 60rpx;
+      border-radius: 50rpx;
+    }
+  }
   .cell {
-    width: 334rpx;
-    margin-bottom: 30rpx;
-    box-shadow: 0rpx 0rpx 10rpx rgba(124, 129, 136, 0.2);
+    width: 100%;
+    border-bottom: 2rpx solid #e8e8e8;
     font-size: $uni-app-fontsize-paragraph;
   }
   .icon {
     width: 40rpx;
     height: 40rpx;
-    background: #498ef5;
+    background: #d6e9fc;
     border-radius: 50%;
     font-weight: 500;
     font-family: PingFang SC;
@@ -119,7 +200,7 @@ export default {
     display: flex;
     justify-content: center;
     align-items: center;
-    color: #ffffff;
+    color: #498ef5;
     margin-right: 10rpx;
   }
 }

+ 8 - 4
src/otherPages/classifyKind/index.vue

@@ -79,17 +79,20 @@ export default {
   padding: 30rpx 30rpx;
   flex-wrap: wrap;
   justify-content: space-between;
+  background: #fff;
   .cell {
-    width: 334rpx;
-    margin-bottom: 30rpx;
-    box-shadow: 0rpx 0rpx 20rpx rgba(124, 129, 136, 0.2);
+    width: 690rpx;
+    border-bottom: 2rpx solid #E8E8E8;
+    // box-shadow: 0rpx 0rpx 20rpx rgba(124, 129, 136, 0.2);
     background: #fff;
+    font-size: 32rpx;
+    
   }
   //地区
   .icon {
     width: 40rpx;
     height: 40rpx;
-    background: #498ef5;
+    background: #D6E9FC;
     border-radius: 50%;
     font-weight: 500;
     font-family: PingFang SC;
@@ -99,6 +102,7 @@ export default {
     align-items: center;
     color: #ffffff;
     margin-right: 10rpx;
+    color: #498EF5;
   }
 }
 </style>

+ 26 - 10
src/otherPages/classifyOrder/index.vue

@@ -22,11 +22,15 @@
                 () => {
                   goExercise({
                     sequeIssueName: item.sequeIssueName,
-                    sequeIssue:item.sequeIssue
+                    sequeIssue: item.sequeIssue,
                   });
                 }
               "
             >
+              <image
+                style="width: 22rpx; height: 26rpx;padding-right:6rpx;"
+                src="https://ct.zzxcx.net/ctjk/mp-wx/classifyOrder/yuyin.png"
+              ></image>
               语音讲解
             </div>
             <div
@@ -34,12 +38,16 @@
                 () => {
                   goExerciseExam({
                     sequeIssueName: item.sequeIssueName,
-                    sequeIssue:item.sequeIssue
+                    sequeIssue: item.sequeIssue,
                   });
                 }
               "
               class="select-item1 uni-app-fontsize-paragraph"
             >
+              <image
+                style="width: 26rpx; height: 26rpx;padding-right:6rpx;"
+                src="https://ct.zzxcx.net/ctjk/mp-wx/classifyOrder/danxiang.png"
+              ></image>
               单项测试
             </div>
           </div>
@@ -72,6 +80,7 @@ export default {
   },
   methods: {
     goExercise(extraQuery) {
+  
       let query = Object.assign({}, this.query);
       if (extraQuery) {
         query = {
@@ -117,7 +126,7 @@ export default {
 </script>
 <style>
 .custom-right-cell {
-  flex: 1.2 !important;
+  flex: 1.8 !important;
 }
 </style>
 
@@ -145,29 +154,36 @@ export default {
     display: flex;
     flex-direction: row;
     color: white;
-   
 
     .select-item0 {
       padding: 0 18rpx;
-      background: #498ef5;
+      background: #d6e9fc;
       margin-right: 20rpx;
       border-radius: 8rpx;
       white-space: nowrap;
-      font-size: 30rpx;
+      font-size: 32rpx;
+      color: #498ef5;
+      height: 60rpx;
+      line-height: 60rpx;
+      border-radius: 50rpx;
     }
 
     .select-item1 {
       padding: 0 18rpx;
-      background: #06bd5e;
+      background: #d1f5eb;
       white-space: nowrap;
       border-radius: 8rpx;
-      font-size: 30rpx;
+      font-size: 32rpx;
+      color: #01c18d;
+      height: 60rpx;
+      line-height: 60rpx;
+      border-radius: 50rpx;
     }
   }
   .icon {
     width: 40rpx;
     height: 40rpx;
-    background: #498ef5;
+    background: #d6e9fc;
     border-radius: 50%;
     font-weight: 500;
     font-family: PingFang SC;
@@ -175,7 +191,7 @@ export default {
     display: flex;
     justify-content: center;
     align-items: center;
-    color: #ffffff;
+    color: #498ef5;
     margin-right: 10rpx;
   }
 }

+ 148 - 92
src/otherPages/mockExamEnd/index.vue

@@ -1,58 +1,77 @@
 <template>
-  <view>
-    <div class="result-box" v-if="score >= 90">
-      <img class="img" :src="hege" />
-      <span class="text">恭喜你,测试通过~</span>
-      <div class="fraction-box">
-        <span class="fraction">{{ score }}</span
-        >分
-      </div>
-      <span class="hint">(满分:100;合格:90)</span>
-      <span class="time">用时:{{ useTime }}</span>
-      <span class="evaluation"
-        >天赋异禀、骨骼惊奇,想来是百年难得一见的考试奇才。</span
-      >
+  <view class="bg">
+    <m-nav-bar theme="black"></m-nav-bar>
+    <div class="result-box">
+      <img class="img" v-if="score >= 90" :src="hege" />
+      <img class="img" v-if="score < 90" :src="buhege" />
+      <view class="intro">
+        <div class="fraction-box">
+          <text class="fraction">{{ score }}</text>
+        </div>
+        <view v-if="score >= 90" class="text">恭喜你,测试通过~</view>
+        <view v-if="score < 90" class="text" style="color: red"
+          >抱歉,测试未通过~</view
+        >
+        <view class="hint">(满分:100;合格:90)</view>
+
+        <view class="time">
+          <text class="time-content">用时:{{ useTime }}</text>
+        </view>
+        <view class="evaluation"
+          ><text v-if="score >= 90"
+            >天赋异禀、骨骼惊奇! \n 想来是百年难得一见的考试奇才!</text
+          >
+          <text v-if="score < 90"
+            >学车之路,任重而道远!\n 路漫漫其修远兮,吾将上下而求索。</text
+          >
+        </view>
+        <div class="btn-box">
+          <m-button
+            width="270rpx"
+            height="90rpx"
+            @tap="goExerciseSpecify"
+            class="btn1"
+            text="错题重做"
+          />
+          <m-button
+            width="270rpx"
+            height="90rpx"
+            @tap="refreshTest"
+            class="btn2"
+            text="重新测试"
+          />
+        </div>
+      </view>
     </div>
-    <div class="result-box" v-else>
+    <!-- <div class="result-box" >
       <img class="img" :src="buhege" />
-      <span class="text">抱歉,测试未通过~</span>
-      <div class="fraction-box">
-        <span class="fraction">{{ score  }}</span
-        >分
-      </div>
-      <span class="hint">(满分:100;合格:90)</span>
-      <span class="time">用时:{{ useTime }}</span>
-      <span class="evaluation"
-        >学车之路,任重而道远!路漫漫其修远兮,吾将上下而求索。</span
-      >
-    </div>
-    <div class="btn-box">
-      <m-button
-        width="270rpx"
-        height="90rpx"
-        @tap="goExerciseSpecify"
-        class="btn1"
-        text="错题重做"
-      />
-      <m-button
-        width="270rpx"
-        height="90rpx"
-        @tap="refreshTest"
-        class="btn2"
-        text="重新测试"
-      />
-    </div>
+      <view class="intro">
+        <text class="text">抱歉,测试未通过~</text>
+        <div class="fraction-box">
+          <text class="fraction">{{ score }}</text
+          >分
+        </div>
+        <text class="hint">(满分:100;合格:90)</text>
+        <view class="time">
+          <text class="time-content">用时:{{ useTime }}</text>
+        </view>
+        <text class="evaluation"
+          >学车之路,任重而道远!路漫漫其修远兮,吾将上下而求索。</text
+        >
+      </view>
+    </div> -->
   </view>
 </template>
 <script>
-
 import api from "@/api/index";
 import utils from "@/utils/index";
+import mNavBar from "../../components/m-nav-bar/m-nav-bar.vue";
 export default {
+  components: { mNavBar },
   data() {
     return {
-      hege:"https://ct.zzxcx.net/ctjk/mp-wx/mockExamEnd/%E8%80%83%E8%AF%95%E5%90%88%E6%A0%BC.png",
-      buhege:"https://ct.zzxcx.net/ctjk/mp-wx/mockExamEnd/%E8%80%83%E8%AF%95%E4%B8%8D%E5%90%88%E6%A0%BC.png",
+      hege: "https://ct.zzxcx.net/ctjk/mp-wx/mockExamEnd/smile.png",
+      buhege: "https://ct.zzxcx.net/ctjk/mp-wx/mockExamEnd/sad.png",
       score: 0,
       useTime: "",
       subject: 1,
@@ -83,12 +102,12 @@ export default {
       });
     },
     goExerciseSpecify() {
-      if(!this.query.questionIds){
+      if (!this.query.questionIds) {
         uni.showToast({
-          title:"没有错题",
-          icon:"none"
-        })
-        return
+          title: "没有错题",
+          icon: "none",
+        });
+        return;
       }
       uni.navigateTo({
         url:
@@ -123,58 +142,92 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+.bg {
+  background-image: url("https://ct.zzxcx.net/ctjk/mp-wx/mockExamEnd/bg.png");
+}
 .result-box {
   display: flex;
   flex-direction: column;
   align-items: center;
-  padding: 60rpx 30rpx;
+  padding: 30rpx 30rpx;
   .img {
-    width: 246px;
-    height: 216px;
-  }
-  .text {
-    margin-top: 23px;
-    font-size: 15px;
-    font-family: PingFang SC;
-    font-weight: 400;
-    color: #5c6066;
-    line-height: 23px;
+    width: 624rpx;
+    height: 529rpx;
+    position: absolute;
+    top: 0;
   }
-  .fraction-box {
-    font-size: 15px;
-    font-family: PingFang SC;
-    font-weight: bold;
-    color: #8a9099;
-    line-height: 23px;
-    margin-top: 30px;
-    .fraction {
-      font-size: 60px;
+  .intro {
+    width: 100%;
+    display: inline-block;
+    flex-wrap: wrap;
+    background: #fff;
+    border-radius: 20rpx;
+    height: 906rpx;
+    margin-top: 224rpx;
+    .text {
+      font-size: 15px;
+      font-family: PingFang SC;
+      font-weight: 400;
+      color: #01c18d;
+      line-height: 23px;
+      text-align: center;
+    }
+    .fraction-box {
+      font-size: 15px;
       font-family: PingFang SC;
       font-weight: bold;
-      color: #ff4d53;
+      color: #8a9099;
+      margin-top: 30px;
+      width: 100%;
+      text-align: center;
+      margin-top: 220rpx;
+      height: auto;
+      .fraction {
+        font-size: 87rpx;
+        font-family: PingFang SC;
+        font-weight: bold;
+        color: #ff4d53;
+      }
+    }
+    .hint {
+      font-size: 13px;
+      font-family: PingFang SC;
+      font-weight: 400;
+      color: #8a9099;
+      line-height: 23px;
+      width: 100%;
+      text-align: center;
+    }
+    .time {
+      border-radius: 10rpx;
+      width: 100%;
+      text-align: center;
+      margin-top: 30rpx;
+      .time-content {
+        font-size: 30rpx;
+        font-family: PingFang SC;
+        font-weight: 400;
+        color: #498ef5;
+        line-height: 60rpx;
+        text-align: center;
+        color: #498ef5;
+        border-radius: 15rpx;
+        background: #e4eefe;
+        padding: 20rpx 60rpx;
+        width: auto;
+      }
+    }
+
+    .evaluation {
+      margin-top: 30px;
+      font-size: 15px;
+      font-family: PingFang SC;
+      font-weight: 400;
+      color: #5c6066;
+      line-height: 23px;
+      width: 100%;
+      text-align: center;
     }
-  }
-  .hint {
-    font-size: 13px;
-    font-family: PingFang SC;
-    font-weight: 400;
-    color: #8a9099;
-    line-height: 23px;
-  }
-  .time {
-    font-size: 13px;
-    font-family: PingFang SC;
-    font-weight: 400;
-    color: #498ef5;
-    line-height: 23px;
-  }
-  .evaluation {
-    margin-top: 30px;
-    font-size: 15px;
-    font-family: PingFang SC;
-    font-weight: 400;
-    color: #5c6066;
-    line-height: 23px;
   }
 }
 .btn-box {
@@ -188,11 +241,14 @@ export default {
   font-family: PingFang SC;
   font-weight: 400;
   line-height: 23px;
+  margin-top: 90rpx;
   .btn1 {
     background-color: #498ef5;
+    border-radius: 40rpx;
   }
   .btn2 {
     background-color: #01c18d;
+    border-radius: 40rpx;
   }
 }
 </style>

+ 21 - 26
src/otherPages/selectRulePaper/index.vue

@@ -1,27 +1,19 @@
 <template>
-  <view style="display: flex">
+  <view style="display:flex">
     <image class="bg" mode="widthFix" :src="bg"></image>
     <view class="buttons">
-      <view
-        @click="
-          goExerciseMi({
-            category: 3,
-             title:'新规秘卷一'
-          })
-        "
-        class="buttons-left"
-        >进入秘卷一</view
-      >
-      <view
-        @click="
-          goExerciseMi({
-            category: 4,
-            title:'新规秘卷二'
-          })
-        "
-        class="buttons-right"
-        >进入秘卷二</view
-      >
+      <view @click="
+        goExerciseMi({
+          category: 3,
+          title: '新规秘卷一'
+        })"  class="buttons-left">进入秘卷一
+        </view>
+      <view @click="
+        goExerciseMi({
+          category: 4,
+          title: '新规秘卷二'
+        })
+      " class="buttons-right">进入秘卷二</view>
     </view>
   </view>
 </template>
@@ -32,7 +24,7 @@ import utils from "@/utils/index";
 export default {
   data() {
     return {
-      bg: "https://ct.zzxcx.net/ctjk/mp-wx/selectRulePaper/selectrulePaperBg.png",
+      bg: "https://ct.zzxcx.net/ctjk/mp-wx/selectRulePaper/selectrulePaperBg1.png",
       query: {},
     };
   },
@@ -62,16 +54,18 @@ export default {
 .bg {
   width: 100%;
 }
+
 .buttons {
   position: absolute;
-  top: 875rpx;
+  top: 1044rpx;
   width: 100%;
-  padding: 0 76rpx;
+  padding: 0 91rpx;
   display: flex;
   justify-content: space-between;
+
   .buttons-left {
-    width: 287rpx;
-    height: 90rpx;
+    width: 274rpx;
+    height: 86rpx;
     background: linear-gradient(0deg, #df262a, #c3060a, #e33135);
     border-radius: 45rpx;
     color: #fff;
@@ -80,6 +74,7 @@ export default {
     align-items: center;
     justify-content: center;
   }
+
   .buttons-right {
     width: 287rpx;
     height: 90rpx;

+ 6 - 0
src/pages.json

@@ -474,6 +474,12 @@
         "path": "pages/user/index",
         "name": "用户" 
 
+      },
+      {
+        "path": "otherPages/mockExamEnd/index",
+        "name": "考试结束",
+        "query":"score=0&useTime=0:1&questionIds=&type=exam&cert=C1/C2/C3&vehicle=轿车&subject=1&title=模拟考试&liceCar=1&liceTruck=&liceBus=&liceMoto=&name=科目一&gs=xc&sort=3"
+
       },
       {
         "path":"otherPages/mockExam/index",