| 
					
				 | 
			
			
				@@ -0,0 +1,176 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <div class="container" v-loading="loading"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class="i_box" v-if="steps == 1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="i_box_top"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div><span>请输入随机码进入项目课程</span></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div><span>账号登陆</span></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <img src="../../../assets/icon/inviteLogin/password.png" alt=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="i_box_login"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <el-input v-model="icode" placeholder="请输入随机码" class="input"></el-input> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div @click="nextSteps" class="button">确 定</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class="i_box" v-if="steps == 2"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="i_box_top"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div><span>{{ res.school }}</span></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div><span>欢迎回来!</span></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <img src="../../../assets/icon/inviteLogin/school.png" style="bottom: -40px;" alt=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="i_box_login"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <el-select v-model="userid" placeholder="选择姓名" filterable class="select"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-option v-for="item in classJuri" :key="item.userid" :label="item.name ? item.name : item.username" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        :value="item.userid"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-option> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div @click="login" class="button">登 录</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            steps: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            icode: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            userid: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            options: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            loading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            res: {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            classJuri: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            code:this.$route.query.code 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //       selectSnameByCid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        nextSteps() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let reg = /^[A-Za-z0-9]{4,}$/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (!reg.test(this.icode)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error("请正确填写随机码") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let params = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                code: this.icode, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                oid:this.code, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.ajax 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .get(this.$store.state.api + "selectCourseByIc", params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .then(res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (res.data.length && res.data[0].length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.res = res.data[0][0] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        let _inviteCode = JSON.parse(res.data[0][0].inviteCode) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        for(var i = 0;i<_inviteCode.length;i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(_inviteCode[i].ic == this.icode){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.getClass(_inviteCode[i].cid) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.$message.error("不存在此随机码") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .catch(err => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    console.error(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getClass(classId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let params = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cid: classId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.ajax 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .get(this.$store.state.api + "selectSnameByCid", params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.classJuri = res.data[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.steps = 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .catch((err) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    console.error(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        login() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(!this.userid){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error("请选择姓名") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            window.parent.postMessage( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    tools: "inviteLogin", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    userid: this.userid, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                "*" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.container { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    overflow: hidden; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_top { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: 145px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    overflow: hidden; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    background: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    box-sizing: border-box; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    padding: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_top>div:nth-child(1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    color: rgb(147, 147, 147); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_top>div:nth-child(2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    font-size: 28px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    color: rgb(78, 138, 218); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    margin-top: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_top>img { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    right: 30px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    bottom: -60px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 150px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_login { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: calc(100% - 145px); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    background: linear-gradient(90deg, #477cd7, #65b9fc); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    padding: 50px 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    box-sizing: border-box; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_login .input {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_login .select { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.i_box_login .button { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    margin-top: 30px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    background: rgb(100, 100, 100); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    cursor: pointer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    padding: 10px 50px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    border-radius: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 |