From 4f252443f566f21e3fce80aaa74ad8dce4d3f50c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=84=86=E7=9A=AE=E9=B8=AD?= <1003092440@qq.com>
Date: Sat, 19 Aug 2023 17:44:10 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/App.vue                             |   2 +
 src/jtools/api/login.js                 |   2 +-
 src/jtools/api/question.js              |  10 +
 src/jtools/store/question.js            |  12 +-
 src/pages/index/components/Subject1.vue |   9 +-
 src/pages/index/index.vue               | 304 +-----------------------
 6 files changed, 31 insertions(+), 308 deletions(-)
 create mode 100644 src/jtools/api/question.js

diff --git a/src/App.vue b/src/App.vue
index a257c09..01475db 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,9 +1,11 @@
 <script>
 import useUserStore from '@/jtools/store/user'
+import useQuestionStore from '@/jtools/store/question' //引入store
 export default {
   onLaunch: function () {
     useUserStore().queryVipList()
     if(useUserStore().isLogin) {
+			useQuestionStore().getQuestionList()
       useUserStore().getUserInfo()
       useUserStore().searchUserVip()
     }
diff --git a/src/jtools/api/login.js b/src/jtools/api/login.js
index 181e52a..ca2d3ca 100644
--- a/src/jtools/api/login.js
+++ b/src/jtools/api/login.js
@@ -30,4 +30,4 @@ export function getInfo() {
     url: 'driver-api/tdSysUser/info',
     method: 'get',
   });
-}
\ No newline at end of file
+}
diff --git a/src/jtools/api/question.js b/src/jtools/api/question.js
new file mode 100644
index 0000000..e41a574
--- /dev/null
+++ b/src/jtools/api/question.js
@@ -0,0 +1,10 @@
+import request from '../request/index.js';
+
+
+export function queryQuestion(data) {
+  return request({
+    url: 'driver-api/tdQuestion/queryQuestion',
+    method: 'POST',
+    data,
+  });
+}
\ No newline at end of file
diff --git a/src/jtools/store/question.js b/src/jtools/store/question.js
index 81f771f..403c057 100644
--- a/src/jtools/store/question.js
+++ b/src/jtools/store/question.js
@@ -1,18 +1,24 @@
 import { defineStore } from 'pinia';
 import http from '@/jtools/request/index';
-import constants from '@/jtools/constants';
+import { queryQuestion } from '@/jtools/api/question';
 import storage from '@/jtools/storage';
 
 const question = defineStore({
   id: 'question',
   state: () => ({
+		currentCartype: storage.get('carType') || '1001',
     orderQuestionList: [], //顺序做题
   }),
 
   actions: {
 	  // 获取顺序做题
-    getQuestionList(arr) {
-     this.orderQuestionList=[...arr]
+    getQuestionList() {
+			console.log(11111);
+     queryQuestion({carTypeId:this.currentCartype,subject:'1'}).then(res=>{
+			 if(res.code=='0000'){
+				 this.orderQuestionList=res.data
+			 }
+		 })
     },
 		}
 });
diff --git a/src/pages/index/components/Subject1.vue b/src/pages/index/components/Subject1.vue
index 953aebc..599434d 100644
--- a/src/pages/index/components/Subject1.vue
+++ b/src/pages/index/components/Subject1.vue
@@ -73,7 +73,7 @@
 		<view style="padding: 0 28rpx;margin-top: 30rpx;" @tap="toClass">
 			<view class="video-box">
 				<view class="flex jc-sb ai-c wp100">
-					<text style="color: #05C341;font-size: 36rpx;">科一精品视频课</text>
+					<text style="color: #05C341;font-size: 36rpx;">科{{type==1?'一':'四'}}精品视频课</text>
 					<text class="cor-666 fs12">全部10节课 ></text>
 				</view>
 				<view class="flex ai-c mt20">
@@ -82,7 +82,7 @@
 						<u-button :customStyle="{width:'200rpx',height:'66rpx',borderRadius: '33rpx'}" iconColor="#fff"
 							text="去看视频" color="linear-gradient(90deg, #11DF20 0%, #00B74F 100%)" icon="play-circle">
 						</u-button>
-						<view class="cor-333 fs15 fw600 mt10">科一易错试题</view>
+						<view class="cor-333 fs15 fw600 mt10">科{{type==1?'一':'四'}}易错试题</view>
 					</view>
 				</view>
 
@@ -93,6 +93,11 @@
 
 <script>
 	export default {
+		props:{
+			type:{
+				type:[String,Number],
+			}
+		},
 		data() {
 			return {}
 		},
diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue
index 2070e32..40eaa94 100644
--- a/src/pages/index/index.vue
+++ b/src/pages/index/index.vue
@@ -5,7 +5,7 @@
 		  </u-sticky>
 			<view style="height: 100vh;background-color: rgb(245, 245, 245);">
 				<template v-if="tIndex===0 || tIndex===3">
-					 <Subject1 />
+					 <Subject1 :type="tIndex+1" />
 				</template>
 				<template v-else>
 					<subject2 />
@@ -38,314 +38,14 @@
 			};
 		},
 	 onLoad() {
-		 this.getAllQuestion()
 	 },
 	 methods:{
-		 ...mapActions(useQuestionStore, ['getQuestionList']), //映射action
 		 //切换科目
 		 changeCategory(val){
 			 this.tIndex=val.index
 			 console.log(this.tIndex);
 		 },
-		 //获取全部题库
-		 getAllQuestion(){
-			 const arr = [{
-			   questionId: 0,
-			   questionTypeDesc: '单选',
-			   questionDesc: '第一题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			   optionList: [{
-			     op: 'A',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'B',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'C',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'D',
-			     opDesc: '注意新手标志'
-			   }],
-			   rightOp: 'C',
-			 }, {
-			   questionId: 1,
-			   questionTypeDesc: '单选',
-			   questionDesc: '第二题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			   optionList: [{
-			     op: 'A',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'B',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'C',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'D',
-			     opDesc: '注意新手标志'
-			   }],
-			   rightOp: 'B',
-			 }, {
-			   questionId: 2,
-			   questionTypeDesc: '单选',
-			   questionDesc: '第三题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			   optionList: [{
-			     op: 'A',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'B',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'C',
-			     opDesc: '注意新手标志'
-			   }, {
-			     op: 'D',
-			     opDesc: '注意新手标志'
-			   }],
-			   rightOp: 'A',
-			 },
-			   {
-			     questionId: 3,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第四题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 4,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第5题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   },
-			   {
-			     questionId: 5,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第6题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 6,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第7题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 7,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第8题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 8,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第9题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'C',
-			   }, {
-			     questionId: 9,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第10题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'B',
-			   }, {
-			     questionId: 10,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第11题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   },
-			   {
-			     questionId: 11,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第12题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 12,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第13题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   },
-			   {
-			     questionId: 13,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第14题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 14,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第15题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }, {
-			     questionId: 15,
-			     questionTypeDesc: '单选',
-			     questionDesc: '第16题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-			     optionList: [{
-			       op: 'A',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'B',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'C',
-			       opDesc: '注意新手标志'
-			     }, {
-			       op: 'D',
-			       opDesc: '注意新手标志'
-			     }],
-			     rightOp: 'A',
-			   }
-			 ]
-			 this.getQuestionList(arr)
-		 },
-	 }
+		}
 	}
 </script>
 

From a90c28f6fdd4b09a820065897485b32d5376aeab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=84=86=E7=9A=AE=E9=B8=AD?= <1003092440@qq.com>
Date: Sun, 20 Aug 2023 01:59:40 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .env.development                              |   4 +-
 src/App.vue                                   |   2 +-
 src/jtools/store/question.js                  |  42 +-
 src/pages.json                                |   7 +
 src/pages/index/components/Subject1.vue       |  46 +-
 src/pages/index/testRoom.vue                  | 100 +++++
 .../questionBank/components/Question.vue      | 402 ++++--------------
 src/pages/questionBank/questionBank.vue       |  11 +-
 src/pages/questionBank/videoDetail.vue        |  53 ++-
 src/static/image/index/green_bg.png           | Bin 0 -> 14995 bytes
 src/static/image/index/orange_bg.png          | Bin 0 -> 13920 bytes
 11 files changed, 307 insertions(+), 360 deletions(-)
 create mode 100644 src/pages/index/testRoom.vue
 create mode 100644 src/static/image/index/green_bg.png
 create mode 100644 src/static/image/index/orange_bg.png

diff --git a/.env.development b/.env.development
index 5b6f2bd..5968371 100644
--- a/.env.development
+++ b/.env.development
@@ -5,7 +5,7 @@ VITE_APP_TITLE = 金武联驾校
 VITE_APP_ENV = 'development'
 
 # 金武联驾校/开发环境
-VITE_APP_BASE_API = 'http://118.31.23.45:8888/'
+VITE_APP_BASE_API = 'http://192.168.1.2:8888/'
 
 # 
-VITE_WEB_BASE_URL = 'http://118.31.23.45:8888/'
+VITE_WEB_BASE_URL = 'http://192.168.1.2:8888/'
diff --git a/src/App.vue b/src/App.vue
index 01475db..430980b 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -5,7 +5,7 @@ export default {
   onLaunch: function () {
     useUserStore().queryVipList()
     if(useUserStore().isLogin) {
-			useQuestionStore().getQuestionList()
+			useQuestionStore().getOrderQuestion('1')
       useUserStore().getUserInfo()
       useUserStore().searchUserVip()
     }
diff --git a/src/jtools/store/question.js b/src/jtools/store/question.js
index 403c057..1018b56 100644
--- a/src/jtools/store/question.js
+++ b/src/jtools/store/question.js
@@ -1,26 +1,32 @@
-import { defineStore } from 'pinia';
+import {
+	defineStore
+} from 'pinia';
 import http from '@/jtools/request/index';
-import { queryQuestion } from '@/jtools/api/question';
+import {
+	queryQuestion
+} from '@/jtools/api/question';
 import storage from '@/jtools/storage';
 
 const question = defineStore({
-  id: 'question',
-  state: () => ({
+	id: 'question',
+	state: () => ({
 		currentCartype: storage.get('carType') || '1001',
-    orderQuestionList: [], //顺序做题
-  }),
+		orderQuestion: [], //顺序做题
+	}),
 
-  actions: {
-	  // 获取顺序做题
-    getQuestionList() {
-			console.log(11111);
-     queryQuestion({carTypeId:this.currentCartype,subject:'1'}).then(res=>{
-			 if(res.code=='0000'){
-				 this.orderQuestionList=res.data
-			 }
-		 })
-    },
-		}
+	actions: {
+		// 获取顺序做题
+		getOrderQuestion(val) {
+			queryQuestion({
+				carTypeId: this.currentCartype,
+				subject: val
+			}).then(res => {
+				if (res.code == '0000') {
+					this.orderQuestion = res.data
+				}
+			})
+		},
+	}
 });
 
-export default question;
+export default question;
\ No newline at end of file
diff --git a/src/pages.json b/src/pages.json
index e0757ac..bd9bae1 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -124,6 +124,13 @@
 		    "navigationBarTitleText": "章节练习",
 		    "enablePullDownRefresh": false
 		  }
+		},
+		{
+		  "path": "pages/index/testRoom",
+		  "style": {
+		    "navigationBarTitleText": "考场实况",
+		    "enablePullDownRefresh": false
+		  }
 		}
   ],
 
diff --git a/src/pages/index/components/Subject1.vue b/src/pages/index/components/Subject1.vue
index d9f264d..01f0f2d 100644
--- a/src/pages/index/components/Subject1.vue
+++ b/src/pages/index/components/Subject1.vue
@@ -4,19 +4,23 @@
 			<image style="width: 100%;" src="../../static/image/index/index_bg.jpg"></image>
 			<view class="center-box flex jc-sb ai-c">
 				<view class="box-item flex ai-c jc-c">
-					<view class="btn-item flex ai-c jc-c">
-						<view class="text-center cor-fff" style="line-height: 40rpx;" @tap="toAnswer('顺序答题')">
-							<view class="fs16">顺序练习</view>
-							<text class="fs14">0/2344</text>
-						</view>
+					<view class="flex jc-c ai-c" style="width: 230rpx;height: 230rpx;background-image: url(../../../static/image/index/green_bg.png);background-size: 100% 100%;">
+							<view class="btn-item flex ai-c jc-c">
+								<view class="text-center cor-fff" style="line-height: 40rpx;" @tap="toAnswer('顺序答题')">
+									<view class="fs16">顺序练习</view>
+									<text class="fs14">{{rightList.length+wrongList.length}}/{{orderQuestion.length}}</text>
+								</view>
+							</view>
 					</view>
 				</view>
 				<view class="box-item flex ai-c jc-c">
-					<view class="btn2-item flex ai-c jc-c">
-						<view class="text-center cor-fff" style="line-height: 40rpx;" @tap="toExams">
-							<view class="fs16">模拟考试</view>
-							<text class="fs14">去考试</text>
-						</view>
+					<view class="flex jc-c ai-c" style="width: 230rpx;height: 230rpx;background-image: url(../../../static/image/index/orange_bg.png);background-size: 100% 100%;">
+							<view class="btn2-item flex ai-c jc-c">
+								<view class="text-center cor-fff" style="line-height: 40rpx;" @tap="toExams">
+									<view class="fs16">模拟考试</view>
+									<text class="fs14">去考试</text>
+								</view>
+							</view>
 					</view>
 				</view>
 			</view>
@@ -47,7 +51,7 @@
 						<view class="mt5">专项练习</view>
 					</view>
 				</view>
-				<view class="wp33 flex ai-c jc-c">
+				<view class="wp33 flex ai-c jc-c" @tap="toTestRoom">
 					<view class="text-center wp100">
 						<image style="width: 72rpx;height: 72rpx;margin: 0 auto;"
 							src="../../static/image/index/realicon.png"></image>
@@ -92,6 +96,9 @@
 </template>
 
 <script>
+	import { mapState,mapActions } from 'pinia' //引入映射函数
+	import storage from '@/jtools/storage';
+	import useQuestionStore from '@/jtools/store/question' //引入store
 	export default {
 		props:{
 			type:{
@@ -99,9 +106,24 @@
 			}
 		},
 		data() {
-			return {}
+			return {
+				rightList:storage.get('rightList'),
+				wrongList:storage.get('wrongList'),
+				allQuestionNum:0,
+			}
+		},
+		onLoad(){
+			// this.allQuestionNum=useQuestionStore().orderQuestion.length
+		},
+		computed: {
+			...mapState(useQuestionStore, ["orderQuestion"]) //映射函数,取出tagslist
 		},
 		methods: {
+			toTestRoom(){
+				uni.navigateTo({
+					url:"/pages/index/testRoom"
+				})
+			},
 			toVip(){
 				uni.navigateTo({
 					url:"/pages/index/videoVip"
diff --git a/src/pages/index/testRoom.vue b/src/pages/index/testRoom.vue
new file mode 100644
index 0000000..5fe318b
--- /dev/null
+++ b/src/pages/index/testRoom.vue
@@ -0,0 +1,100 @@
+<template>
+	<view>
+		<u-sticky bgColor="#fff">
+		  <u-tabs :list="categoryList" :scrollable="false" @click="changeCategory"></u-tabs>
+		</u-sticky>
+		<view class="p14">
+			<view class="flex ai-c" v-if="carTypeList&&carTypeList.length">
+				<view class="car_item mr10" v-for="(item,index) of carTypeList" :key="index" @tap="chooseCar(item.value)" :class="item.value===tCar?'checked_car':'unchecked_car'">{{item.label}}</view>
+			</view>
+			<view class="flex p14 bc-fff" style="border-radius: 16rpx;" v-for="(item,index) of videoList" :key="index" @tap="toDetail">
+				<image class="pic" src="../../static/image/index/index_bg.png"></image>
+				<view class="ml10" style="width: calc(100% - 320rpx);">
+					<text class="fs16 cor-000 fw600">八一考场</text>
+					<view class="fs14 mt40 cor-666 flex jc-sb ai-c wp100" >
+						<text>共9条路线视频</text>
+						<text>蜀山区</text>
+					</view>
+				</view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data(){
+			return{
+				tCar:0,
+				categoryList:[{
+					name:'全部'
+				},{
+					name:'蜀山区'
+				},{
+					name:'长丰县'
+				},{
+					name:'瑶海区'
+				},{
+					name:'肥东县'
+				},{
+					name:'庐江县'
+				}],
+				carTypeList:[],
+				videoList:[{
+					label:"111"
+				},{
+					label:'222'
+				},{
+					label:'333'
+				},{
+					label:'444'
+				}]
+			}
+		},
+		methods:{
+			chooseCar(val){
+				this.tCar=val
+			},
+			changeCategory(val){
+				
+			},
+			toDetail(){
+				uni.navigateTo({
+					url:'/pages/questionBank/videoDetail?type=test'
+				})
+			}
+		}
+		}
+</script>
+
+<style scoped>
+	::v-deep .u-tabs__wrapper__nav__line {
+			background: linear-gradient(90deg, #11DF20 0%, #00B74F 100%) !important;
+			bottom: 14rpx !important;
+		}
+		.car_item{
+			font-size: 28rpx;
+			padding:0 34rpx;
+		  height: 58rpx;
+			line-height: 58rpx;
+			border-radius: 29rpx;
+		}
+		.checked_car{
+			background-color: #05C341;
+			color: #fff;
+		}
+		.unchecked_car{
+			border: 1px solid #DDD;
+			color: #666;
+			box-sizing: border-box;
+		}
+		.pic{
+			width: 300rpx;
+			height: 169rpx;
+			background: #00B74F;
+			border-radius: 8rpx;
+		}
+		::v-deep .u-tabs__wrapper__nav__item{
+			padding: 0 !important;
+		}
+</style>
\ No newline at end of file
diff --git a/src/pages/questionBank/components/Question.vue b/src/pages/questionBank/components/Question.vue
index 25b5e61..d51f7b3 100644
--- a/src/pages/questionBank/components/Question.vue
+++ b/src/pages/questionBank/components/Question.vue
@@ -5,23 +5,23 @@
 				<view class="type_item" v-for="(item,index) of tabsList" :key="index" :class="tCurrent==item.value?'checked':'unchecked'" @tap="sectionChange(item.value)">{{item.label}}</view>
       </view>
     </view>
-    <swiper class="swiper mt20" :current="swiperIndex" :duration="duration" :autoplay="false" :disable-programmatic-animation="true"	@change="onChange" @animationfinish="onAnimationfinish" @touchend="touchEnd" >
+   <swiper class="swiper mt20" :current="swiperIndex" :duration="duration" :autoplay="false" :disable-programmatic-animation="true"	@change="onChange" @animationfinish="onAnimationfinish" @touchend="touchEnd" >
       <swiper-item v-for="(quesItem,quesIndex) in swiperList" :key="quesIndex">
         <scroll-view scroll-y="true" class="swiper-scroll">
           <view>
             <view class="m14lr">
-              <text class="tag_box">{{quesItem.questionTypeDesc}}</text>
-              <text class="fs18">{{quesItem.questionDesc}}</text>
+              <text class="tag_box">{{getQuestType(quesItem.type)}}</text>
+              <text class="fs18">{{quesItem.question}}</text>
             </view>
             <view class="flex m14lr ai-c mt20" v-for="(item,index) in quesItem.optionList"
-                  :key="item.op" @tap="answerQues(item.op,index)">
+                  :key="item.op" @tap="answerQues(item.opValue,index)">
               <template
-                  v-if="quesItem.clickAnswer&&item.op===quesItem.rightOp">
-                <u-icon class="mr15" name="checkmark-circle-fill" color="#05C341" size="30"></u-icon>
+                  v-if="quesItem.clickAnswer&&quesItem.trueAnswer.includes(item.opValue)">
+                <u-icon class="mr15" name="checkmark-circle-fill" color="#05C341" size="32"></u-icon>
               </template>
               <template
-                  v-else-if="quesItem.clickAnswer===item.op&&item.op!==quesItem.rightAnswer">
-                <u-icon class="mr15" name="close-circle-fill" color="red" size="30"></u-icon>
+                  v-else-if="quesItem.clickAnswer&&quesItem.clickAnswer.includes(item.opValue)&&!quesItem.trueAnswer.includes(item.opValue)">
+                <u-icon class="mr15" name="close-circle-fill" color="red" size="32"></u-icon>
               </template>
               <template v-else-if="!item.chooseOption">
                 <view class="option_item">{{item.op}}</view>
@@ -29,17 +29,17 @@
               <text class="fs18">{{item.opDesc}}</text>
             </view>
             <view class="m14lr mt30"
-                  v-if="quesItem.clickAnswer&&quesItem.clickAnswer!==quesItem.rightOp || tCurrent===1">
+                  v-if="quesItem.clickAnswer&&!quesItem.trueAnswer.includes(quesItem.clickAnswer) || tCurrent===1">
               <view class="answer_box">
-                <text class="fs18 fw600 cor-000">答案:{{quesItem.rightOp}}</text>
-                <view class="fs18 cor-000" style="text-indent:2em;"> 这里是相关解释文字,这里是相关解释文字相关解释文字</view>
+                <text class="fs18 fw600 cor-000">答案:{{getRightOp(quesItem.trueAnswer)}}</text>
+                <view class="fs18 cor-000" style="text-indent:2em;"> {{quesItem.bestAnswer}}</view>
               </view>
             </view>
           </view>
         </scroll-view>
       </swiper-item>
     </swiper>
-		<view class="wp100 flex jc-sb ai-c p14 bc-fff" v-if="isShowAll" style="position: fixed;bottom: 0;left: 0;">
+		 <view class="wp100 flex jc-sb ai-c p14 bc-fff" v-if="isShowAll" style="position: fixed;bottom: 0;left: 0;">
 			<view style="width: 220rpx;">
 				<button v-if="type==='practice'" class="btn">四步学科一</button>
 				<view v-else class="btn" style="text-align: center;" @tap="submitPaper">
@@ -219,7 +219,7 @@ export default {
 			rightList:[],
 			wrongList:[],
 			collectList:storage.get('collectList') || [],
-      questionList: [],//数据源
+      questionList: [{isCollect:true}],//数据源
       swiperList: [], // 轮播图数据列表
       swiperIndex: 0, // 轮播图当前位置
       isChange: false, // 是否切换
@@ -228,10 +228,33 @@ export default {
     }
   },
   onLoad() {
-    this.getQuestionList()
     this.renderSwiper(0)
   },
   methods: {
+		//获取正确选项
+		getRightOp(val){
+			let rightOp=''
+			this.questionList[this.topicIndex].optionList.forEach(item=>{
+				if(this.questionList[this.topicIndex].trueAnswer.includes(item.opValue)){
+					if(rightOp){
+						rightOp=rightOp+'、'+item.op
+					}else{
+						rightOp=item.op
+					}
+				}
+			})
+			return rightOp
+		},
+		//获取题类型
+		getQuestType(val){
+			if(val=='1'){
+				return '判断'
+			}else if(val=='2'){
+				return '单选'
+			}else if(val=='3'){
+				return '多选'
+			}
+		},
 		//开通VIP
 		toVip(){
 			this.showVip=true
@@ -364,22 +387,37 @@ export default {
       this.topicIndex = index;
       this.renderSwiper(index);
     },
+		isArrEqual(arr1, arr2){
+		    return arr1.length === arr2.length && arr1.every((ele) => arr2.includes(ele));
+		},
     //答题
     answerQues(op, index) {
-      if (!this.questionList[this.topicIndex].clickAnswer) {
-        this.questionList[this.topicIndex].optionList[index].chooseOption = op
-        this.questionList[this.topicIndex].clickAnswer = op
-      }
+				const falseList =storage.get('wrongList') || []
+				const trueList =storage.get('rightList') || []
+				if (!this.questionList[this.topicIndex].clickAnswer) {
+				  this.questionList[this.topicIndex].optionList[index].chooseOption =`${this.questionList[this.topicIndex].optionList[index].chooseOption?this.questionList[this.topicIndex].optionList[index].chooseOption:''}${op}`
+				  this.questionList[this.topicIndex].clickAnswer = `${this.questionList[this.topicIndex].optionList[index].clickAnswer?this.questionList[this.topicIndex].optionList[index].clickAnswer:''}${op}`
+				}
       if(this.tCurrent!==1){
-        if(this.questionList[this.topicIndex].clickAnswer===this.questionList[this.topicIndex].rightOp){
+				const arr1=this.questionList[this.topicIndex].clickAnswer.split('')
+				const arr2=this.questionList[this.topicIndex].trueAnswer.split('')
+        if(this.isArrEqual(arr1,arr2)){
 					if(!this.rightList.includes(this.questionList[this.topicIndex].questionId)){
 						this.rightList.push(this.questionList[this.topicIndex].questionId)
 					}
-					console.log(this.rightList);
+					if(!trueList.includes(this.questionList[this.topicIndex].questionId)){
+						trueList.push(this.questionList[this.topicIndex].questionId)
+						storage.set('rightList',trueList)
+					}
 					if(this.wrongList.includes(this.questionList[this.topicIndex].questionId)){
 						const wIndex=this.wrongList.indexOf(this.questionList[this.topicIndex].questionId)
 						this.wrongList.splice(wIndex,1)
 					}
+					if(falseList.includes(this.questionList[this.topicIndex].questionId)){
+						const wIndex=falseList.indexOf(this.questionList[this.topicIndex].questionId)
+						  falseList.splice(wIndex,1)
+							storage.set('wrongList',falseList)
+					}
           if(this.topicIndex<this.questionList.length-1){
             this.topicIndex ++;
 						this.qIndex=this.topicIndex
@@ -403,6 +441,15 @@ export default {
 					if(!this.wrongList.includes(this.questionList[this.topicIndex].questionId)){
 						this.wrongList.push(this.questionList[this.topicIndex].questionId)
 					}
+					if(!falseList.includes(this.questionList[this.topicIndex].questionId)){
+						falseList.push(this.questionList[this.topicIndex].questionId)
+						storage.set('wrongList',falseList)
+					}
+					if(trueList.includes(this.questionList[this.topicIndex].questionId)){
+						const rIndex=trueList.indexOf(this.questionList[this.topicIndex].questionId)
+						  trueList.splice(rIndex,1)
+							storage.set('wrongList',trueList)
+					}
 				}
       }
     },
@@ -411,309 +458,18 @@ export default {
       this.getQuestionList()
       this.renderSwiper(0)
     },
-    getQuestionList() {
-      this.questionList = [{
-        questionId: 0,
-        questionTypeDesc: '单选',
-        questionDesc: '第一题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-        optionList: [{
-          op: 'A',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'B',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'C',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'D',
-          opDesc: '注意新手标志'
-        }],
-        rightOp: 'C',
-      }, {
-        questionId: 1,
-        questionTypeDesc: '单选',
-        questionDesc: '第二题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-        optionList: [{
-          op: 'A',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'B',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'C',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'D',
-          opDesc: '注意新手标志'
-        }],
-        rightOp: 'B',
-      }, {
-        questionId: 2,
-        questionTypeDesc: '单选',
-        questionDesc: '第三题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-        optionList: [{
-          op: 'A',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'B',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'C',
-          opDesc: '注意新手标志'
-        }, {
-          op: 'D',
-          opDesc: '注意新手标志'
-        }],
-        rightOp: 'A',
-      },
-        {
-          questionId: 3,
-          questionTypeDesc: '单选',
-          questionDesc: '第四题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 4,
-          questionTypeDesc: '单选',
-          questionDesc: '第5题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        },
-        {
-          questionId: 5,
-          questionTypeDesc: '单选',
-          questionDesc: '第6题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 6,
-          questionTypeDesc: '单选',
-          questionDesc: '第7题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 7,
-          questionTypeDesc: '单选',
-          questionDesc: '第8题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 8,
-          questionTypeDesc: '单选',
-          questionDesc: '第9题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'C',
-        }, {
-          questionId: 9,
-          questionTypeDesc: '单选',
-          questionDesc: '第10题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'B',
-        }, {
-          questionId: 10,
-          questionTypeDesc: '单选',
-          questionDesc: '第11题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        },
-        {
-          questionId: 11,
-          questionTypeDesc: '单选',
-          questionDesc: '第12题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 12,
-          questionTypeDesc: '单选',
-          questionDesc: '第13题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        },
-        {
-          questionId: 13,
-          questionTypeDesc: '单选',
-          questionDesc: '第14题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 14,
-          questionTypeDesc: '单选',
-          questionDesc: '第15题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }, {
-          questionId: 15,
-          questionTypeDesc: '单选',
-          questionDesc: '第16题,在实习期内驾驶机动车的,应当在车身后部粘贴或者悬挂哪种标志?',
-          optionList: [{
-            op: 'A',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'B',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'C',
-            opDesc: '注意新手标志'
-          }, {
-            op: 'D',
-            opDesc: '注意新手标志'
-          }],
-          rightOp: 'A',
-        }
-      ]
-      if(this.tCurrent===1){
-        this.questionList=this.questionList.map(item=>{
-          return{
-            ...item,
-            clickAnswer:item.rightOp
-          }
-        })
-      }
+    getQuestionList(val) {
+			console.log(val);
+			this.questionList=val.map(item=>{
+				let isCollect=false
+				if(this.collectList.includes(item.questionId)){
+					isCollect=true
+				}
+				return {
+					isCollect:isCollect,
+					...item
+				}
+			})
     }
   }
 }
diff --git a/src/pages/questionBank/questionBank.vue b/src/pages/questionBank/questionBank.vue
index 7b48fdf..08cf2d9 100644
--- a/src/pages/questionBank/questionBank.vue
+++ b/src/pages/questionBank/questionBank.vue
@@ -3,7 +3,7 @@
 		<!-- <u-navbar :title="navTitle" @rightClick="rightClick" :autoBack="true">
 		</u-navbar> -->
 		<j-navbar>{{navTitle}}</j-navbar>
-		<Question :tabsList="tabsList" :isShowAll="true" />
+			<Question ref="question" :tabsList="tabsList" :isShowAll="true"></Question>
 		</view>
 		</template>
 
@@ -27,16 +27,21 @@
 				},{
 					label:"背题",
 					value:1
-				}]
+				}],
+				questionArr:[]
 			}
 		},
 		onLoad(op) {
 			if(op&&op.navTitle){
 				this.navTitle=op.navTitle
+				if(this.navTitle==='顺序答题'){
+					this.questionArr=[...this.orderQuestion]
+					this.$refs.question.getQuestionList(this.questionArr)
+				}
 			}
 		},
 		computed: {
-			...mapState(useQuestionStore, ["orderQuestionList"]) //映射函数,取出tagslist
+			...mapState(useQuestionStore, ["orderQuestion"]) //映射函数,取出tagslist
 		},
 		methods: {
 			rightClick() {
diff --git a/src/pages/questionBank/videoDetail.vue b/src/pages/questionBank/videoDetail.vue
index 755c73a..a463c08 100644
--- a/src/pages/questionBank/videoDetail.vue
+++ b/src/pages/questionBank/videoDetail.vue
@@ -2,12 +2,18 @@
 	<view>
 		<sunny-video style="width: 100%" videoHeight="422rpx" ref="sunny-video" title="测试视频" src="https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/%E7%AC%AC1%E8%AE%B2%EF%BC%88uni-app%E4%BA%A7%E5%93%81%E4%BB%8B%E7%BB%8D%EF%BC%89-%20DCloud%E5%AE%98%E6%96%B9%E8%A7%86%E9%A2%91%E6%95%99%E7%A8%8B@20200317.mp4" @timeupdate="timeupdate" />
 		<view class="p14 bc-fff">
+		<u-scroll-list :indicator="false" v-if="videoType=='test'">
+			<view class="flex ai-c jc-sb mt15">
+				<view class="tab_iem mr15" :class="videoIndex===item.value?'checked_tab':''" v-for="(item,index) of testList" :key="index" @tap="checkTest(item.value)">{{item.label}}</view>
+			</view>
+			</u-scroll-list>
 			<view class="flex ai-c jc-sb mt10 wp100">
 				<text class="fs18 fw600 cor-000">C1捷达-基础操作视频讲解</text>
-				<view class="flex" @tap="popupShow=true">
+				<view class="flex" @tap="popupShow=true" v-if="videoType!='test'">
 					<text class="fs14 cor-666">更多</text>
 					<u-icon color="#666" name="arrow-right" size="18"></u-icon>
 				</view>
+				<view v-else class="fs14 cor-666">共9条路线</view>
 			</view>
 			<view>
 			</view>
@@ -53,6 +59,30 @@
 	export default{
 		data(){
 			return{
+				videoIndex:0,
+				testList:[{
+				label:"八一考场",
+				value:0,
+			},{
+				label:"富凯考场",
+				value:1
+			},{
+				label:"新亚考场",
+				value:2
+			},{
+				label:"庐江考场",
+				value:3
+			},{
+				label:"富凯考场",
+				value:4
+			},{
+				label:"新亚考场",
+				value:5
+			},{
+				label:"庐江考场",
+				value:6
+			}],
+				videoType:'',
 				popupShow:false,
 				nowVideo:0,
 				videoList:[{
@@ -82,7 +112,15 @@
 				}]
 			}
 		},
+		onLoad(op){
+			if(op.type){
+				this.videoType=op.type
+			}
+		},
 		methods:{
+			checkTest(val){
+				this.videoIndex=val
+			},
 			checkVideo(val){
 				this.nowVideo=val
 			}
@@ -130,4 +168,17 @@
 		background: #00B74F;
 		border-radius: 8rpx;
 	}
+	.tab_iem{
+		width: 145rpx;
+		height: 56rpx;
+		line-height: 56rpx;
+		text-align: center;
+		background: #F5F5F5;
+		border-radius: 10rpx;
+		color:#333
+		}
+	.checked_tab{
+		background: linear-gradient(90deg, #11DF20 0%, #01B74F 100%);
+		color:#fff
+	}
 </style>
\ No newline at end of file
diff --git a/src/static/image/index/green_bg.png b/src/static/image/index/green_bg.png
new file mode 100644
index 0000000000000000000000000000000000000000..d8e86e4ea5382118465604b247a877b4ed035284
GIT binary patch
literal 14995
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

literal 0
HcmV?d00001

diff --git a/src/static/image/index/orange_bg.png b/src/static/image/index/orange_bg.png
new file mode 100644
index 0000000000000000000000000000000000000000..3ba375d66a67e24c2614fedc86280065f0d5906c
GIT binary patch
literal 13920
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

literal 0
HcmV?d00001