chenxiong 3 lat temu
rodzic
commit
8a0c74c259

+ 2 - 2
App.vue

@@ -18,10 +18,10 @@
 	
 		},
 		onShow: function() {
-
+			
 		},
 		onHide: function() {
-			
+			uni.$emit('playPause')
 		}
 	}
 </script>

+ 17 - 0
common/httpList/course.js

@@ -128,6 +128,14 @@ export default {
 		})
 	},
 	
+	facCertificationImageRecognition(data) {
+		return myRequest({
+			url: '/face/certification/ImageRecognition',
+			method: 'post',
+			data:data
+		})
+	},
+	
 	faceCertificationCompareFace(data) {
 		return myRequest({
 			url: '/face/certification/CompareFace',
@@ -136,6 +144,15 @@ export default {
 		})
 	},
 	
+	gradeCheckGoodsStudy(data) {
+		return myRequest({
+			url: '/grade/grade/checkGoodsStudy',
+			method: 'get',
+			data:data
+		})
+	},
+	
+	
 	
 	
 }

+ 8 - 0
common/httpList/order.js

@@ -91,9 +91,17 @@ export default {
 			method: 'post',
 			data: data
 		})
+	},
+	orderInfo(data) {
+		return myRequest({
+			url: '/order/info',
+			method: 'get',
+			data: data
+		})
 	}
 	
 	
 	
 
+
 }

+ 2 - 2
common/request.js

@@ -5,8 +5,8 @@ import api from './api.js'
 var num = 1
 //接口api   
 // export const BASE_URL = 'https://api.xyyxt.net'   //release
-// export const BASE_URL = 'http://120.79.166.78:19009'   //预发布
-export const BASE_URL = 'http://42.192.164.187:19005'    //test
+export const BASE_URL = 'http://120.79.166.78:19009'   //预发布
+// export const BASE_URL = 'http://42.192.164.187:19005'    //test 
 // export const BASE_URL = 'http://192.168.1.222:5055'    //dev
 
  //图片上传api

+ 28 - 7
components/course/courseChapter.vue

@@ -9,6 +9,7 @@
       <view v-for="(itemM, indexM) in list" :key="indexM">
         <view v-if="itemM.type != 2">
           <courseSection
+						:orderGoodsId="orderGoodsId"
             :sectionMaxNum="sectionMaxNum"
             :preItem="list[indexM - 1] || preItem"
             :learningOrder="learningOrder"
@@ -73,6 +74,9 @@ import courseSection from "@/components/course/courseSection.vue";
 export default {
   name: "courseChapter",
   props: {
+		orderGoodsId:{
+			default:0
+		},
     preItem: {
       default: undefined,
     },
@@ -202,14 +206,31 @@ export default {
           });
       });
     },
+		gradeCheckGoodsStudy(id) {
+			let moduleId = this.menuItem.moduleId || 0;
+			let chapterId = this.menuItem.chapterId || 0;
+			let sectionId = this.menuItem.sectionId || this.menuItem.menuId;
+			return new Promise(resolve => {
+				this.$api.gradeCheckGoodsStudy({
+					goodsId:this.goodsId,
+					gradeId:this.gradeId,
+					moduleId:this.menuItem.moduleId || 0,
+					chapterId:this.menuItem.chapterId || 0,
+					examId:id,
+				}).then( res => {
+					resolve(res.data.data)
+				})
+			})
+		},
     /**
      * 去做题
      */
     async toDo(id, goodsId = 0, moduleId = 0, chapterId = 0, item, index) {
       let learnNum = await this.goodsTodayStudySectionNum()
+			let hasLearn = await this.gradeCheckGoodsStudy(id);
 
       if(this.sectionMaxNum > 0) {
-      	if(learnNum >= this.sectionMaxNum) {
+      	if(learnNum >= this.sectionMaxNum && !hasLearn) {
       		uni.showToast({
       			icon:'none',
       			title:`每天最多学习${this.sectionMaxNum}节`
@@ -239,7 +260,7 @@ export default {
                 moduleId +
                 "&chapterId=" +
                 chapterId +
-                "",
+                "&orderGoodsId=" + this.orderGoodsId,
             });
             //没有答题次数限制
           } else if (item.answerNum == 0) {
@@ -257,7 +278,7 @@ export default {
                 moduleId +
                 "&chapterId=" +
                 chapterId +
-                "",
+                "&orderGoodsId=" + this.orderGoodsId,
             });
           } else {
             uni.showToast({
@@ -327,7 +348,7 @@ export default {
                 moduleId +
                 "&chapterId=" +
                 chapterId +
-                "",
+                "&orderGoodsId=" + this.orderGoodsId,
             });
             //没有答题次数限制
           } else if (item.answerNum == 0) {
@@ -345,7 +366,7 @@ export default {
                 moduleId +
                 "&chapterId=" +
                 chapterId +
-                "",
+                "&orderGoodsId=" + this.orderGoodsId,
             });
           } else {
             uni.showToast({
@@ -381,7 +402,7 @@ export default {
               moduleId +
               "&chapterId=" +
               chapterId +
-              "",
+              "&orderGoodsId=" + this.orderGoodsId,
           });
           //没有答题次数限制
         } else if (item.answerNum == 0) {
@@ -399,7 +420,7 @@ export default {
               moduleId +
               "&chapterId=" +
               chapterId +
-              "",
+              "&orderGoodsId=" + this.orderGoodsId,
           });
         } else {
           uni.showToast({

+ 4 - 1
components/course/courseModule.vue

@@ -7,7 +7,7 @@
 		</view>
 		<view v-show="!down">
 			<view v-for="(itemM,indexM) in list" :key="indexM">
-				<courseChapter :preItem="list[indexM - 1] || preItem" :sectionMaxNum="sectionMaxNum" :needOpen="needOpen" @playEnd="playEnd($event)" @toDo="toDo($event)" :courseId="courseId" :learningOrder="learningOrder" :goodsId="goodsId" :isBuy="isBuy" :gradeId="gradeId" :isRebuild="isRebuild"  :menuItem="itemM" :levelId="levelId+'-'+itemM.chapterId"></courseChapter>
+				<courseChapter :orderGoodsId="orderGoodsId" :preItem="list[indexM - 1] || preItem" :sectionMaxNum="sectionMaxNum" :needOpen="needOpen" @playEnd="playEnd($event)" @toDo="toDo($event)" :courseId="courseId" :learningOrder="learningOrder" :goodsId="goodsId" :isBuy="isBuy" :gradeId="gradeId" :isRebuild="isRebuild"  :menuItem="itemM" :levelId="levelId+'-'+itemM.chapterId"></courseChapter>
 				<u-line v-if="indexM<list.length-1"></u-line>
 			</view>
 		</view>
@@ -20,6 +20,9 @@ import courseChapter from '@/components/course/courseChapter.vue';
 export default {
 	name: 'courseModule',
 	props: {
+		orderGoodsId:{
+			default:0
+		},
 		preItem:{
 			default:undefined
 		},

+ 56 - 16
components/course/courseSection.vue

@@ -53,6 +53,9 @@ import eventHub from '@/common/eventHub.js'
 export default {
 	name: 'courseSection',
 	props: {
+		orderGoodsId:{
+			default:0
+		},
 		preItem:{
 			default:undefined,
 		},
@@ -184,6 +187,22 @@ export default {
 				})
 			})
 		},
+		gradeCheckGoodsStudy() {
+			let moduleId = this.menuItem.moduleId || 0;
+			let chapterId = this.menuItem.chapterId || 0;
+			let sectionId = this.menuItem.sectionId || this.menuItem.menuId;
+			return new Promise(resolve => {
+				this.$api.gradeCheckGoodsStudy({
+					goodsId:this.goodsId,
+					gradeId:this.gradeId,
+					moduleId:this.menuItem.moduleId || 0,
+					chapterId:this.menuItem.chapterId || 0,
+					sectionId:this.menuItem.sectionId || this.menuItem.menuId
+				}).then( res => {
+					resolve(res.data.data)
+				})
+			})
+		},
 		goodsTodayStudySectionNum() {
 			return new Promise(resolve => {
 				this.$api.goodsTodayStudySectionNum({goodsId:this.goodsId,gradeId:this.gradeId}).then(res => {
@@ -199,27 +218,15 @@ export default {
 			}
 
 			this.clickLock = true;
-			console.log(this.learningOrder,'this.learningOrder')
-			console.log(this.preItem,'this.preItem')
-			let learnNum = await this.goodsTodayStudySectionNum()
 			
-			if(this.sectionMaxNum > 0) {
-				if(learnNum >= this.sectionMaxNum) {
-					uni.showToast({
-						icon:'none',
-						title:`每天最多学习${this.sectionMaxNum}节`
-					})
-					return;
-				}
-			}
 			if(this.learningOrder == 2 && !this.menuItem.isRebuild) { //要按从头到尾顺序学习, 且不是重修课程
 				if(this.preItem) {
 					let rows = await this.studyRecordMenuAllList();
 					let newRows = [];
 					for(let i = 0; i < rows.length; i++ ) {
-						let moduleTrue = (rows[i].moduleId == this.menuItem.menuId) || (rows[i].moduleId == this.menuItem.moduleId)
-						let chapterTrue = rows[i].chapterId == this.menuItem.chapterId;
-						let sectionTrue = rows[i].sectionId == this.menuItem.sectionId;
+						let moduleTrue = rows[i].moduleId == this.menuItem.moduleId || rows[i].moduleId == 0
+						let chapterTrue = rows[i].chapterId == this.menuItem.chapterId || rows[i].chapterId == 0;
+						let sectionTrue = (rows[i].sectionId == this.menuItem.sectionId) || (rows[i].sectionId ==  this.menuItem.menuId);
 						if(moduleTrue && chapterTrue && sectionTrue) {
 							break;
 						} else {
@@ -300,7 +307,7 @@ export default {
 			},3000)
 			
 		},
-		playVideo() {
+		async playVideo() {
 			if(this.menuItem.sectionType==1||this.menuItem.sectionType==3){
 				//录播
 				if(!this.isBuy){
@@ -312,6 +319,22 @@ export default {
 					}
 					
 				}
+				
+				let learnNum = await this.goodsTodayStudySectionNum()
+				let hasLearn = await this.gradeCheckGoodsStudy();
+				
+				console.log(this.sectionMaxNum,'this.sectionMaxNum')
+				console.log(learnNum,'learnNum')
+				if(this.sectionMaxNum > 0) {
+					if(learnNum >= this.sectionMaxNum && !hasLearn) {
+						uni.showToast({
+							icon:'none',
+							title:`每天最多学习${this.sectionMaxNum}节`
+						})
+						this.clickLock = false;
+						return;
+					}
+				}
 				if(!this.menuItem.recordingUrl){
 					uni.showToast({
 						title: '暂无播放地址数据',
@@ -324,6 +347,7 @@ export default {
 					//切换为同一节
 					return
 				} */
+				
 				if(this.playSectionId>0){
 					//切换视频
 					let oldSectionId = this.playSectionId
@@ -351,6 +375,22 @@ export default {
 					this.clickLock = false;
 					return
 				}
+				
+				let learnNum = await this.goodsTodayStudySectionNum()
+				let hasLearn = await this.gradeCheckGoodsStudy();
+				
+				console.log(this.sectionMaxNum,'this.sectionMaxNum')
+				console.log(learnNum,'learnNum')
+				if(this.sectionMaxNum > 0) {
+					if(learnNum >= this.sectionMaxNum && !hasLearn) {
+						uni.showToast({
+							icon:'none',
+							title:`每天最多学习${this.sectionMaxNum}节`
+						})
+						this.clickLock = false;
+						return;
+					}
+				}
 				if(!this.menuItem.liveUrl){
 					uni.showToast({
 						title: '暂无直播地址数据',

+ 4 - 3
pages2/appointment/appointment_success.vue

@@ -2,7 +2,7 @@
 	<view class="safeArea">
 		<view style="padding: 8rpx;">
 			<view class="box1">
-				<view>您所报考的【{{ listData.categoryName }}】专业</view>
+				<view>您所报考的<text v-if="listData.categoryName">【{{ listData.categoryName }}】</text>专业</view>
 				<view class="status">
 					<u-icon name="checkmark-circle" color="#34C759" size="32"></u-icon>
 					<text style="margin-left: 8rpx;">{{ listData.subscribeStatus === 1 ? '考试预约成功' : '预约异常' }}</text>
@@ -40,7 +40,7 @@
 					</view>
 					<view class="list_item">
 						<view class="txt_left">报考专业</view>
-						<view class="txt_right">{{listData.categoryName}}专业</view>
+						<view class="txt_right" v-if="listData.categoryName">{{listData.categoryName}}专业</view>
 					</view>
 					<view class="list_item">
 						<view class="txt_left">考试地点</view>
@@ -77,7 +77,8 @@ export default {
 	data() {
 		return {
 			subscribeId: null,
-			listData: {}
+			listData: {},
+			orderGoodsId:''
 		};
 	},
 	onLoad(option) {

+ 10 - 7
pages2/appointment/index.vue

@@ -62,7 +62,7 @@
 			<view class="tipBox">
 				<view class="title">温馨提示</view>
 				<view class="main">
-					<view class="item">您所报考的{{ listData.major }}专业,</view>
+					<view class="item">您所报考的{{ listData.major || '' }}专业,</view>
 					<view class="item">考试次数已经用完。</view>
 					<view class="item">需要预约考试的补考学员,</view>
 					<view class="item">请先购买补考机会。</view>
@@ -85,7 +85,7 @@ export default {
 			radiolist: [{ name: '1', label: '非补考学员' }, { name: '2', label: '补考学员' }],
 			goodsId: 0,
 			gradeId: 0,
-			orderGoodsId:0,
+			orderGoodsId:"",
 			applyStatus: '',
 			listData: {
 				applyStatus: []
@@ -97,14 +97,15 @@ export default {
 	onLoad(option) {
 		this.goodsId = Number(option.goodsId);
 		this.gradeId = Number(option.gradeId);
-		this.orderGoodsId = Number(option.orderGoodsId)
+		this.orderGoodsId = Number(option.orderGoodsId) || ''
 		this.getInfo();
 	},
 	methods: {
 		getInfo() {
 			var data = {
 				goodsId: this.goodsId,
-				gradeId: this.gradeId
+				gradeId: this.gradeId,
+				orderGoodsId:this.orderGoodsId
 			};
 			this.$api.getApplysubscribe(data).then(res => {
 				if (res.data.data.applyStatus) {
@@ -125,7 +126,8 @@ export default {
 				applyId: this.listData.applyId,
 				applyStatus: this.radioInfo,
 				goodsId: this.goodsId,
-				gradeId: this.gradeId
+				gradeId: this.gradeId,
+				orderGoodsId:this.orderGoodsId
 			};
 			this.$api.getApplysubscribeNext(data).then(res => {
 				if (res.data.code === 500) {
@@ -144,7 +146,7 @@ export default {
 						});
 					}
 					if (res.data.data === 3) {
-						this.$api.goodsList({ makeGoodsId: this.goodsId,goodsType:3 }).then(res => {
+						this.$api.goodsList({ makeGoodsId: this.goodsId,goodsType:3,orderGoodsId:this.orderGoodsId }).then(res => {
 							if (res.data.code === 200) {
 								if(res.data.rows.length){
 									console.log(res.data.rows[0].goodsId)
@@ -171,7 +173,8 @@ export default {
 			})
 			this.$navTo.togo('/pages2/order/confirm_list', {
 				id: this.goodsIdBK,
-				isBK:'1'
+				isBK:'1',
+				orderGoodsId:this.orderGoodsId
 			});
 			}
 		}

+ 9 - 8
pages2/bank/collectById.vue

@@ -27,10 +27,10 @@
 					<view class="bt">
 						<view class="left">收藏数<text class="num">{{item.questionNum}}</text></view>
 						<view class="right">
-							<navigator  hover-class="none" :url="'/pages2/subject/collectBank?id='+item.examId">
+							<navigator  hover-class="none" :url="'/pages2/subject/collectBank?orderGoodsId='+orderGoodsId+'&id='+item.examId">
 								<view class="btn">重做</view>
 							</navigator>
-							<navigator  hover-class="none" :url="'/pages2/subject/collectBank?id='+item.examId+'&explain=1'">
+							<navigator  hover-class="none" :url="'/pages2/subject/collectBank?orderGoodsId='+orderGoodsId+'&id='+item.examId+'&explain=1'">
 								<view class="btn">解析</view>
 							</navigator>
 							<!-- <view class="btn">解析</view> -->
@@ -51,10 +51,10 @@
 					<view class="bt">
 						<view class="left">收藏数<text class="num">{{item.num}}</text></view>
 						<view class="right">
-							<navigator  hover-class="none" :url="'/pages2/subject/collectTypeBank?type='+item.type">
+							<navigator  hover-class="none" :url="'/pages2/subject/collectTypeBank?orderGoodsId='+orderGoodsId+'&type='+item.type">
 								<view class="btn">重做</view>
 							</navigator>
-							<navigator  hover-class="none" :url="'/pages2/subject/collectTypeBank?type='+item.type+'&explain=1'">
+							<navigator  hover-class="none" :url="'/pages2/subject/collectTypeBank?orderGoodsId='+orderGoodsId+'&type='+item.type+'&explain=1'">
 								<view class="btn">解析</view>
 							</navigator>
 						</view>
@@ -80,12 +80,13 @@ export default {
 			typeList:[],
 			total:0,
 			goodsid:'',
+			orderGoodsId:'',
 			paperid:''
 		};
 	},
 	onPullDownRefresh() {},
 	onLoad(option) {
-		
+		this.orderGoodsId = option.orderGoodsId || ''
 		this.goodsid = option.goodsid
 		this.examaperList();
 		this.getData();
@@ -109,7 +110,7 @@ export default {
 		goodsCollectExamList() {
 			this.$api.goodsCollectExamList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.testList = res.data 
 				let total = 0;
@@ -123,12 +124,12 @@ export default {
 		collectQuestionTypeList() {
 			this.$api.collectQuestionTypeList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.typeList = res.data 
 				let total = 0;
 				this.typeList.rows.forEach(item => {
-					total += item.questionNum;
+					total += item.num;
 				})
 				
 				this.total = total

+ 1 - 1
pages2/bank/my_question.vue

@@ -73,7 +73,7 @@
 			studyIn(item,index){
 				this.itemIndex = index;
 				uni.navigateTo({
-					url:'/pages2/bank/question_detail?id='+item.goodsId
+					url:'/pages2/bank/question_detail?id='+item.goodsId+'&orderGoodsId='+item.orderGoodsId
 				})
 			},
 			

+ 18 - 4
pages2/bank/questionBank.vue

@@ -535,10 +535,12 @@ export default {
 			isFromVideo:'',
 			gradeId:'',
 			examData:{},
+			orderGoodsId:'',
 			cgType: 0 //对应设计稿弹窗编码
 		};
 	},
 	async onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId || 0
 		this.current = +option.current || 0
 		this.id = option.id;
 		this.goodsId = option.goodsid;
@@ -599,7 +601,7 @@ export default {
 			app.globalData.bankData = this.$data;
 			clearInterval(this.timer);
 			uni.navigateTo({
-				url: '/pages2/bank/questionBank?id=' + this.id + '&goodsid=' + this.goodsId + '&isback=true'
+				url: '/pages2/bank/questionBank?id=' + this.id + '&goodsid=' + this.goodsId + '&isback=true&orderGoodsId='+this.orderGoodsId
 			});
 		} else {
 			//点击返回按钮确认允许退出,记录答题记录
@@ -892,6 +894,7 @@ export default {
 				.examRecordEdit({
 					examId: this.id,
 					goodsId: this.goodsId,
+					orderGoodsId:this.orderGoodsId,
 					reportStatus:reportStatus,
 					recordId: this.recordId,
 					rightQuestionNum: number,
@@ -916,6 +919,7 @@ export default {
 				
 				//错题集id提交(客观题)
 				this.$api.examWrongRecord({
+					orderGoodsId:this.orderGoodsId,
 						moduleExamId:this.moduleId || 0,
 						chapterExamId:this.chapterId || 0,
 						examId: this.id,
@@ -1035,6 +1039,7 @@ export default {
 
 				this.$api
 					.examRecordEdit({
+						orderGoodsId:this.orderGoodsId,
 						examId: this.id,
 						goodsId: this.goodsId,
 						recordId: this.recordId,
@@ -1068,6 +1073,7 @@ export default {
 				this.$api
 					.examRecord({
 						chapterExamId: this.chapterId || 0,
+						orderGoodsId:this.orderGoodsId,
 						moduleExamId: this.moduleId || 0,
 						examId: this.id,
 						goodsId: this.goodsId,
@@ -1243,6 +1249,7 @@ export default {
 			if (this.questionList[bindex].ques != this.questionList[bindex].ans) {
 				this.$api
 					.examWrongRecord({
+						orderGoodsId:this.orderGoodsId,
 						examId: this.id,
 						goodsId: this.goodsId,
 						moduleExamId:this.moduleId || 0,
@@ -1325,6 +1332,7 @@ export default {
 			if (isWrong) {
 				this.$api
 					.examWrongRecord({
+						orderGoodsId:this.orderGoodsId,
 						examId: this.id,
 						goodsId: this.goodsId,
 						moduleExamId:this.moduleId || 0,
@@ -1383,6 +1391,7 @@ export default {
 			if (this.questionList[bindex].ques != this.questionList[bindex].ans) {
 				this.$api
 					.examWrongRecord({
+						orderGoodsId:this.orderGoodsId,
 						examId: this.id,
 						goodsId: this.goodsId,
 						moduleExamId:this.moduleId || 0,
@@ -1437,7 +1446,8 @@ export default {
 				.getCollectInfo({
 					examId: this.id,
 					questionId: this.questionList[current].questionId,
-					goodsId: this.goodsId
+					goodsId: this.goodsId,
+					orderGoodsId:this.orderGoodsId,
 				})
 				.then(res => {
 					if (res.data.code == 500) {
@@ -1619,6 +1629,7 @@ export default {
 					reportStatus:reportStatus,
 					recordId: this.recordId,
 					rightQuestionNum: number,
+					orderGoodsId:this.orderGoodsId,
 					status: 1,
 					moduleExamId:this.moduleId || 0,
 					chapterExamId:this.chapterId || 0,
@@ -1642,7 +1653,7 @@ export default {
 
 						setTimeout(() => {
 							uni.redirectTo({
-								url: '/pages2/bank/question_report?goodsId='+this.goodsId+'&chapterId='+this.chapterId+'&moduleId='+this.moduleId+'&examId='+this.id+'&id=' + this.recordId
+								url: '/pages2/bank/question_report?goodsId='+this.goodsId+'&chapterId='+this.chapterId+'&moduleId='+this.moduleId+'&examId='+this.id+'&id=' + this.recordId + '&orderGoodsId='+this.orderGoodsId
 							});
 						}, 1000);
 					}
@@ -1652,6 +1663,7 @@ export default {
 				this.$api.examWrongRecord({
 						examId: this.id,
 						goodsId: this.goodsId,
+						orderGoodsId:this.orderGoodsId,
 						questionIds: doWrongQuestionIds,
 						recordId: this.recordId
 					}).then(res => { 
@@ -1670,7 +1682,8 @@ export default {
 					.collectQuestion({
 						examId: this.id,
 						questionId: this.questionList[index].questionId,
-						goodsId: this.goodsId || ''
+						goodsId: this.goodsId || '',
+						orderGoodsId:this.orderGoodsId,
 					})
 					.then(res => {
 						if (res.data.code == 200) {
@@ -1814,6 +1827,7 @@ export default {
 			var self = this;
 			return new Promise((resolve, reject) => {
 				var data = {
+					orderGoodsId:this.orderGoodsId,
 					imageStatus: int
 				};
 				self.$api.aliyunpolicy(data).then(res => {

+ 14 - 4
pages2/bank/questionBankContinue.vue

@@ -466,10 +466,12 @@ export default {
 			moduleId:'',
 			isSubmit:false,
 			examData:{},
+			orderGoodsId:'',
 			cgType: 0 //对应设计稿弹窗编码
 		};
 	},
 	onLoad(option){
+		this.orderGoodsId = option.orderGoodsId || ''
 		this.id = option.id || '';
 		this.goodsId = option.goodsid || '';
 		this.chapterId = option.chapterId || '';
@@ -511,7 +513,8 @@ export default {
 					.collectQuestion({
 						examId: this.id,
 						questionId: this.questionList[index].questionId,
-						goodsId: this.goodsId || ''
+						goodsId: this.goodsId || '',
+						orderGoodsId:this.orderGoodsId
 					})
 					.then(res => {
 						if (res.data.code == 200) {
@@ -659,7 +662,8 @@ export default {
 				.getCollectInfo({
 					examId: this.id,
 					questionId: this.questionList[current].questionId,
-					goodsId: this.goodsId
+					goodsId: this.goodsId,
+					orderGoodsId:this.orderGoodsId
 				})
 				.then(res => {
 					if (res.data.code == 500) {
@@ -736,6 +740,7 @@ export default {
 					examId:this.id,
 					doQuestionIds:doQuestionIds.join(''),
 					goodsId:this.goodsId,
+					orderGoodsId:this.orderGoodsId,
 					recordId: this.recordId,
 					rightQuestionNum:number,
 					status:0,
@@ -901,6 +906,7 @@ export default {
 			this.$api.examRecordEdit({
 				examId:this.id,
 				goodsId:this.goodsId,
+				orderGoodsId:this.orderGoodsId,
 				reportStatus:reportStatus,
 				totalScore:allScore,
 				recordId: this.recordId,
@@ -925,7 +931,7 @@ export default {
 					
 					setTimeout(() => {
 						uni.redirectTo({
-							url:'/pages2/bank/question_report?id='+this.recordId+'&examId='+this.id
+							url:'/pages2/bank/question_report?orderGoodsId='+this.orderGoodsId+'&id='+this.recordId+'&examId='+this.id
 						})
 					},2000)
 				}
@@ -936,7 +942,8 @@ export default {
 					examId: this.id,
 					goodsId: this.goodsId,
 					questionIds: doWrongQuestionIds,
-					recordId: this.recordId
+					recordId: this.recordId,
+					orderGoodsId:this.orderGoodsId
 				}).then(res => { 
 					
 				});
@@ -1156,6 +1163,7 @@ export default {
 				.examRecordEdit({
 					examId: this.id,
 					goodsId: this.goodsId,
+					orderGoodsId:this.orderGoodsId,
 					reportStatus:reportStatus,
 					recordId: this.recordId,
 					rightQuestionNum: number,
@@ -1184,6 +1192,7 @@ export default {
 						chapterExamId:this.chapterId || 0,
 						examId: this.id,
 						goodsId: this.goodsId,
+						orderGoodsId:this.orderGoodsId,
 						questionIds: doWrongQuestionIds,
 						recordId: this.recordId
 					}).then(res => { 
@@ -1293,6 +1302,7 @@ export default {
 			var self = this;
 			return new Promise((resolve, reject) => {
 				var data = {
+					orderGoodsId:this.orderGoodsId,
 					imageStatus: int
 				};
 				self.$api.aliyunpolicy(data).then(res => {

+ 20 - 13
pages2/bank/question_detail.vue

@@ -2,7 +2,7 @@
 	<view>
 		<nav-bar title="进入刷题"></nav-bar>
 		<view class="top">
-			<navigator  hover-class="none" :url="'/pages2/bank/question_statistics?id=' + id">
+			<navigator  hover-class="none" :url="'/pages2/bank/question_statistics?orderGoodsId='+orderGoodsId+'&id=' + id">
 				<view class="left">
 					<view class="title">做题统计</view>
 					<view class="progress">
@@ -32,7 +32,7 @@
 					</view>
 				</view>
 			</navigator>
-			<navigator  hover-class="none" :url="'/pages2/bank/wrongById?goodsid=' + id">
+			<navigator  hover-class="none" :url="'/pages2/bank/wrongById?orderGoodsId='+orderGoodsId+'&goodsid=' + id">
 				<view class="right">
 					<view class="title">
 						错题集
@@ -41,7 +41,7 @@
 					<view class="number">{{ goodsCount.wrongNum || '0' }}</view>
 				</view>
 			</navigator>
-			<navigator  hover-class="none" :url="'/pages2/bank/collectById?goodsid=' + id">
+			<navigator  hover-class="none" :url="'/pages2/bank/collectById?orderGoodsId='+orderGoodsId+'&goodsid=' + id">
 				<view class="right">
 					<view class="title">
 						收藏集
@@ -128,6 +128,7 @@ export default {
 			goodsCount: {
 				totalNum: 0
 			},
+			orderGoodsId:'',
 			firstEnter:true,
 		};
 	},
@@ -136,6 +137,7 @@ export default {
 	},
 	computed: { ...mapGetters(['userInfo']) },
 	onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId
 		this.id = option.id;
 		this.getDetail();
 		// this.goodsBankList();
@@ -153,7 +155,7 @@ export default {
 		 */
 		continueDo(recordId,examId,goodsId,chapterId = 0,moduleId = 0) {
 			uni.navigateTo({
-				url:'/pages2/bank/questionBankContinue?recordId=' +recordId +'&id=' +examId +'&goodsid=' +goodsId +'&chapterId='+chapterId+'&moduleId='+moduleId
+				url:'/pages2/bank/questionBankContinue?orderGoodsId='+this.orderGoodsId+'&recordId=' +recordId +'&id=' +examId +'&goodsid=' +goodsId +'&chapterId='+chapterId+'&moduleId='+moduleId
 			})
 		},
 		/**
@@ -182,7 +184,7 @@ export default {
 			    success: (res) => {
 			        if (res.confirm) {
 						uni.navigateTo({
-							url:'/pages2/bank/questionBank?id=' +examId +'&goodsid=' +goodsId +'&moduleId='+moduleId+'&chapterId=' +chapterExamId
+							url:'/pages2/bank/questionBank?orderGoodsId='+this.orderGoodsId+'&id=' +examId +'&goodsid=' +goodsId +'&moduleId='+moduleId+'&chapterId=' +chapterExamId
 						})
 			        } else if (res.cancel) {
 						uni.navigateTo({
@@ -190,7 +192,8 @@ export default {
 									'&goodsid=' + goodsId +
 									'&moduleId=' + moduleId +
 									'&chapterId=' + chapterExamId +
-									'&recordId='+ recordId
+									'&recordId='+ recordId+
+									'&orderGoodsId='+this.orderGoodsId
 							
 						})
 			            console.log('查看上次答题');
@@ -203,6 +206,7 @@ export default {
 		 */
 		goodsBank() {
 			this.$api.goodsBank({
+				orderGoodsId:this.orderGoodsId,
 				goodsId: this.id
 			}).then(res => {
 				this.bankList = res.data.data;
@@ -257,7 +261,7 @@ export default {
 			}
 
 			uni.navigateTo({
-				url: '/pages2/bank/questionBank?id=' + id + '&goodsid=' + goodsId + '&moduleId=' + moduleId + '&chapterId=' + chapterId + ''
+				url: '/pages2/bank/questionBank?orderGoodsId='+this.orderGoodsId+'&id=' + id + '&goodsid=' + goodsId + '&moduleId=' + moduleId + '&chapterId=' + chapterId + ''
 			});
 		},
 
@@ -269,7 +273,7 @@ export default {
 				this.$api
 					.examRecordCount({
 						examId: examId,
-						goodsId: this.id
+						orderGoodsId: this.orderGoodsId
 					})
 					.then(res => {
 						resolve(res.data.data);
@@ -291,7 +295,7 @@ export default {
 		 * 获取用户商品统计数据
 		 */
 		goodsBankQuestionNum() {
-			this.$api.goodsBankQuestionNum(this.id).then(res => {
+			this.$api.goodsBankQuestionNum(this.orderGoodsId).then(res => {
 				this.goodsCount = res.data.data;
 			});
 		},
@@ -309,7 +313,7 @@ export default {
 		getCollectNum() {
 			this.$api
 				.goodsCollectExamList({
-					goodsId: this.id
+					orderGoodsId: this.orderGoodsId
 				})
 				.then(res => {
 					let total = 0;
@@ -323,7 +327,7 @@ export default {
 		getWrongNum() {
 			this.$api
 				.wrongRecordList({
-					goodsId: this.id
+					orderGoodsId: this.orderGoodsId
 				})
 				.then(res => {
 					let total = 0;
@@ -343,7 +347,8 @@ export default {
 			this.$api
 				.goodsChapterList({
 					moduleExamId: id,
-					goodsId:this.id
+          orderGoodsId: this.orderGoodsId,
+					goodsId: this.id
 				})
 				.then(res => {
 					this.$set(this.bankList[index], 'showList', true);
@@ -360,8 +365,9 @@ export default {
 				this.$api
 					.bankExamExamList({
 						moduleExamId:moduleExamId,
+          orderGoodsId: this.orderGoodsId,
 						chapterExamId: id,
-						goodsId:this.id
+						goodsId: this.id
 					})
 					.then(res => {
 						this.$set(this.bankList[index1].list[index2], 'showList', true);
@@ -376,6 +382,7 @@ export default {
 				this.$api
 					.bankExamExamList({
 						moduleExamId:moduleExamId,
+          orderGoodsId: this.orderGoodsId,
 						chapterExamId: id,
 						goodsId: this.id
 					})

+ 2 - 2
pages2/bank/question_record.vue

@@ -137,13 +137,13 @@ export default {
 	methods: {
 		questionBankExplain(record) {
 			uni.navigateTo({
-				url:'/pages2/bank/questionBankExplain?id='+record.examId +'&goodsid='+record.goodsId+'&moduleId='+record.moduleExamId+'&chapterId='+record.chapterExamId
+				url:'/pages2/bank/questionBankExplain?id='+record.examId +'&goodsid='+record.goodsId+'&moduleId='+record.moduleExamId+'&chapterId='+record.chapterExamId+'&orderGoodsId='+record.orderGoodsId
 				
 			})
 		},
 		questionReport(record) {
 			uni.navigateTo({
-				url:'/pages2/bank/question_report?goodsId='+record.goodsId+'&chapterId='+record.chapterExamId+'&moduleId='+record.moduleExamId+'&examId='+record.examId+'&id=' + record.recordId
+				url:'/pages2/bank/question_report?goodsId='+record.goodsId+'&chapterId='+record.chapterExamId+'&moduleId='+record.moduleExamId+'&examId='+record.examId+'&id=' + record.recordId+'&orderGoodsId='+record.orderGoodsId
 			})
 		},
 		/**

+ 3 - 3
pages2/bank/question_record_list.vue

@@ -38,7 +38,7 @@ export default {
 			goodsData: {},
 			param: {
 				moduleExamId:0,
-				chapterId:0,
+				chapterExamId:0,
 				examId:0,
 				goodsId:0,
 				pageNum: 1,
@@ -93,13 +93,13 @@ export default {
 	methods: {
 		questionBankExplain(record) {
 			uni.navigateTo({
-				url:'/pages2/bank/questionBankExplain?id='+record.examId +'&goodsid='+record.goodsId+'&moduleId='+record.moduleExamId+'&chapterId='+record.chapterExamId
+				url:'/pages2/bank/questionBankExplain?id='+record.examId +'&goodsid='+record.goodsId+'&moduleId='+record.moduleExamId+'&chapterId='+record.chapterExamId+'&orderGoodsId='+record.orderGoodsId
 				
 			})
 		},
 		questionReport(record) {
 			uni.navigateTo({
-				url:'/pages2/bank/question_report?goodsId='+record.goodsId+'&chapterId='+record.chapterExamId+'&moduleId='+record.moduleExamId+'&examId='+record.examId+'&id=' + record.recordId
+				url:'/pages2/bank/question_report?goodsId='+record.goodsId+'&chapterId='+record.chapterExamId+'&moduleId='+record.moduleExamId+'&examId='+record.examId+'&id=' + record.recordId+'&orderGoodsId='+record.orderGoodsId
 			})
 		},
 		addRecord() {

+ 7 - 3
pages2/bank/question_report.vue

@@ -102,6 +102,7 @@ export default {
 			context2: null,
 			nextExamId:'',
 			wrongRecordWrongNum:'',
+			orderGoodsId:'',
 		};
 	},
 	onUnload() {},
@@ -112,6 +113,8 @@ export default {
 		
 		
 	async onLoad(option) {
+		console.log(option)
+		this.orderGoodsId = option.orderGoodsId
 		this.recordId = option.id;
 		this.examId = option.examId;
 		this.moduleId = option.moduleId || 0;
@@ -219,6 +222,7 @@ export default {
 				chapterExamId:this.chapterId,
 				examId:this.examId,
 				goodsId:this.goodsId,
+				orderGoodsId:this.orderGoodsId,
 				moduleExamId:this.moduleId
 			}).then(res => {
 				if(res.data.code == 500) {
@@ -230,7 +234,7 @@ export default {
 		},
 		backBank() {
 			uni.navigateTo({
-				url: '/pages2/bank/questionBank?id=' +this.nextExamId + '&goodsid=' + this.goodsId + '&moduleId=' + this.moduleId + '&chapterId=' + this.chapterId + ''
+				url: '/pages2/bank/questionBank?orderGoodsId='+orderGoodsId+'&id=' +this.nextExamId + '&goodsid=' + this.goodsId + '&moduleId=' + this.moduleId + '&chapterId=' + this.chapterId + ''
 			});
 			
 			// uni.navigateBack({
@@ -265,7 +269,7 @@ export default {
 			var prepage = pages[pages.length - 2]; //上一个页面
 			prepage.$vm.isRepeat = true;
 			uni.redirectTo({
-				url: '/pages2/bank/questionBank?id=' + id + '&goodsid=' + goodsId + '&moduleId=' + moduleId + '&chapterId=' + chapterId + ''
+				url: '/pages2/bank/questionBank?orderGoodsId='+this.orderGoodsId+'&id=' + id + '&goodsid=' + goodsId + '&moduleId=' + moduleId + '&chapterId=' + chapterId + ''
 			});
 		},
 		/**
@@ -295,7 +299,7 @@ export default {
 				this.$api
 					.examRecordCount({
 						examId: examId,
-						goodsId: goodsId
+						orderGoodsId: this.orderGoodsId,
 					})
 					.then(res => {
 						resolve(res.data.data);

+ 14 - 7
pages2/bank/question_statistics.vue

@@ -140,12 +140,14 @@ export default {
 			context1: null,
 			context2: null,
 			caculateX: 0,
-			caculateY: 0
+			caculateY: 0,
+			orderGoodsId:'',
 		};
 	},
 	onUnload() {},
 	computed: { ...mapGetters(['userInfo']) },
 	onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId
 		this.id = option.id;
 		
 	},
@@ -191,7 +193,8 @@ export default {
 		goodsBankDolist() {
 			this.$api
 				.goodsBankDolist({
-					goodsId: this.id
+					goodsId:this.id,
+					orderGoodsId: this.orderGoodsId
 				})
 				.then(res => {
 					console.log(res);
@@ -201,7 +204,8 @@ export default {
 		goodsBankList() {
 			this.$api
 				.goodsBankList({
-					goodsId: this.id
+					goodsId:this.id,
+					orderGoodsId: this.orderGoodsId
 				})
 				.then(res => {
 					console.log(res);
@@ -209,7 +213,7 @@ export default {
 				});
 		},
 		goodsBankQuestionNum() {
-			this.$api.goodsBankQuestionNum(this.id).then(res => {
+			this.$api.goodsBankQuestionNum(this.orderGoodsId).then(res => {
 				this.goodsCount = res.data.data;
 
 				this.context1.beginPath();
@@ -254,7 +258,8 @@ export default {
 
 			this.$api
 				.goodsChapterDolist({
-					goodsId: this.id,
+					goodsId:this.id,
+					orderGoodsId: this.orderGoodsId,
 					moduleExamId: id
 				})
 				.then(res => {
@@ -271,7 +276,8 @@ export default {
 
 				this.$api
 					.goodsExamDolist({
-						goodsId: this.id,
+					goodsId:this.id,
+						orderGoodsId: this.orderGoodsId,
 						moduleExamId: moduleExamId,
 						chapterExamId: id
 					})
@@ -287,7 +293,8 @@ export default {
 
 				this.$api
 					.goodsExamDolist({
-						goodsId: this.id,
+					goodsId:this.id,
+						orderGoodsId: this.orderGoodsId,
 						moduleExamId: moduleExamId,
 						chapterExamId: id
 					})

+ 4 - 2
pages2/bank/wrongById.vue

@@ -81,6 +81,7 @@ export default {
 			goodsid:'',
 			paperid:'',
 			total:0,
+			orderGoodsId:'',
 		};
 	},
 	onPullDownRefresh() {},
@@ -88,6 +89,7 @@ export default {
 		this.getData();
 	},
 	onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId || ''
 		this.goodsid = option.goodsid
 		this.examaperList();
 	},
@@ -110,7 +112,7 @@ export default {
 		wrongRecordList() {
 			this.$api.wrongRecordList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.testList = res.data;
 				let total = 0;
@@ -124,7 +126,7 @@ export default {
 		wrongRecordTypeList() {
 			this.$api.wrongRecordTypeList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.typeList = res.data;
 				

+ 9 - 2
pages2/class/questionBank.vue

@@ -569,6 +569,7 @@ export default {
 			ossAvatarUrl: '',
 			goodsDetail:{},
 			isTakePhoto:false,
+			orderGoodsId:0,
 			isTaking:true, //是否正在拍照
 			needPhoto:false //是否需要拍照
 		};
@@ -581,6 +582,7 @@ export default {
 		this.moduleId = option.moduleId;
 		this.isFromVideo = option.isFromVideo||'';
 		this.gradeId = option.gradeId || '';
+    this.orderGoodsId = Number(option.orderGoodsId);
 		let isBack = option.isback;
 		
 		let showDialog = uni.getStorageSync('showDialog');
@@ -649,7 +651,7 @@ export default {
 			app.globalData.bankData = this.$data;
 			clearInterval(this.timer);
 			uni.navigateTo({
-				url: '/pages2/class/questionBank?id=' + this.id + '&goodsid=' + this.goodsId + '&isback=true'
+				url: '/pages2/class/questionBank?id=' + this.id + '&goodsid=' + this.goodsId + '&isback=true&orderGoodsId='+this.orderGoodsId
 			});
 		} else {
 			//点击返回按钮确认允许退出,交卷
@@ -832,6 +834,7 @@ export default {
 						  orderGoodsId:this.orderGoodsId,
 						  gradeId:this.gradeId
 					  }).then(res => {
+							console.log(res,'res')
 						  resolve(res.data.data)
 					  })
 				  },
@@ -843,7 +846,7 @@ export default {
 		},
 		async submitPhoto() {
 			let compareFaceData = await this.faceRecognition();
-			
+			console.log(compareFaceData,'compareFaceData')
 			if(compareFaceData == 0) {
 				uni.showToast({
 				  title:'人脸匹配不通过,请重新拍照上传',
@@ -1149,6 +1152,7 @@ export default {
 					moduleId:this.moduleId || 0,
 					examId: this.id,
 					goodsId: this.goodsId,
+					orderGoodsId: this.orderGoodsId,
 					recordId:this.recordId,
 					courseId:this.courseId,
 					reportStatus:reportStatus,
@@ -1274,6 +1278,7 @@ export default {
 						gradeId:this.gradeId,
 						examId: this.id,
 						courseId:this.courseId,
+					orderGoodsId: this.orderGoodsId,
 						goodsId: this.goodsId,
 						recordId:this.recordId,
 						performance:score,
@@ -1437,6 +1442,7 @@ export default {
 						moduleExamId: this.moduleId || 0,
 						examId: this.id,
 						goodsId: this.goodsId,
+					orderGoodsId: this.orderGoodsId,
 						gradeId:this.gradeId,
 						totalQuestionNum: questionList,
 						allQuestionNum:this.questionList.length
@@ -1778,6 +1784,7 @@ export default {
 					gradeId:this.gradeId,
 					examId: this.id,
 					goodsId: this.goodsId,
+					orderGoodsId: this.orderGoodsId,
 					reportStatus:reportStatus,
 					recordId: this.recordId,
 					courseId:this.courseId,

+ 1 - 1
pages2/exam/exam_appointment.vue

@@ -16,7 +16,7 @@
 						</view>
 						<view class="item">
 							<view class="left">报考专业</view>
-							<view class="right">{{ item.categoryName }}专业</view>
+							<view class="right" v-if="item.categoryName">{{ item.categoryName }}专业</view>
 						</view>
 						<view class="item">
 							<view class="left">考试地点</view>

+ 66 - 10
pages2/invoice/index.vue

@@ -80,7 +80,7 @@
 						
 						<u-form-item label="选择订单" label-width="150" required prop="orderGoodsIds" right-icon="arrow-right" ref="orderGoodsIds">
 							<view class="form-item" @click="selectOrderModal = true">
-								<u-input placeholder="请选择" disabled  @click="selectOrderModal = true" v-model="form.orderGoodsIds" />
+								<u-input placeholder="请点击选择订单" disabled  @click="selectOrderModal = true" />
 							</view>
 						</u-form-item>
 						<view>
@@ -113,7 +113,7 @@
 				
 				<view class="record__list">
 					<view class="record-item"  @click="showDetailModal(record);" v-for="(record,index) in recordList" :key="index">
-						<view class="item__time">2021/10/29 09:30:00</view>
+						<view class="item__time">{{$method.timestampToTime(record.applyTime,false,false)}}</view>
 						<view class="item__content">
 							<view class="top">
 								<view class="state" :class="{wait:record.periodStatus == 1,refuse:record.periodStatus == 2,agree:record.periodStatus == 3}">
@@ -212,7 +212,7 @@
 				<view class="order-detail__content">
 					<scroll-view scroll-y="true" style="height: 860rpx;">
 						<view class="content">
-							<view class="header">2021年10月29日 09:30:00</view>
+							<view class="header">{{$method.timestampToTime(invoiceDetail.applyTime,false,false)}}</view>
 							<view class="body">
 								<view class="body__item">
 									<view class="title">发票申请信息</view>
@@ -302,7 +302,7 @@
 											<text class="text refuse" v-if="invoiceDetail.invoiceStatus == -1">已退票</text>
 										</u-cell-item>
 										
-										<u-cell-item :border-bottom="false" hover-class="none" :arrow="false" v-if="invoiceDetail.invoiceImg">
+										<u-cell-item :border-bottom="false" hover-class="none" :arrow="false" v-if="invoiceDetail.periodStatus == 3 &&  (invoiceDetail.invoiceStatus == 2 || invoiceDetail.invoiceStatus == -1)  && invoiceDetail.invoiceImg">
 											<view slot="title">发票预览:</view>
 											<view>
 												<image class="preview" @click="previewImg(invoiceDetail)" :src="$method.splitImgHost(invoiceDetail.invoiceImg)"></image>
@@ -311,15 +311,15 @@
 										</u-cell-item>
 										
 										
-										<u-cell-item :border-bottom="false" hover-class="none" :arrow="false" v-if="invoiceDetail.periodStatus == 3 && invoiceDetail.invoiceStatus == 2 && invoiceDetail.type == 2 && invoiceDetail.subject == 2">
+										<u-cell-item :border-bottom="false" hover-class="none" :arrow="false" v-if="invoiceDetail.periodStatus == 3 && (invoiceDetail.invoiceStatus == 2 || invoiceDetail.invoiceStatus == -1) && invoiceDetail.type == 2 && invoiceDetail.subject == 2">
 											<view slot="title">机构发票邮寄状态:</view>
 											<text class="text" v-if="invoiceDetail.sendInvoice == 1">是</text>
 											<text class="text" v-else>否</text>
 										</u-cell-item>
 										
-										<u-cell-item v-if="invoiceDetail.periodStatus == 3 && invoiceDetail.invoiceStatus == 2 && invoiceDetail.sendInvoice == 1 && invoiceDetail.type == 2 && invoiceDetail.subject == 2"  @click.stop="copy(invoiceDetail.trackingNum)" :border-bottom="false" hover-class="none" :arrow="false">
+										<u-cell-item v-if="invoiceDetail.periodStatus == 3 && (invoiceDetail.invoiceStatus == 2 || invoiceDetail.invoiceStatus == -1)  && invoiceDetail.sendInvoice == 1 && invoiceDetail.type == 2 && invoiceDetail.subject == 2"  @click.stop="copy(invoiceDetail.trackingNum)" :border-bottom="false" hover-class="none" :arrow="false">
 												<view slot="title">发票邮寄快递单号:(点击可复制)</view>
-												<text class="text">{{invoiceDetail.trackingNum}}</text>
+												<text class="text">{{invoiceDetail.trackingNum || ''}}</text>
 										</u-cell-item>
 									</view>
 								</view>
@@ -404,6 +404,7 @@ export default {
 						validator: (rule, value, callback) => {
 							// 上面有说,返回true表示校验通过,返回false表示不通过
 							// this.$u.test.mobile()就是返回true或者false的
+							console.log(this.$u.test.mobile(value),'this.$u.test.mobile(value)')
 							return this.$u.test.mobile(value);
 						},
 						message: '手机号码格式不正确',
@@ -433,7 +434,7 @@ export default {
 						message: '请输入发票抬头', 
 						// 可以单个或者同时写两个触发验证方式 
 						trigger: ['change'],
-					}
+					},
 				],
 				taxRegistryNumber: [
 					{ 
@@ -441,6 +442,17 @@ export default {
 						message: '请输入纳税登记号', 
 						// 可以单个或者同时写两个触发验证方式 
 						trigger: ['change'],
+					},
+					{
+						validator: (rule, value, callback) => {
+							// 上面有说,返回true表示校验通过,返回false表示不通过
+							var reg = /(^[0-9A-Z]{15}$)|(^[0-9A-Z]{18}$)|(^[0-9A-Z]{20}$)/;
+							console.log( reg.test(value),' reg.test(value)')
+							return reg.test(value);
+						},
+						message: '发票抬头格式不正确',
+						// 触发器可以同时用blur和change
+						trigger: ['change'],
 					}
 				],
 				companyAddress: [
@@ -457,6 +469,19 @@ export default {
 						message: '请输入电话号码', 
 						// 可以单个或者同时写两个触发验证方式 
 						trigger: ['change'],
+					},
+					{
+						validator: (rule, value, callback) => {
+							var vartest = /^([0-9]{3,4}-)?[0-9]{7,8}$/;
+							var vartest1 = /^([0-9]{3,4})?[0-9]{7,8}$/;
+							if (this.$u.test.mobile(value) || vartest.test(value) || vartest1.test(value)) {
+								return true;
+							} else {
+								return false;
+							}
+						},
+						message: '电话号码不正确',
+						trigger: ['change', 'blur']
 					}
 				],
 				bankName: [
@@ -467,12 +492,26 @@ export default {
 						trigger: ['change'],
 					}
 				],
+				
+				
 				bankAccount: [
 					{ 
 						required: true, 
 						message: '请输入银行账号', 
 						// 可以单个或者同时写两个触发验证方式 
 						trigger: ['change'],
+						
+					},
+					{
+						validator: (rule, value, callback) => {
+							// 上面有说,返回true表示校验通过,返回false表示不通过
+							var reg = /^[1-9]{1}(\d{15}|\d{18})$/;
+							console.log( reg.test(value),' reg.test(value)')
+							return reg.test(value);
+						},
+						message: '银行卡号格式不正确',
+						// 触发器可以同时用blur和change
+						trigger: ['change'],
 					}
 				],
 				receivingAddress: [
@@ -585,6 +624,8 @@ export default {
 		 */
 		formSubmit() {
 			this.$refs.uForm.validate(valid => {
+				console.log(valid,'valid')
+				console.log(this.form,'this.form')
 				if(valid) {
 					
 					if(this.invoicePirce > 10000) {
@@ -626,8 +667,11 @@ export default {
 								receivingTel:'',
 							};
 							this.invoicePirce = 0;
-							uni.showToast({
-								title:'申请成功'
+							uni.showModal({
+								title:'操作提示',
+								content:`您本次的发票申请已经提交成功!\n机构将在3-7个工作日内进行处理,处理结果会在【发票记录】显示,请留意进度。`,
+								showCancel:false,
+								confirmText:'知道了'
 							})
 						} else {
 							uni.showToast({
@@ -661,6 +705,11 @@ export default {
 			
 			if(this.current == 1) {
 				this.orderInvoiceList();
+			} else {
+				this.$nextTick(() => {
+					this.$refs.uForm.setRules(this.rules)
+				})
+				
 			}
 		},
 		
@@ -681,6 +730,13 @@ export default {
 			console.log(e)
 		},
 		copy(str) {
+			if(!str) {
+				uni.showToast({
+					icon:'none',
+					title:'暂时没有可以复制的快递号'
+				})
+				return;
+			}
 			let newStr = String(str)
 			uni.setClipboardData({
 			    data: newStr,

+ 55 - 10
pages2/learn/details.vue

@@ -4,15 +4,15 @@
 		<view class="detailsWrap">
 			<view class="topTitle">
 				<u-icon name="info-circle-fill" style="color:#FF3B30;margin-right:8rpx;"></u-icon>
-				<text>如对审核结果有异议,请勿点击确认重学。</text>
-				<view style="margin-left:34rpx;">致电<text @click="call">020-87085982</text>咨询</view>
+				<text>您的学时审核不通过,不通过原因如下,请查阅,并重学不通过的课程内容。</text>
+				<!-- <view style="margin-left:34rpx;">致电<text @click="call">020-87085982</text>咨询</view> -->
 			</view>
 			<view class="detailsItem" v-for="(item, index) in listData" :key="index">
 				<view class="head">
 					<view class="tap">{{ getTypeName(item.type) }}</view>
 					<view class="title">{{ item.name }}</view>
 				</view>
-				<u-line color="#EEEEEE" />
+				<!-- <u-line color="#EEEEEE" />
 				<view class="info">
 					<view class="item" v-for="(items, indexs) in item.userStudyRecordPhoto" :key="indexs">
 						<view class="imgbox">
@@ -20,15 +20,15 @@
 						</view>
 						<view class="time">{{ $method.timestampToTime(items.createTime, false) }}</view>
 					</view>
-				</view>
+				</view> -->
 				<u-line color="#EEEEEE" />
 				<view class="reason">
 					<view class="label">原因:</view>
-					<view class="val">拍照异常/时间异常</view>
+					<view class="val">{{item.auditReason}}</view>
 				</view>
 			</view>
 		</view>
-		<view class="btn" @click="getBtn">确认重学</view>
+		<view class="btn" @click="getBtn" v-if="rebuildShow">确认已阅读</view>
 	</view>
 </template>
 
@@ -40,16 +40,55 @@ export default {
 		return {
 			goodsId: null,
 			gradeId: null,
-			listData: []
+			listData: [],
+			orderGoodsId:'',
+			rebuildShow:false
 		};
 	},
 	onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId || '';
 		this.goodsId = Number(option.goodsId);
 		this.gradeId = Number(option.gradeId);
 		this.getInfo();
+		this.orderInfo()
 	},
 	onShow() {},
 	methods: {
+		orderInfo() {
+			this.$api.orderInfo({
+				orderGoodsId:this.orderGoodsId
+			}).then(res => {
+				console.log(res)
+				if(res.data.code == 200) {
+					let sysTime = this.$method.timest();
+					console.log(res.data.data.serviceEndTime)
+					console.log(sysTime)
+					
+					if(res.data.data.serviceEndTime && res.data.data.serviceEndTime > +sysTime) { //学习有效期范围内
+						this.rebuildShow = true;
+					} else { //不在学校有效期范围内隐藏
+						this.rebuildShow = false;
+						return;
+					}
+					
+					if(res.data.data.classEndTime) { //配了班级有效期
+						
+						if(res.data.data.classEndTime > +sysTime) { //班级有效期没过期
+							this.rebuildShow = true;
+						} else { //过期
+							this.rebuildShow = false;
+							return;
+						}
+						
+					} else { //没配按学习有效期
+						
+					}
+					
+					
+					
+				}
+			})
+		},
 		seePhoto(option, index) {
 			var arrays = option.map((item, indexs) => {
 				return this.$method.splitImgHost(item.photo) + `?${indexs}`;
@@ -63,7 +102,8 @@ export default {
 			this.$api
 				.getcourseperiodcheat({
 					goodsId: this.goodsId,
-					gradeId: this.gradeId
+					gradeId: this.gradeId,
+					orderGoodsId:this.orderGoodsId
 				})
 				.then(res => {
 					if (res.data.code === 200) {
@@ -82,11 +122,12 @@ export default {
 					if(res.confirm){
 						self.$api.courseperiodrebuild({
 							goodsId: self.goodsId,
-							gradeId: self.gradeId
+							gradeId: self.gradeId,
+							orderGoodsId:self.orderGoodsId
 						}).then(res => {
 							if(res.data.code === 200){
 								uni.redirectTo({
-									url: '/pages2/wd/course?gid='+self.gradeId+'&id=' + self.goodsId
+									url: '/pages2/wd/course?gid='+self.gradeId+'&id=' + self.goodsId+'&orderGoodsId='+ self.orderGoodsId
 								})
 							}
 						})
@@ -193,6 +234,10 @@ page {
 		.label {
 			color: #666666;
 		}
+		
+		.val {
+			flex:1;
+		}
 	}
 }
 .btn {

+ 27 - 11
pages2/learn/my_learn.vue

@@ -55,7 +55,7 @@
 					<view v-if="item.periodStatus !== 2">
 						<u-line color="#EEEEEE" />
 						<view v-if="item.periodStatus === -1">
-							<view class="btnBox"><view class="btn" @click="jumpPage(item, 1,index)">课程学习</view></view>
+							<view class="btnBox"><view class="btn" v-if="!showLearn(item)" @click="jumpPage(item, 1,index)">课程学习</view></view>
 						</view>
 						<view>
 							<view v-if="item.periodStatus === 1 && item.applyStatus === 1">
@@ -73,14 +73,14 @@
 							<u-line color="#EEEEEE" v-if="item.periodStatus === 1 && item.applyStatus === 1" />
 							<view v-if="item.periodStatus === 1 && item.beforeStatus === 1">
 								<view class="subTitle">{{ item.beforeName }}</view>
-								<view class="status">
+								<!-- <view class="status">
 									<view class="label">审核状态:</view>
 									<view class="val green">
 										<text>
 											机构审核通过
 										</text>
 									</view>
-								</view>
+								</view> -->
 								<view class="btnBox"><view class="btn" @click="jumpPage(item, 3,index)">进入刷题</view></view>
 							</view>
 						</view>
@@ -130,14 +130,21 @@ export default {
 			],
 			param:{
 				pageNum:1,
-				pageSize:10
+				pageSize:10,
+				orderGoodsId:''
 			},
 			total:0,
 			itemIndex:'',
-			listData: []
+			listData: [],
+			orderGoodsId:0,
+			sysTime:0
 		};
 	},
 	onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId||''
+		console.log(this.orderGoodsId)
+		this.param.orderGoodsId = option.orderGoodsId||''
+		this.sysTime = +this.$method.timest();
 		this.getcourseperiodlistGoods();
 	},
 	onShow() {
@@ -159,10 +166,16 @@ export default {
 		}
 	},
 	methods: {
+		showLearn(item) {
+			console.log(item.goodsName)
+			console.log(((item.interfacePushId > 0 && item.officialStatus != 1) || this.sysTime <= item.serviceStartTime || this.sysTime >= item.serviceEndTime || (item.classStartTime && this.sysTime <= item.classStartTime) || (item.classEndTime && this.sysTime >= item.classEndTime) || item.learningStatus == 2 || item.classStatus == 0 || (item.learningStatus == 3 && this.sysTime < item.learningTimeStart)))
+			return ((item.interfacePushId > 0 && item.officialStatus != 1) || this.sysTime <= item.serviceStartTime || this.sysTime >= item.serviceEndTime || (item.classStartTime && this.sysTime <= item.classStartTime) || (item.classEndTime && this.sysTime >= item.classEndTime) || item.learningStatus == 2 || item.classStatus == 0 || (item.learningStatus == 3 && this.sysTime < item.learningTimeStart))
+		},
 		refreshByIndex() {
 			this.$api.getcourseperiodlistGoods({
 				pageNum:this.itemIndex + 1,
-				pageSize:1
+				pageSize:1,
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				if (res.data.code === 200) {
 					this.$set(this.listData,this.itemIndex,res.data.rows[0])
@@ -185,7 +198,7 @@ export default {
 			this.itemIndex = index;
 			//int 1.课程学习 2.预约考试 3.进入刷题 4.查看详情 5.重修目录
 			if (int === 1) {
-				this.$navTo.togo(`/pages2/wd/course?id=${v.goodsId}&gid=${v.gradeId}`);
+				this.$navTo.togo(`/pages2/wd/course?id=${v.goodsId}&gid=${v.gradeId}&orderGoodsId=${v.orderGoodsId}`);
 			}
 			if (int === 2) {
 				var data = {
@@ -212,10 +225,11 @@ export default {
 				this.appBeforeAddress(v.goodsId)
 			}
 			if (int === 4) {
-				this.$navTo.togo(`/pages2/learn/details?goodsId=${v.goodsId}&gradeId=${v.gradeId}`);
+
+				this.$navTo.togo(`/pages2/learn/details?goodsId=${v.goodsId}&gradeId=${v.gradeId}&orderGoodsId=${v.orderGoodsId}`);
 			}
 			if (int === 5) {
-				this.$navTo.togo(`/pages2/wd/course?id=${v.goodsId}&gid=${v.gradeId}`);
+				this.$navTo.togo(`/pages2/wd/course?id=${v.goodsId}&gid=${v.gradeId}&orderGoodsId=${v.orderGoodsId}`);
 			}
 		},
 		getUserCertificateList() {
@@ -244,7 +258,8 @@ export default {
 		},
 		appBeforeAddress(goodsId) {
 			this.$api.appBeforeAddress({
-				goodsId
+				goodsId,
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				if(res.data.code == 200) {
 					uni.navigateToMiniProgram({
@@ -270,7 +285,8 @@ export default {
 			this.total = 0;
 			this.param = {
 				pageNum:1,
-				pageSize:10
+				pageSize:10,
+				orderGoodsId:this.orderGoodsId
 			};
 			if(this.current == 0) {
 				this.getcourseperiodlistGoods();

+ 1 - 0
pages2/msg/index.vue

@@ -50,6 +50,7 @@ export default {
 			listData: [],
 			totals: 0,
 			formData: {
+				systemStatusList:'1,2',
 				pageNum: 1,
 				pageSize: 8
 			}

+ 45 - 27
pages2/order/confirm_pay.vue

@@ -128,34 +128,42 @@ export default {
 			this.$api.placeSmallOrder(data).then(res => {
 				console.log(res,'res')
 				if(res.data.code==200){
+					
 					uni.setStorageSync('updateCart',1) //提醒刷新购物车
-					let data = res.data.data
-					uni.showLoading({
-						title:'支付中',
-						mask:true,
-					})
-					uni.requestPayment({
-					    provider: data.provider,
-					    nonceStr: data.nonceStr,
-					    package: data.package,
-					    signType: data.signType,
-					    paySign: data.sign,
-						timeStamp: String(data.timeStamp),
-					    success: function (res) {
-							
+					if(this.totalPrice == 0) { //免费商品
+						uni.redirectTo({
+						    url: `/pages2/order/confirm_success?sn=${res.data.orderSn}&isBk=${self.isBK}`
+						});
+					} else {
+						let data = res.data.data
+						uni.showLoading({
+							title:'支付中',
+							mask:true,
+						})
+						uni.requestPayment({
+						    provider: data.provider,
+						    nonceStr: data.nonceStr,
+						    package: data.package,
+						    signType: data.signType,
+						    paySign: data.sign,
+							timeStamp: String(data.timeStamp),
+						    success: function (res) {
+								
+									uni.hideLoading()
+								self.btnNo = false
+								uni.redirectTo({
+								    url: `/pages2/order/confirm_success?sn=${data.orderSn}&isBk=${self.isBK}`
+								});
+						        console.log('success:' + JSON.stringify(res));
+						    },
+						    fail: function (err) {
 								uni.hideLoading()
-							self.btnNo = false
-							uni.redirectTo({
-							    url: `/pages2/order/confirm_success?sn=${data.orderSn}&isBk=${self.isBK}`
-							});
-					        console.log('success:' + JSON.stringify(res));
-					    },
-					    fail: function (err) {
-							uni.hideLoading()
-							self.btnNo = false
-					        console.log('fail:' + JSON.stringify(err));
-					    }
-					});
+								self.btnNo = false
+						        console.log('fail:' + JSON.stringify(err));
+						    }
+						});
+					}
+					
 				}else if(res.data.code == 510){ //有未支付订单
 					self.hasPaying = true;
 					self.btnNo = false
@@ -174,7 +182,17 @@ export default {
 						console.log(this.fromCart)
 						this.confirmText = "返回购物车";
 					} else {
-						this.confirmText = "继续选课";
+						let type = '';
+						if(this.shoppingCartList.length == 1) {
+							type = this.shoppingCartList[0].goodsType
+						} else {
+							type = this.shoppingCartList[0].goodsType;
+							
+							if(this.shoppingCartList.find(item => item.goodsType != type)) {
+								type = 3;
+							}
+						}
+						this.confirmText = type == 1 ? "继续选课" : type == 2 ? "继续选题" : type == 3 ? "继续选购" :"";
 					}
 					
 				} else {

+ 11 - 10
pages2/order/index.vue

@@ -41,7 +41,8 @@
 									</view>
 								</view>
 								<view style="display: flex;flex-direction: row-reverse;padding: 10rpx 0;">
-									<view class="btn2" v-if="items.refundStatus === 0&&item.orderFrom === 2&&(item.orderStatus === 1 || item.orderStatus === 2 || item.orderStatus === 3)&&(items.goodsType == '1' || items.goodsType == '2')" @click.stop="refund(item.orderSn,items.goodsId)">退款</view>
+									<view class="btn2" v-if="items.refundStatus === 0&&(item.orderFrom === 2 || item.orderFrom === 3)&&(item.orderStatus === 1 || item.orderStatus === 2 || item.orderStatus === 3)&&(items.goodsType == '1' || items.goodsType == '2')" @click.stop="refund(item.orderSn,items.goodsId)">退款</view>
+									<view v-if="items.refundStatus == 2"> 已退款</view>
 								</view>
 							</view>
 						</view>
@@ -60,10 +61,10 @@
 								<text style="color:#ff2d55;font-size: 30rpx;font-weight: bold;">¥{{ item.payPrice }}</text>
 							</view>
 							<view style="display: flex;align-items: center;">
-								<view class="btn2" v-if="item.orderStatus === 0&&item.orderFrom === 2" @click="resumeOrder(item)">继续支付</view>
+								<view class="btn2" v-if="item.orderStatus === 0&&(item.orderFrom === 2 || item.orderFrom === 3)" @click="resumeOrder(item)">继续支付</view>
 								<!-- <view class="btn2" v-if="item.orderStatus === -1 || item.orderStatus === -2" @click="againBuy(item)">重新购买</view> --> 
-								<view class="btn1" v-if="item.orderStatus === -1 || item.orderStatus === -2" @click="delOrder(item)">删除订单</view>
-								<view class="btn1" @click="closeOrder(item)" v-if="item.orderStatus === 0">取消订单</view>
+								<view class="btn1" v-if="(item.orderStatus === -1 || item.orderStatus === -2)&&(item.orderFrom === 2 || item.orderFrom === 3)" @click="delOrder(item)">删除订单</view>
+								<view class="btn1" @click="closeOrder(item)" v-if="item.orderStatus === 0 &&(item.orderFrom === 2 || item.orderFrom === 3)">取消订单</view>
 							</view>
 						</view>
 					</view>
@@ -108,7 +109,7 @@ export default {
 			formData: {
 				status: '0,1',
 				pageNum: 1,
-				pageSize: 5
+				pageSize: 10
 			},
 			pageNum1: 0,
 			pageNum2: 0,
@@ -159,7 +160,7 @@ export default {
 				status: '0,1',
 				pageNum: 1,
 				pageSize: 1,
-				orderStatus:'1,2,3'
+				orderStatus:'1,2,3,4'
 			}).then(res => {
 				if (res.data.code === 200) {
 					this.list[1].count = res.data.total;
@@ -171,7 +172,7 @@ export default {
 				status: '0,1',
 				pageNum: 1,
 				pageSize: 1,
-				orderStatus:'-1,-2,4'
+				orderStatus:'-1,-2'
 			}).then(res => {
 				if (res.data.code === 200) {
 					this.list[2].count = res.data.total;
@@ -333,7 +334,7 @@ export default {
 				}
 			}
 			if (this.current === 1) {
-				this.formData.orderStatus = '1,2';
+				this.formData.orderStatus = '1,2,3,4';
 				if (this.order.length >= this.pageNum2) {
 					return;
 				}
@@ -374,10 +375,10 @@ export default {
 				this.formData.orderStatus = '0';
 			}
 			if (this.current === 1) {
-				this.formData.orderStatus = '1,2,3';
+				this.formData.orderStatus = '1,2,3,4';
 			}
 			if (this.current === 2) {
-				this.formData.orderStatus = '-1,-2,4';
+				this.formData.orderStatus = '-1,-2';
 			}
 			
 			this.order = [];

+ 4 - 3
pages2/subject/collect.vue

@@ -96,12 +96,13 @@ export default {
 			testList:[],
 			typeList:[],
 			goodsid:'',
+			orderGoodsId:'',
 			paperid:''
 		};
 	},
 	onPullDownRefresh() {},
 	onLoad(option) {
-		
+		this.orderGoodsId = option.orderGoodsId || '';
 		this.listGoodsUserQuestion();
 		this.examaperList();
 		this.getData();
@@ -147,7 +148,7 @@ export default {
 		goodsCollectExamList() {
 			this.$api.goodsCollectExamList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.testList = res.data 
 				let total = 0;
@@ -161,7 +162,7 @@ export default {
 		collectQuestionTypeList() {
 			this.$api.collectQuestionTypeList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.typeList = res.data 
 				let total = 0;

+ 3 - 1
pages2/subject/collectBank.vue

@@ -388,10 +388,12 @@ export default {
 			bankList: [],
 			collectList:[],
 			goodsId:'',
-			explain:''
+			explain:'',
+			orderGoodsId:'',
 		};
 	},
 	onLoad(option){
+		this.orderGoodsId = option.orderGoodsId||''
 		this.id = option.id;
 		this.explain = option.explain;
 		

+ 3 - 1
pages2/subject/collectTypeBank.vue

@@ -388,10 +388,12 @@ export default {
 			bankList: [],
 			collectList:[],
 			type:'',
-			explain:''
+			explain:'',
+			orderGoodsId:'',
 		};
 	},
 	onLoad(option){
+		this.orderGoodsId = option.orderGoodsId || '';
 		this.type = option.type;
 		this.explain = option.explain;
 		

+ 4 - 2
pages2/subject/wrong.vue

@@ -95,6 +95,7 @@ export default {
 			goodsid:'',
 			paperid:'',
 			total:0,
+			orderGoodsId:'',
 			modalTop:0,
 		};
 	},
@@ -103,6 +104,7 @@ export default {
 		this.getData();
 	},
 	onLoad(option) {
+		this.orderGoodsId = option.orderGoodsId || ''
 		this.listGoodsUserQuestion();
 		this.examaperList();
 		
@@ -147,7 +149,7 @@ export default {
 		wrongRecordList() {
 			this.$api.wrongRecordList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.testList = res.data;
 				let total = 0;
@@ -161,7 +163,7 @@ export default {
 		wrongRecordTypeList() {
 			this.$api.wrongRecordTypeList({
 				paperId:this.paperid,
-				goodsId:this.goodsid
+				orderGoodsId:this.orderGoodsId
 			}).then(res => {
 				this.typeList = res.data;
 				

+ 2 - 0
pages2/subject/wrongBank.vue

@@ -397,9 +397,11 @@ export default {
 			goodsId:'',
 			examId:'',
 			explain:'',
+			orderGoodsId:'',
 		};
 	},
 	onLoad(option){
+		this.orderGoodsId = option.orderGoodsId;
 		this.id = option.id || '';
 		this.examId = option.examId || '';
 		this.isFromReport = option.isFromReport;

+ 162 - 2
pages2/verify/input.vue

@@ -511,6 +511,8 @@ export default {
 			apply_post_disabled:false,
 			isRequired: false,
 			orderGoodsId:0,
+			veryIdCard:'',
+			veryIdName:'',
 		};
 	},
 	created() {
@@ -593,7 +595,165 @@ export default {
 			this.$set(this.form, 'name', '唐');
 			console.log(this.form.name, 123);
 		},
-		uploadDatas(data) {
+		
+		async uploadDatas(data) {
+			if(this.form.recent_photos && this.form.idcard_face_photo) {
+			uni.downloadFile({
+				url: this.$method.splitImgHost(this.form.idcard_face_photo),
+				success:async (res) => {
+					console.log(res,'res')
+					if (res.statusCode === 200) {
+						let resData = await this.faceCertificationIDCardOCR(1,res.tempFilePath);
+						this.veryIdCard = resData.data.data.IdNum
+						this.veryIdName = resData.data.data.IdName
+						
+						if(this.form.idcard) {
+							if(this.form.idcard != this.veryIdCard) {
+								uni.showModal({
+									title:'提示',
+									content:'输入的身份证号和身份证人像面照片身份证号不匹配',
+									showCancel:false,
+								})
+								this.isUploading = false;
+								return;
+							}
+						}
+						
+						uni.downloadFile({
+							url: this.$method.splitImgHost(this.form.recent_photos),
+							success: (res) => {
+								if (res.statusCode === 200) {
+									console.log('下载成功');
+									let fileSystem = uni.getFileSystemManager();
+										fileSystem.readFile({
+										  filePath: res.tempFilePath,
+										  encoding: 'base64',
+										  position: 0,
+										  success:(res) => {
+											  console.log(res)
+											  let base64 = 'data:image/jpg;base64,' + res.data;
+												let data = {
+													idNum:this.veryIdCard,
+													idName:this.veryIdName,
+													oneInchPhotos:base64
+												}
+												
+												this.$api.facCertificationImageRecognition(data).then(res1 => {
+													if(res1.data.data.sim >= 70) {
+														var self = this;
+														if (self.remarkStatus) {
+															var arsty = {};
+															for (let k in data) {
+																for (let j in self.copyData) {
+																	if (k === j) {
+																		if (self.copyData[j].value === data[k]) {
+																			arsty[k] = {
+																				fieldKey: k,
+																				value: data[k],
+																				fieldName: (function() {
+																					for (let i = 0; i < self.listData.length; i++) {
+																						if (self.listData[i].fieldKey == k) {
+																							return self.listData[i].fieldName;
+																						}
+																					}
+																				})(),
+																				status: 0
+																			};
+																		} else {
+																			arsty[k] = {
+																				fieldKey: k,
+																				value: data[k],
+																				fieldName: (function() {
+																					for (let i = 0; i < self.listData.length; i++) {
+																						if (self.listData[i].fieldKey == k) {
+																							return self.listData[i].fieldName;
+																						}
+																					}
+																				})(),
+																				status: 1
+																			};
+																		}
+																	}
+																}
+															}
+															var datas = {
+																id: this.id,
+																goodsId: this.goodsId,
+																orderGoodsId:this.orderGoodsId,
+																keyValue: JSON.stringify(arsty)
+															};
+															this.$api.editbaseprofiletp(datas).then(res => {
+																this.isUploading = false;
+																if (res.data.code === 200) {
+																	this.$method.showToast('提交成功');
+																	uni.navigateBack();
+																} else {
+																	this.$method.showToast(res.data.msg);
+																	this.isUploading = false;
+																}
+															});
+														} else {
+															var objs = {};
+															for (let k in data) {
+																objs[k] = {
+																	fieldKey: k,
+																	value: data[k],
+																	fieldName: (function() {
+																		for (let i = 0; i < self.listData.length; i++) {
+																			if (self.listData[i].fieldKey == k) {
+																				return self.listData[i].fieldName;
+																			}
+																		}
+																	})(),
+																	status: 0
+																};
+															}
+															var datas = {
+																goodsId: this.goodsId,
+																profileTpId: this.goodsId,
+																orderGoodsId:this.orderGoodsId,
+																keyValue: JSON.stringify(objs)
+															};
+															this.$api.addbaseprofiletp(datas).then(res => {
+																this.isUploading = false;
+																if (res.data.code === 200) {
+																	this.$method.showToast('提交成功');
+																	uni.navigateBack();
+																} else {
+																	this.$method.showToast(res.data.msg);
+																	this.isUploading = false;
+																}
+															});
+														}
+													} else {
+														this.isUploading = false;
+														uni.showModal({
+															title:'提示',
+															content:'个人近照和身份证人像面照片不匹配',
+															showCancel:false,
+														})
+													}
+												})
+										  },
+										  fail(err) {
+												this.isUploading = false;
+											console.error(err,'err')
+										  }
+										})
+										
+									}
+							}
+						});
+					}
+					
+					
+				},
+			})
+			
+			
+				return
+			}
+			
 			var self = this;
 			if (self.remarkStatus) {
 				var arsty = {};
@@ -843,7 +1003,7 @@ export default {
 					this.$refs.idcard_national_photo[0].lists = [{
 						url:this.$method.splitImgHost(res.data.data.IdImgPath)
 					}]; 
-					this.$set(this.form, 'idcard_national_photo', this.$method.splitImgHost(res.data.data.IdImgPath,1000));
+					this.$set(this.form, 'idcard_national_photo', res.data.data.IdImgPath);
 				}
 			} else {
 				this.fileList3 = [];

+ 36 - 15
pages2/wd/class.vue

@@ -120,6 +120,7 @@
 									<view class="date">
 										<text v-if="item.periodStatus == 0">机构审核:学时审核不通过</text>
 										<text v-else-if="item.periodStatus == 2">学时待审核</text>
+										<text v-else-if="item.periodStatus == 3">学时审核中</text>
 										<text v-else-if="item.periodStatus == 1">
 											<text v-if="item.periodPlush > 0">学时已上报注册中心</text>
 											<text v-else>机构审核:学时审核通过</text>
@@ -134,9 +135,23 @@
 									<view class="date">
 										<view v-if="item.subExamStatus === null">待预约考试</view>
 										<view
-											v-else-if="item.subExamStatus === 0 &&  sysTime < item.subApplySiteStartTime">
-											待考试,考试时间:{{$method.timestampToTime(item.subApplySiteStartTime,true,true)}} -
-											{{$method.timestampToTime(item.subaApplySiteEndTime,true,true)}}
+											v-else-if="item.subExamStatus === 0 &&  sysTime < $method.TimeTotimestamp(
+												$method.timestampToTime(item.subApplySiteExamTime, true) +
+													' ' +
+													item.subApplySiteStartTime
+											)">
+											待考试,考试时间:
+											{{
+												$method.timestampToTime(item.subApplySiteExamTime, true) +
+												" " +
+												item.subApplySiteStartTime
+											}}
+                    -
+                    {{
+											$method.timestampToTime(item.subApplySiteExamTime, true) +
+											" " +
+											item.subApplySiteEndTime
+										}}
 										</view>
 										<view v-else-if="item.subExamStatus === 0">待出考试结果</view>
 										<view v-else-if="item.subExamStatus === 1">
@@ -180,7 +195,7 @@
 					<view class="box_progress">
 						<view style="width: 60%;">
 							<u-line-progress :showText="false" height="22" active-color="#ff9900" :show-percent="false"
-								:percent="(item.stuAllNum / item.secAllNum) * 100"></u-line-progress>
+								:percent="((item.stuAllNum+item.recordNum) / (item.secAllNum+item.examNum)) * 100"></u-line-progress>
 						</view>
 
 						<view>
@@ -204,7 +219,7 @@
 							<text style="color: #2979ff;">{{ item.beforeName }}</text>
 						</view>
 						<view>
-							<u-button type="primary" size="mini" @click="appBeforeAddress(item.goodsId)">进入刷题</u-button>
+							<u-button type="primary" size="mini" @click="appBeforeAddress(item.goodsId,item)">进入刷题</u-button>
 						</view>
 					</view>
 				</template>
@@ -294,14 +309,15 @@
 			};
 		},
 		onLoad(option) {
-			this.sysTime = this.$method.timest();
+			this.sysTime = +this.$method.timest();
 			this.courseGoodsList();
 		},
 		onShow() {
 			if (this.itemIndex !== '') {
 				this.refreshByIndex();
 			}
-			this.commonSystemTime()
+			// this.commonSystemTime()
+			this.sysTime = +this.$method.timest();
 		},
 		onReachBottom() {
 			if (this.goodsList.length < this.total) {
@@ -378,9 +394,10 @@
 					}
 				});
 			},
-			appBeforeAddress(goodsId) {
+			appBeforeAddress(goodsId,item) {
 				this.$api.appBeforeAddress({
-					goodsId
+					// goodsId,
+					orderGoodsId:item.orderGoodsId
 				}).then(res => {
 					if (res.data.code == 200) {
 						uni.navigateToMiniProgram({
@@ -390,9 +407,10 @@
 					 	}
 						})
 					} else {
-						uni.showToast({
-							title: res.data.msg,
-							icon: 'none',
+						uni.showModal({
+							title:'提示',
+							content:res.data.msg,
+							showCancel:false,
 						})
 					}
 				})
@@ -497,7 +515,8 @@
 				if (rebuildStatus == 0) {
 					this.$navTo.togo('/pages2/learn/details', {
 						gradeId: item.gradeId,
-						goodsId: item.goodsId
+						goodsId: item.goodsId,
+						orderGoodsId: item.orderGoodsId,
 					});
 					return;
 				}
@@ -521,7 +540,8 @@
 									pageNum: 1,
 									pageSize: 1,
 									goodsId: item.goodsId,
-									gradeId: item.gradeId
+									gradeId: item.gradeId,
+									orderGoodsId: item.orderGoodsId,
 								}).then(res => {
 									if (res.data.code == 200) {
 					  			uni.navigateTo({
@@ -542,7 +562,8 @@
 							pageNum: 1,
 							pageSize: 1,
 							goodsId: item.goodsId,
-							gradeId: item.gradeId
+							gradeId: item.gradeId,
+							orderGoodsId: item.orderGoodsId,
 						}).then(res => {
 							if (res.data.code == 200) {
 								uni.navigateTo({

+ 6 - 3
pages2/wd/course.vue

@@ -33,7 +33,7 @@
               height="22"
               :show-percent="false"
               active-color="#ff9900"
-              :percent="(item.stuAllNum / item.secAllNum) * 100"
+              :percent="((item.stuAllNum + item.recordNum) / (item.secAllNum + item.examNum)) * 100"
             ></u-line-progress
           ></view>
           <view
@@ -122,6 +122,7 @@ export default {
             id: item.courseId,
             gradeId: item.gradeId,
             goodsId: this.goodsId,
+						orderGoodsId: this.orderGoodsId,
           });
           return;
         }
@@ -176,6 +177,7 @@ export default {
                 id: item.courseId,
                 gradeId: item.gradeId,
                 goodsId: this.goodsId,
+								orderGoodsId: this.orderGoodsId,
               });
               return;
             }
@@ -229,6 +231,7 @@ export default {
               id: item.courseId,
               gradeId: item.gradeId,
               goodsId: this.goodsId,
+							orderGoodsId: this.orderGoodsId,
             });
             return;
           }
@@ -274,7 +277,7 @@ export default {
         if (res.data.code == 200) {
           self.courseList.push.apply(self.courseList, res.data.rows);
           self.param.total = res.data.total;
-
+					console.log(res.data.rows.length,'res.data.rows.length')
           if (res.data.rows.length) {
             this.courseBusiness(res.data.rows[0].businessId);
           }
@@ -282,7 +285,7 @@ export default {
       });
     },
     appointment() {
-      this.$navTo.togo("/pages2/appointment/index");
+      this.$navTo.togo("/pages2/appointment/index?orderGoodsId="+this.orderGoodsId);
     },
   },
 };

+ 7 - 2
pages2/wd/info.vue

@@ -43,7 +43,8 @@
 								<view>{{ form.realname }}</view>
 								<view>{{ form.idCard }}</view>
 							</view>
-							<u-icon name="arrow-right" color="#999999" size="28"></u-icon></view>
+							<!-- <u-icon name="arrow-right" color="#999999" size="28"></u-icon> -->
+						</view>
 					</view>
 					<view>
 						<pick-regions :defaultRegion="defaultRegionCode" @getRegion="handleGetRegion2">
@@ -58,7 +59,9 @@
 					</view>
 					<view class="item" @click="showPhone">
 						<view>手机号码</view>
-						<view>{{ form.telphone }}<u-icon name="arrow-right" color="#999999" size="28"></u-icon></view>
+						<view>{{ form.telphone }}
+							<!-- <u-icon name="arrow-right" color="#999999" size="28"></u-icon> -->
+						</view>
 					</view>
 				</view>
 			</view>
@@ -306,6 +309,7 @@ export default {
 			this.submitForm(data)
 		},
 		editIdCard(){
+			return;
 			this.id_show = true
 			this.realname = this.form.realname
 			this.idCard = this.form.idCard
@@ -383,6 +387,7 @@ export default {
 			});
 		},
 		showPhone() {
+			return;
 			this.showPhoneModal = true;
 			this.$refs.telForm.setRules(this.rules)
 		},

+ 1 - 1
pages2/wd/question_bank.vue

@@ -4,7 +4,7 @@
 		<navigator  hover-class="none" url="/pages2/bank/my_question">
 			<view class="my_question">
 				<view class="flex">
-					<view class="text">我的题库<u-icon name="arrow-right"></u-icon></view>
+					<view class="text">自购题卷<u-icon name="arrow-right"></u-icon></view>
 				</view>
 				<image src="/static/questionBank.png" class="my_bg"></image>
 			</view>

+ 63 - 39
pages3/polyv/detail.vue

@@ -41,6 +41,7 @@
             :playbackRate="playbackRate"
             :startTime="startTime"
             :enableAutoRotation="enableAutoRotation"
+						@loadedmetadata="loadedmetadata"
           ></polyv-player>
           <cover-view
             class="video-toast__close"
@@ -69,7 +70,6 @@
           />
         </view>
       </view>
-
       <view>
         <u-row>
           <u-col span="10">
@@ -107,6 +107,7 @@
             <!--模块 -->
             <view v-if="item.type == 1"
               ><courseModule
+								:orderGoodsId="orderGoodsId"
                 :sectionMaxNum="goodsData.sectionMaxNum"
                 :needOpen="menuIndex[0] === index ? true : false"
                 :courseId="courseId"
@@ -122,6 +123,7 @@
             <!--章 -->
             <view v-if="item.type == 2"
               ><courseChapter
+								:orderGoodsId="orderGoodsId"
                 :sectionMaxNum="goodsData.sectionMaxNum"
                 :needOpen="menuIndex[0] === index ? true : false"
                 :courseId="courseId"
@@ -138,6 +140,7 @@
             <!--节 -->
             <view v-if="item.type == 3"
               ><courseSection
+								:orderGoodsId="orderGoodsId"
                 :sectionMaxNum="goodsData.sectionMaxNum"
                 @playEnd="sectionPlayEnd($event, index)"
                 :courseId="courseId"
@@ -332,6 +335,7 @@
             <!--模块 -->
             <view v-if="item.type == 1"
               ><courseModule
+								:orderGoodsId="orderGoodsId"
                 :sectionMaxNum="goodsData.sectionMaxNum"
                 :courseId="courseId"
                 :goodsId="goodsId"
@@ -345,6 +349,7 @@
             <!--章 -->
             <view v-if="item.type == 2">
               <courseChapter
+								:orderGoodsId="orderGoodsId"
                 :courseId="courseId"
                 :sectionMaxNum="goodsData.sectionMaxNum"
                 @playEnd="sectionPlayEnd($event, index)"
@@ -359,6 +364,7 @@
             <!--节 -->
             <view v-if="item.type == 3">
               <courseSection
+								:orderGoodsId="orderGoodsId"
                 :courseId="courseId"
                 :sectionMaxNum="goodsData.sectionMaxNum"
                 @playEnd="sectionPlayEnd($event, index)"
@@ -590,7 +596,7 @@ export default {
     };
   },
   computed: {
-    ...mapGetters(["userInfo", "playSectionId", "playChannelId", "playVID"]),
+    ...mapGetters(["userInfo", "playSectionId", "playChannelId", "playVID","playObj"]),
   },
   onLoad(option) {
     this.courseId = Number(option.id);
@@ -624,7 +630,7 @@ export default {
     var self = this;
     //相机授权
     this.getCameraSetting();
-    this.$api.getbaseprofiletplists({ goodsId: self.goodsId }).then((res) => {
+    this.$api.getbaseprofiletplists({ goodsId: self.goodsId,orderGoodsId: this.orderGoodsId, }).then((res) => {
       console.log(res, "res");
       if (res.data.code === 200 && res.data.rows.length) {
         if (res.data.rows[0].keyValue) {
@@ -756,12 +762,16 @@ export default {
       this.getGradeInfo();
     }
   },
+	onHide() {
+		
+	},
   onUnload() {
     if (this.playSectionId > 0) {
       //退出提交记录
       this.postStudyRecord();
     }
     //清除正在播放的节ID
+		this.$store.commit('setPlayObj',null)
     this.$store.commit("setPlaySectionId", { playSectionId: 0 });
     this.$store.commit("setPlayChannelId", { playChannelId: 0 });
     this.$store.commit("setPlayVID", { playVID: null });
@@ -828,7 +838,7 @@ export default {
     this.updateChapterOpen(true);
   },
   methods: {
-    ...mapMutations(["updateChapterOpen"]),
+    ...mapMutations(["updateChapterOpen","setPlayObj"]),
     /**
      * 模块大节播放完毕,刷新列表
      */
@@ -841,6 +851,7 @@ export default {
           //从重修点击
           this.$api
             .reMenuList({
+							orderGoodsId: this.orderGoodsId,
               courseId: this.courseId,
               rebuild: 1,
               gradeId: this.gradeId,
@@ -907,7 +918,7 @@ export default {
             });
 
           this.$api
-            .reMenuList({ courseId: this.courseId, gradeId: this.gradeId })
+            .reMenuList({ courseId: this.courseId, gradeId: this.gradeId,orderGoodsId: this.orderGoodsId, })
             .then((res) => {
               console.log("noRebuild1");
               if (res.data.code == 200) {
@@ -927,7 +938,7 @@ export default {
         } else {
           //从普通目录点击
           this.$api
-            .reMenuList({ courseId: this.courseId, gradeId: this.gradeId })
+            .reMenuList({ courseId: this.courseId, gradeId: this.gradeId,orderGoodsId: this.orderGoodsId, })
             .then((res) => {
               console.log("noRebuild2");
               if (res.data.code == 200) {
@@ -939,6 +950,7 @@ export default {
 
           this.$api
             .reMenuList({
+							orderGoodsId: this.orderGoodsId,
               courseId: this.courseId,
               rebuild: 1,
               gradeId: this.gradeId,
@@ -1001,7 +1013,7 @@ export default {
       } else {
         //没有重修目录
         this.$api
-          .reMenuList({ courseId: this.courseId, gradeId: this.gradeId })
+          .reMenuList({ courseId: this.courseId, gradeId: this.gradeId ,orderGoodsId: this.orderGoodsId,})
           .then((res) => {
             console.log("noRebuild3");
             console.log("noRebuild3index", index);
@@ -1044,6 +1056,17 @@ export default {
       }
       return {};
     },
+		loadedmetadata(e) {
+			var polyvPlayerContext = this.selectComponent("#playerVideo");
+			
+			uni.$off('playPause')
+			uni.$on('playPause',() => {
+				polyvPlayerContext.pause()
+			})
+			if(!this.recordObj.videoCurrentTime) { //新视频直接提交一条观看记录
+				this.postStudyRecord(0)
+			}
+		},
     getPhotoLastRecord() {
       let self = this;
       let data = {
@@ -1053,6 +1076,7 @@ export default {
         gradeId: parseInt(self.gradeId),
         chapterId: parseInt(self.chapterId),
         moduleId: parseInt(self.moduleId),
+				orderGoodsId: this.orderGoodsId,
       };
       this.$api.getPhotoLastRecord(data).then((res) => {
         if (res.data.code == 200) {
@@ -1093,6 +1117,7 @@ export default {
           chapterId: parseInt(self.chapterId),
           moduleId: parseInt(self.moduleId),
           timeInterval: postTime ? self.photoList.join(",") : "",
+					orderGoodsId: this.orderGoodsId,
         };
         console.log("提交接口", data);
         this.$api
@@ -1219,6 +1244,7 @@ export default {
       return new Promise((resolve) => {
         let data = {
           channelId: channelId,
+					orderGoodsId: this.orderGoodsId,
         };
         self.$api.polyvSign(data).then((res) => {
           resolve(res.data.data);
@@ -1384,10 +1410,10 @@ export default {
       if (this.vid) {
         //切换视频
         var polyvPlayerContext = this.selectComponent("#playerVideo");
-        console.log(polyvPlayerContext, "polyvPlayerContext");
         polyvPlayerContext.changeVid(item.recordingUrl);
       } else {
         this.vid = item.recordingUrl;
+				
       }
       this.recordObj = null;
       this.recordObj = await this.getRecordLast();
@@ -1407,6 +1433,7 @@ export default {
           courseId: Number(self.courseId),
           chapterId: parseInt(self.chapterId),
           moduleId: parseInt(self.moduleId),
+					orderGoodsId: this.orderGoodsId,
         };
         self.$api.recordLast(data).then((res) => {
           resolve(res.data.data);
@@ -1472,6 +1499,7 @@ export default {
         noteText: this.noteValue,
         noteDate: noteDate,
         noteSecond: noteSecond,
+				orderGoodsId: this.orderGoodsId,
       };
       this.$api.postNote(data).then((res) => {
         if (res.data.code == 200) {
@@ -1527,6 +1555,7 @@ export default {
         courseId: this.courseId,
         gradeId: this.gradeId,
         goodsId: this.goodsId,
+				orderGoodsId: this.orderGoodsId,
       };
       if (this.playSectionId > 0) {
         data.sectionId = this.playSectionId;
@@ -1539,7 +1568,7 @@ export default {
     },
     delAnswer(answerId) {
       let self = this;
-      let data = { answerId: answerId, status: -1 };
+      let data = { answerId: answerId, status: -1 ,orderGoodsId: this.orderGoodsId,};
       this.$api.delAnswer(data).then((res) => {
         if (res.data.code == 200) {
           self.getAnswerList();
@@ -1565,6 +1594,7 @@ export default {
         courseId: this.courseId,
         answerText: this.ctxValue,
         goodsId: this.goodsId,
+				orderGoodsId: this.orderGoodsId,
       };
       if (this.assignUserId > 0) {
         data.assignUserId = this.assignUserId;
@@ -1604,6 +1634,7 @@ export default {
         sectionId: parseInt(sectionId),
         goodsId: parseInt(self.goodsId),
         courseId: parseInt(self.courseId),
+				orderGoodsId: this.orderGoodsId,
         studyDuration: parseInt(
           PlayDuration > 0 ? PlayDuration : self.studyDuration
         ),
@@ -1647,11 +1678,13 @@ export default {
       });
     },
     uploadFile(options, int) {
+			console.log(options)
       var self = this;
       return new Promise((resolve, reject) => {
         var data = {
           imageStatus: int,
           gradeId: this.gradeId,
+					orderGoodsId: this.orderGoodsId,
         };
         self.$api.aliyunpolicy(data).then((res) => {
           if (res.data.code != 200) {
@@ -1866,7 +1899,11 @@ export default {
           success: (res) => {
             console.log(res);
             let base64 = "data:image/jpg;base64," + res.data;
-
+						console.log({
+                imageA: base64,
+                orderGoodsId: this.orderGoodsId,
+                gradeId: this.gradeId,
+              },'base64Data')
             this.$api
               .faceCertificationCompareFace({
                 imageA: base64,
@@ -1893,33 +1930,7 @@ export default {
 
       let compareFaceData = await this.faceRecognition();
 
-      if (compareFaceData == 0) {
-        uni.showToast({
-          title: "人脸匹配不通过,请重新拍照上传",
-          icon: "none",
-          duration: 2000,
-        });
-
-        setTimeout(() => {
-          this.uploadLock = false;
-          this.openPhoto();
-        }, 2000);
-        return;
-      }
-
       if (compareFaceData >= 80) {
-				uni.showToast({
-				  title: "人脸匹配通过",
-				  icon: "none",
-				  duration: 2000,
-				});
-				
-				setTimeout(() => {
-				  this.uploadLock = false;
-				  this.openPhoto();
-				}, 2000);
-				return;
-				return;
         const waitYS = await this.imageInfos();
         this.postCoursePhotoRecord()
           .then((res) => {
@@ -1946,7 +1957,19 @@ export default {
             this.uploadLock = false;
             this.openPhoto();
           });
-      }
+      } else {
+				uni.showToast({
+				  title: "人脸匹配不通过,请重新拍照上传",
+				  icon: "none",
+				  duration: 2000,
+				});
+				
+				setTimeout(() => {
+				  this.uploadLock = false;
+				  this.openPhoto();
+				}, 2000);
+				return;
+			}
     },
     reTake() {
       this.isTaking = true;
@@ -2041,7 +2064,7 @@ export default {
     getAnswerList() {
       let self = this;
       this.$api
-        .answerList({ courseId: this.courseId, goodsId: this.goodsId })
+        .answerList({ courseId: this.courseId, goodsId: this.goodsId,orderGoodsId: this.orderGoodsId, })
         .then((res) => {
           if (res.data.code == 200) {
             self.answerList = res.data.rows;
@@ -2052,6 +2075,7 @@ export default {
       let self = this;
       this.$api
         .reMenuList({
+					orderGoodsId: this.orderGoodsId,
           courseId: this.courseId,
           rebuild: 1,
           gradeId: this.gradeId,
@@ -2106,7 +2130,7 @@ export default {
     getMenuList() {
       let self = this;
       this.$api
-        .reMenuList({ courseId: this.courseId, gradeId: this.gradeId })
+        .reMenuList({ courseId: this.courseId, gradeId: this.gradeId,orderGoodsId: this.orderGoodsId, })
         .then((res) => {
           if (res.data.code == 200) {
             for (let i = 0; i < res.data.rows.length; i++) {