|
@@ -1,112 +1,130 @@
|
|
|
-
|
|
|
<template>
|
|
|
- <el-row class="p20 waphide">
|
|
|
- <el-col :lg="6" :md="6" :span="6">
|
|
|
- <el-progress
|
|
|
- class="mprocess"
|
|
|
- type="circle"
|
|
|
- :width="150"
|
|
|
- :format="formatFinish"
|
|
|
- :stroke-width="18"
|
|
|
- :percentage="info.percent"
|
|
|
- >
|
|
|
- </el-progress>
|
|
|
+ <el-row class="p20 waphide">
|
|
|
+ <el-col :lg="6" :md="6" :span="6">
|
|
|
+ <el-progress class="mprocess" type="circle" :width="150" :format="formatFinish" :stroke-width="18"
|
|
|
+ :percentage="info.percent">
|
|
|
+ </el-progress>
|
|
|
|
|
|
- </el-col>
|
|
|
+ </el-col>
|
|
|
|
|
|
- <el-col :lg="6" :md="6" :span="6">
|
|
|
- <el-progress v-if="tpl.examGroupId>0"
|
|
|
- class="mprocess"
|
|
|
- type="circle"
|
|
|
- :width="150"
|
|
|
- :format="formatExam"
|
|
|
- :stroke-width="18"
|
|
|
- :percentage="info.score"
|
|
|
- >
|
|
|
- </el-progress>
|
|
|
+ <el-col :lg="6" :md="6" :span="6">
|
|
|
+ <el-progress v-if="tpl.testGroupId>0" class="mprocess" type="circle" :width="150" :format="formatTest"
|
|
|
+ :stroke-width="18" :percentage="finishCount">
|
|
|
+ </el-progress>
|
|
|
|
|
|
- <el-progress v-else
|
|
|
- class="mprocess"
|
|
|
- type="circle"
|
|
|
- :width="150"
|
|
|
- :format="formatString('--')"
|
|
|
- :stroke-width="18"
|
|
|
- :percentage="0"
|
|
|
- >
|
|
|
- </el-progress>
|
|
|
- </el-col>
|
|
|
+ <el-progress v-else-if="tpl.examGroupId>0" class="mprocess" type="circle" :width="150" :format="formatExam"
|
|
|
+ :stroke-width="18" :percentage="info.score">
|
|
|
+ </el-progress>
|
|
|
|
|
|
- <el-col :lg="6" :md="6" :span="6">
|
|
|
- <img src="../../../../assets/wxapp.jpg" width="150px" />
|
|
|
- </el-col>
|
|
|
+ <el-progress v-else class="mprocess" type="circle" :width="150" :format="formatString('--')" :stroke-width="18"
|
|
|
+ :percentage="0">
|
|
|
+ </el-progress>
|
|
|
+ </el-col>
|
|
|
|
|
|
- <el-col :lg="6" :md="6" :span="6">
|
|
|
- <div>
|
|
|
- <p style="font-size: 24px;"> 说明 </p>
|
|
|
- <p class="mt10" >岗位名称:{{tpl.name}}<strong style="color: red;">{{tpl.nd}}</strong></p>
|
|
|
- <p class="mt10">
|
|
|
- 学习截至时间:
|
|
|
- <strong style="color: red;">
|
|
|
+ <el-col :lg="6" :md="6" :span="6">
|
|
|
+ <img src="../../../../assets/wxapp.jpg" width="150px" />
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :lg="6" :md="6" :span="6">
|
|
|
+ <div>
|
|
|
+ <p style="font-size: 24px;"> 说明 </p>
|
|
|
+ <p class="mt10">岗位名称:{{tpl.name}}<strong style="color: red;">{{tpl.nd}}</strong></p>
|
|
|
+ <p class="mt10">
|
|
|
+ 学习截至时间:
|
|
|
+ <strong style="color: red;">
|
|
|
{{info.canStudyDate}}
|
|
|
- </strong>
|
|
|
- </p>
|
|
|
- <p class="mt10" style="color: red;" v-if="tpl.examGroupId>0" >报名成功,80天内完成学习与考试</p>
|
|
|
- <p class="mt10" v-if="tpl.examGroupId==0" >学完所有课程,即可打印学时证明</p>
|
|
|
+ </strong>
|
|
|
+ </p>
|
|
|
+ <p class="mt10" v-if="tpl.testGroupId>0">
|
|
|
+ 参与练习<strong style="color: red;"> {{finishCount}}</strong>题,满100题可得
|
|
|
+ <strong style="color: red;">{{tpl.testXs/10}}</strong>学时
|
|
|
+ </p>
|
|
|
+ <p class="mt10" style="color: red;" v-if="tpl.examGroupId>0">报名成功,80天内完成学习与考试</p>
|
|
|
+ <p class="mt10" v-if="tpl.examGroupId==0">完成所有视频,即可打印学时证明</p>
|
|
|
|
|
|
- <div>
|
|
|
- <el-button type="primary" class="mt10" style="font-size: 14px;" @click="startExam" v-if="tpl.examGroupId>0" :disabled="info.score>=60">
|
|
|
- 参加考试
|
|
|
- </el-button>
|
|
|
- <el-button type="primary" class="mt10" style="font-size: 14px;" @click="printCert" v-if="tpl.tplId>0">
|
|
|
- 学时证明
|
|
|
- </el-button>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
+ <div>
|
|
|
+ <el-button type="primary" class="mt10" style="font-size: 14px;" @click="startExam" v-if="tpl.examGroupId>0"
|
|
|
+ :disabled="info.score>=60">
|
|
|
+ 参加考试
|
|
|
+ </el-button>
|
|
|
+ <el-button type="primary" class="mt10" style="font-size: 14px;" @click="startExamTest"
|
|
|
+ v-if="tpl.testGroupId>0" :disabled="info.score>=60">
|
|
|
+ 在线练习
|
|
|
+ </el-button>
|
|
|
+ <el-button type="primary" class="mt10" style="font-size: 14px;" @click="printCert" v-if="tpl.tplId>0">
|
|
|
+ 学时证明
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-col>
|
|
|
|
|
|
- </el-row>
|
|
|
- </template>
|
|
|
+ </el-row>
|
|
|
+</template>
|
|
|
|
|
|
- <script>
|
|
|
- import { toDate } from "@/utils/date";
|
|
|
+<script>
|
|
|
+ import {
|
|
|
+ toDate
|
|
|
+ } from "@/utils/date";
|
|
|
export default {
|
|
|
name: "Index",
|
|
|
data() {
|
|
|
return {
|
|
|
+ finishCount:0
|
|
|
}
|
|
|
},
|
|
|
- filters:{
|
|
|
- add80Date( date ){
|
|
|
- let val = new Date(date).getTime() + 80*86400*1000;
|
|
|
- return toDate( val )
|
|
|
+ filters: {
|
|
|
+ add80Date(date) {
|
|
|
+ let val = new Date(date).getTime() + 80 * 86400 * 1000;
|
|
|
+ return toDate(val)
|
|
|
|
|
|
+ },
|
|
|
+ testCount(val) {
|
|
|
+ let finish= (+val.index1) + (+val.index2) + (+val.index3) + (+val.index4) || 0
|
|
|
+ return finish;
|
|
|
}
|
|
|
},
|
|
|
- props:['tpl', 'info'],
|
|
|
- methods: {
|
|
|
- startExam(){
|
|
|
- if( this.tpl.isClosed ==1 ) {
|
|
|
- this.$message.errorMsg("课程已经关闭", 2)
|
|
|
- return;
|
|
|
- }
|
|
|
- this.$emit("startExam", 0)
|
|
|
- },
|
|
|
- printCert(){
|
|
|
- this.$emit("printCert")
|
|
|
- },
|
|
|
- formatFinish() {
|
|
|
- let {gxs,axs} = this.info;
|
|
|
- if( !axs ) axs = 1;
|
|
|
- return `获得${gxs}学时, 总共${axs}学时`;
|
|
|
+ props: ['tpl', 'info', 'extraXs'],
|
|
|
+ mounted(){
|
|
|
+ this.finishCount = (this.extraXs.index1) + (+this.extraXs.index2) + (+this.extraXs.index3) + (+this.extraXs.index4)||0
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ startExam() {
|
|
|
+ if (this.tpl.isClosed == 1) {
|
|
|
+ this.$message.errorMsg("课程已经关闭", 2)
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ this.$emit("startExam", 0)
|
|
|
+ },
|
|
|
+ startExamTest() {
|
|
|
+ this.$emit("startExamTest")
|
|
|
+ },
|
|
|
+ printCert() {
|
|
|
+ this.$emit("printCert")
|
|
|
+ },
|
|
|
+ formatFinish() {
|
|
|
+ let {
|
|
|
+ gxs,
|
|
|
+ axs
|
|
|
+ } = this.info;
|
|
|
+ let {testXs}= this.tpl
|
|
|
+ let attrch = this.finishCount>=100?testXs/10:0;
|
|
|
+ if (!axs) axs = 1;
|
|
|
+ return `获得${gxs+attrch}学时, 总共${axs+testXs/10}学时`;
|
|
|
},
|
|
|
formatExam() {
|
|
|
- let {score} = this.info
|
|
|
- if( score == -1 ) return `已答0次,未通过`;
|
|
|
+ let {
|
|
|
+ score
|
|
|
+ } = this.info
|
|
|
+ if (score == -1) return `已答0次,未通过`;
|
|
|
return `最高${score<1?0:score}分, ${score>=60?'通过':'未通过'}`;
|
|
|
},
|
|
|
- formatString(val){
|
|
|
- return ()=> val;
|
|
|
+ formatTest() {
|
|
|
+ let finishCount = this.finishCount
|
|
|
+ return `练习${finishCount}题, ${finishCount>=100?'完成':'未完成'}`;
|
|
|
+ },
|
|
|
+ formatString(val) {
|
|
|
+ return () => val;
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
}
|
|
|
- </script>
|
|
|
+</script>
|