mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal.git
synced 2025-12-12 12:26:44 +08:00
Merge remote-tracking branch 'boe/zcwy-master' into zcwy-master
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
:default-active="activeMenu"
|
||||
router
|
||||
active-text-color="#3379FB"
|
||||
:default-openeds="['manageTodo','manageFinish','teacherTodo','teacherFinish','myqa','notice','mystudy', 'course', 'exam', 'u001', 'u002', 'u003', 'u004','mylecnotes','mycaseRecord']"
|
||||
:default-openeds="['manageTodo','manageFinish','teacherTodo','teacherFinish','lecturer','myqa','notice','mystudy', 'course', 'exam', 'u001', 'u002', 'u003', 'u004','mylecnotes','mycaseRecord']"
|
||||
class="el-menu-vertical"
|
||||
@open="handleOpen"
|
||||
@close="handleClose"
|
||||
@@ -166,7 +166,6 @@
|
||||
<span slot="title" class="textl">已审核的课程</span>
|
||||
</el-menu-item>
|
||||
<el-menu-item index="/need/qafinish">
|
||||
<!-- <i class="el-icon-menu"></i> -->
|
||||
<span slot="title" class="textl">已回答问题</span>
|
||||
</el-menu-item>
|
||||
</el-submenu>
|
||||
@@ -195,10 +194,14 @@
|
||||
</el-menu-item>
|
||||
-->
|
||||
</el-submenu>
|
||||
<!-- <el-menu-item index="/user/tools" v-show="curIdentity == 2">
|
||||
<i class="el-icon-menu"></i>
|
||||
<span slot="title">功能百宝箱</span>
|
||||
</el-menu-item> -->
|
||||
<el-menu-item index="/need/lecturer" v-show="curIdentity == 2">
|
||||
<template slot="title">
|
||||
<svg-icon icon-class="lecturer" style="font-size:16px"></svg-icon>
|
||||
<span>讲师认证</span>
|
||||
<div v-if="instructor!=0" style="position: absolute;right: 60px;top: 0;background-color: red;width: 20px;height: 20px;color: #fff;border-radius: 50%;display: flex;justify-content: center;align-items: center">
|
||||
{{ instructor }}</div>
|
||||
</template>
|
||||
</el-menu-item>
|
||||
<el-submenu index="u004" v-show="curIdentity == 2">
|
||||
<template slot="title">
|
||||
<i class="el-icon-s-grid" style="color:#0165FF"></i>
|
||||
@@ -379,8 +382,8 @@
|
||||
|
||||
<script>
|
||||
import { mapGetters } from 'vuex';
|
||||
import apiCourse from '../../api/modules/course.js';
|
||||
import apicourseStudy from "../../api/modules/courseStudy.js"
|
||||
import {pageList} from "@/api/modules/lecturer"
|
||||
import courseImage from "@/components/Course/courseImage.vue"
|
||||
import testUser from '@/utils/testUsers.js'
|
||||
export default {
|
||||
@@ -409,13 +412,16 @@ export default {
|
||||
badge: 0,
|
||||
isCollapse: false,
|
||||
lastStudy:{},
|
||||
overlayShow: false
|
||||
overlayShow: false,
|
||||
instructor:0
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.$store.dispatch('refrashReviewed');
|
||||
this.$store.dispatch('refrashStudyTaskCount');
|
||||
this.getLastStudy();
|
||||
//获取讲师认证中条数
|
||||
this.instructorCertification()
|
||||
},
|
||||
mounted() {
|
||||
//console.log(this.userInfo.loginName,'this.userInfo.loginName');
|
||||
@@ -428,6 +434,12 @@ export default {
|
||||
// }
|
||||
},
|
||||
methods: {
|
||||
//讲师认证条数
|
||||
instructorCertification(){
|
||||
pageList({ teacherNo:this.userInfo.userNo,courseName:'', pageNo: 1, pageSize: 10}).then(res=>{
|
||||
this.instructor=res.data.count
|
||||
})
|
||||
},
|
||||
toCourseDetail(item){
|
||||
if(isNaN(item.courseType)){
|
||||
return `${this.webBaseUrl}/course/boeframe?id=${item.courseId}&type=${item.courseId}`;
|
||||
|
||||
273
src/components/processStatus.vue
Normal file
273
src/components/processStatus.vue
Normal file
@@ -0,0 +1,273 @@
|
||||
<script setup>
|
||||
import {getCertificationProcess} from "@/api/modules/lecturer";
|
||||
|
||||
export default {
|
||||
props: {
|
||||
teacherId:String,
|
||||
pid:String
|
||||
},
|
||||
data(){
|
||||
return{
|
||||
status:{
|
||||
secondResult:1,
|
||||
draftStatus:1,
|
||||
onlineLearning:1,
|
||||
offlineTutoring:1,
|
||||
endStatus:1,
|
||||
reviewResult:3,
|
||||
offlineTutoring1:1,
|
||||
endStatus1:1,
|
||||
reviewResult1:3,
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (this.pid==null || this.pid==''){
|
||||
this.getCertificationProcess()
|
||||
}else {
|
||||
this.getCertificationProcess()
|
||||
this.getCertificationProcess1()
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
teacherId: {
|
||||
handler(newVal) {
|
||||
if (newVal) {
|
||||
console.log(newVal)
|
||||
this.getCertificationProcess()
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
},
|
||||
methods:{
|
||||
getCertificationProcess(){
|
||||
getCertificationProcess({teacherId:this.teacherId}).then(res=>{
|
||||
let data=res.data
|
||||
if(data.draftStatus==0){
|
||||
this.status.draftStatus=0
|
||||
if (data.onlineLearning==0){
|
||||
this.status.onlineLearning=0
|
||||
if (data.offlineTutoring==0){
|
||||
this.status.offlineTutoring=0
|
||||
if (data.endStatus==0){
|
||||
this.status.endStatus=0
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}else if (data.endStatus==2){
|
||||
this.status.endStatus=2
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}
|
||||
}
|
||||
}else if(data.onlineLearning==2 && data.offlineTutoring==1){
|
||||
this.status.onlineLearning=2
|
||||
}else if (data.onlineLearning==2 && data.offlineTutoring==0){
|
||||
this.status.onlineLearning=0
|
||||
if (data.offlineTutoring==0){
|
||||
this.status.offlineTutoring=0
|
||||
if (data.endStatus==0){
|
||||
this.status.endStatus=0
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}else if (data.endStatus==2){
|
||||
this.status.endStatus=2
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}
|
||||
}
|
||||
}
|
||||
}else if (data.draftStatus==2){
|
||||
this.status.draftStatus=2
|
||||
if (data.onlineLearning==0){
|
||||
this.status.onlineLearning=0
|
||||
if (data.offlineTutoring==0){
|
||||
this.status.offlineTutoring=0
|
||||
if (data.endStatus==0){
|
||||
this.status.endStatus=0
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}else if (data.endStatus==2){
|
||||
this.status.endStatus=2
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}
|
||||
}
|
||||
}else if(data.onlineLearning==2 && data.offlineTutoring==1){
|
||||
this.status.onlineLearning=2
|
||||
}else if (data.onlineLearning==2 && data.offlineTutoring==0){
|
||||
this.status.onlineLearning=0
|
||||
if (data.offlineTutoring==0){
|
||||
this.status.offlineTutoring=0
|
||||
if (data.endStatus==0){
|
||||
this.status.endStatus=0
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}else if (data.endStatus==2){
|
||||
this.status.endStatus=2
|
||||
this.status.reviewResult=data.reviewResult
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
})
|
||||
},
|
||||
getCertificationProcess1(){
|
||||
getCertificationProcess({teacherId:this.pid}).then(res=>{
|
||||
console.log(res)
|
||||
let data=res.data
|
||||
if(data.secondResult==0){
|
||||
this.status.secondResult=0
|
||||
if (data.offlineTutoring==0){
|
||||
this.status.offlineTutoring1=0
|
||||
if (data.endStatus==0){
|
||||
this.status.endStatus1=0
|
||||
this.status.reviewResult1=data.reviewResult
|
||||
}else if (data.endStatus==2){
|
||||
this.status.endStatus1=2
|
||||
this.status.reviewResult1=data.reviewResult
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="main">
|
||||
<div class="process">
|
||||
<img src="../assets/images/first_draft.png" alt="" v-if="status.draftStatus==1">
|
||||
<img src="../assets/images/first_draft2.png" alt="" v-if="status.draftStatus==2">
|
||||
<img src="../assets/images/first_draft1.png" alt="" v-if="status.draftStatus==0">
|
||||
<div :class="status.draftStatus==1?'tim1':status.draftStatus==2?'tim2':'tim'">{{status.draftStatus==1?'初稿未上传':status.draftStatus==2?'初稿已退回':'初稿已上传'}}</div>
|
||||
</div>
|
||||
<div :class="status.draftStatus==1?'line1':status.draftStatus==2?'line':'line'"></div>
|
||||
<div class="process">
|
||||
<img src="../assets/images/E-learning1.png" alt="" v-if="status.onlineLearning==0">
|
||||
<img src="../assets/images/E-learning.png" alt="" v-if="status.onlineLearning==1">
|
||||
<img src="../assets/images/E-learning2.png" alt="" v-if="status.onlineLearning==2">
|
||||
<div :class="status.onlineLearning==1?'tim1':status.onlineLearning==2?'tim3':'tim'">{{status.onlineLearning==1?'线上学习未完成':status.onlineLearning==2?'线上学习进行中':'线上学习已完成'}}</div>
|
||||
</div>
|
||||
<div :class="status.onlineLearning==1?'line1':status.onlineLearning==2?'line1':'line'"></div>
|
||||
<div class="process">
|
||||
<img src="../assets/images/tutoring1.png" alt="" v-if="status.offlineTutoring==0">
|
||||
<img src="../assets/images/tutoring.png" alt="" v-if="status.offlineTutoring==1">
|
||||
<div :class="status.offlineTutoring==1?'tim1':'tim'">{{status.offlineTutoring==1?'线下辅导未完成':'线下辅导已完成'}}</div>
|
||||
</div>
|
||||
<div :class="status.offlineTutoring==1?'line1':'line'"></div>
|
||||
<div class="process">
|
||||
<img src="../assets/images/final_draft1.png" alt="" v-if="status.endStatus==0">
|
||||
<img src="../assets/images/final_draft.png" alt="" v-if="status.endStatus==1">
|
||||
<img src="../assets/images/final_draft2.png" alt="" v-if="status.endStatus==2">
|
||||
<div :class="status.endStatus==1?'tim1':status.endStatus==2?'tim2':'tim'">{{status.endStatus==1?'终稿未上传':status.endStatus==2?'终稿已退回':'终稿已上传'}}</div>
|
||||
</div>
|
||||
<div :class="status.endStatus==1?'line1':status.endStatus==2?'line1':'line'"></div>
|
||||
<div class="process">
|
||||
<img src="../assets/images/certification.png" alt="" v-if="status.reviewResult==3">
|
||||
<img src="../assets/images/certification.png" alt="" v-if="status.reviewResult==2">
|
||||
<img src="../assets/images/certification3.png" alt="" v-if="status.reviewResult==1">
|
||||
<img src="../assets/images/certification4.png" alt="" v-if="status.reviewResult==0">
|
||||
<div :class="status.reviewResult==3?'tim1':status.reviewResult==2?'tim1':status.reviewResult==1?'tim2':'tim4'">
|
||||
{{status.reviewResult==3?'认证':status.reviewResult==2?'认证':status.reviewResult==1?'认证未通过':'认证已通过'}}</div>
|
||||
</div>
|
||||
<div :class="status.reviewResult==3?'line1':status.reviewResult==2?'line1':status.reviewResult==1?'line':'line'" v-if="status.secondResult==0"></div>
|
||||
<div class="process" v-if="status.secondResult==0">
|
||||
<img src="../assets/images/tutoring1.png" alt="" v-if="status.offlineTutoring1==0">
|
||||
<img src="../assets/images/tutoring.png" alt="" v-if="status.offlineTutoring1==1">
|
||||
<div :class="status.offlineTutoring1==1?'tim1':'tim'">{{status.offlineTutoring1==1?'线下辅导未完成':'线下辅导已完成'}}</div>
|
||||
</div>
|
||||
<div :class="status.offlineTutoring1==1?'line1':'line'"v-if="status.secondResult==0"></div>
|
||||
<div class="process" v-if="status.secondResult==0">
|
||||
<img src="../assets/images/final_draft1.png" alt="" v-if="status.endStatus1==0">
|
||||
<img src="../assets/images/final_draft2.png" alt="" v-if="status.endStatus1==2">
|
||||
<img src="../assets/images/final_draft.png" alt="" v-if="status.endStatus1==1">
|
||||
<div :class="status.endStatus1==1?'tim1':status.endStatus1==2?'tim2':'tim'">{{status.endStatus1==1?'终稿未上传':status.endStatus1==2?'终稿已退回':'终稿已上传'}}</div>
|
||||
</div>
|
||||
<div :class="status.endStatus1==1?'line1':status.endStatus1==2?'line1':'line'" v-if="status.secondResult==0"></div>
|
||||
<div class="process" v-if="status.secondResult==0">
|
||||
<img src="../assets/images/certification.png" alt="" v-if="status.reviewResult1==3">
|
||||
<img src="../assets/images/certification.png" alt="" v-if="status.reviewResult1==2">
|
||||
<img src="../assets/images/certification3.png" alt="" v-if="status.reviewResult1==1">
|
||||
<img src="../assets/images/certification4.png" alt="" v-if="status.reviewResult1==0">
|
||||
<div :class="status.reviewResult1==3?'tim1':status.reviewResult1==2?'tim1':status.reviewResult1==1?'tim2':'tim4'">
|
||||
{{status.reviewResult1==3?'认证':status.reviewResult1==2?'认证':status.reviewResult1==1?'认证未通过':'认证已通过'}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.main {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.process {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
|
||||
img {
|
||||
width: 46px;
|
||||
height: 46px;
|
||||
}
|
||||
|
||||
.tim {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #409EFF;
|
||||
line-height: 20px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
.tim1 {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #979797;
|
||||
line-height: 20px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
.tim2 {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #FF4040;
|
||||
line-height: 20px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
.tim3 {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #ffa050;
|
||||
line-height: 20px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
.tim4 {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #31AF0D ;
|
||||
line-height: 20px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.line {
|
||||
width: 81px;
|
||||
height: 1px;
|
||||
border: 1px solid #409EFF;
|
||||
margin: 0 8px 30px 8px;
|
||||
}
|
||||
.line1 {
|
||||
width: 81px;
|
||||
height: 1px;
|
||||
border: 1px solid #DEDEDE;
|
||||
margin: 0 8px 30px 8px;
|
||||
}
|
||||
.line2 {
|
||||
width: 81px;
|
||||
height: 1px;
|
||||
border: 1px solid #FF4040;
|
||||
margin: 0 8px 30px 8px;
|
||||
}
|
||||
.line3 {
|
||||
width: 81px;
|
||||
height: 1px;
|
||||
border: 1px solid #ffa050;
|
||||
margin: 0 8px 30px 8px;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user