Merge branch 'zcwy-master' into dev0515

This commit is contained in:
zhangsir
2024-06-28 16:48:55 +08:00
4 changed files with 349 additions and 172 deletions

View File

@@ -20,7 +20,17 @@ const getTaskNum = function(){
const userTaskList = function(data){
return ajax.postJson(baseURL,'/todoTask/queryTodoTaskDetail',data);
}
//领导力必修
const leadership = function(data){
return ajax.postJson(baseURL,'/todoTask/leadership',data);
}
//定制化学习 1.学习项目 2.学习路径
const customized = function(data){
return ajax.postJson(baseURL,'/todoTask/customized',data);
}
const compulsoryList = function(data){
return ajax.postJson(baseURL,'/todoTask/compulsoryList',data);
}
/**删除学习,取消报名*/
const userDeleteStudy = function(data){
return ajax.postJson(baseURL,'/stu/project/stuCancelEnrollment',data);
@@ -37,6 +47,9 @@ const userRsSginupCourse = function(data){
export default {
getTaskNum,
userTaskList,
leadership,
customized,
compulsoryList,
userDeleteStudy,
userRsSginupCourse
}

View File

@@ -9,12 +9,13 @@
> -->
<!-- <i class="el-icon-collection-tag"></i> 我的导航 -->
<!-- </div> -->
<!-- :default-openeds="['manageTodo','manageFinish','teacherTodo','teacherFinish','lecturer','myqa','notice','mystudy', 'course', 'exam', 'u001', 'u002', 'u003', 'u004','mylecnotes','mycaseRecord']" -->
<div class="uc-menu" style="background-color: #ffffff;padding-bottom:20px">
<el-menu
:default-active="activeMenu"
router
active-text-color="#3379FB"
:default-openeds="['manageTodo','manageFinish','teacherTodo','teacherFinish','lecturer','myqa','notice','mystudy', 'course', 'exam', 'u001', 'u002', 'u003', 'u004','mylecnotes','mycaseRecord']"
:default-openeds="openedsList"
class="el-menu-vertical"
@open="handleOpen"
@close="handleClose"
@@ -173,7 +174,7 @@
<template slot="title">
<svg-icon icon-class="course" style="font-size:16px"></svg-icon>
<!-- <i class="el-icon-s-grid"></i> -->
<span>我的课程</span>
<span>专业贡献</span>
</template>
<el-menu-item index="/need/course">
<!-- <i class="el-icon-menu"></i> -->
@@ -242,28 +243,28 @@
<svg-icon :icon-class="activeMenu == '/user/medal'?'myxunzhang-active':'myxunzhang'"></svg-icon>
<span slot="title">我的勋章</span>
</el-menu-item>
<el-submenu index="mystudy" v-show="curIdentity == 1">
<template slot="title">
<!-- <el-submenu index="mystudy" v-show="curIdentity == 1">
<template slot="title"> -->
<!-- <i class="el-icon-s-grid"></i> -->
<svg-icon icon-class="mystudy"></svg-icon>
<!-- <svg-icon icon-class="mystudy"></svg-icon>
<span>我的学习</span>
</template>
<el-menu-item index="/uc/study/task">
</template> -->
<!-- <el-menu-item index="/uc/study/task"> -->
<!-- <i class="el-icon-menu"></i> -->
<span slot="title" class="study textl"><el-badge :value="studyTaskCount||''" class="item">学习任务</el-badge></span>
</el-menu-item>
<el-menu-item index="/uc/study/courses">
<!-- <span slot="title" class="study textl"><el-badge :value="studyTaskCount||''" class="item">学习任务</el-badge></span>
</el-menu-item> -->
<!-- <el-menu-item index="/uc/study/courses"> -->
<!-- <i class="el-icon-menu"></i> -->
<!-- <span slot="title" class="textl">自主学习</span> -->
<span slot="title" class="textl">我报名的</span>
</el-menu-item>
<el-menu-item index="/exam/mytask">
<!-- <i class="el-icon-menu"></i> -->
<!-- <span slot="title" class="textl">我报名的</span>
</el-menu-item> -->
<!-- <el-menu-item index="/exam/mytask">
<i class="el-icon-menu"></i>
<span slot="title" class="textl">我的考试</span>
</el-menu-item>
<el-menu-item index="/uc/study/growth">
</el-menu-item> -->
<!-- <el-menu-item index="/uc/study/growth">
<span slot="title" class="textl">成长路径</span>
</el-menu-item>
</el-menu-item> -->
<!-- 去掉
<el-menu-item index="/uc/study/path" v-show="isTest">
<span slot="title" class="textl">学习路径图</span>
@@ -275,7 +276,39 @@
<!-- <i class="el-icon-menu"></i> -->
<!-- <span slot="title" class="textl">历史记录</span>
</el-menu-item> -->
<!-- </el-submenu> -->
<el-submenu v-if="fistTotal+pathTotal+proTotal+growTotal" index="mystudy" v-show="curIdentity == 1">
<template slot="title">
<svg-icon icon-class="mystudy"></svg-icon>
<span>我的必修</span>
</template>
<el-menu-item v-if="fistTotal" index="/uc/study/task?type=1">
<span slot="title" class="study textl"><el-badge :value="fistTotal||''" class="item">领导力必修</el-badge></span>
</el-menu-item>
<el-menu-item v-if="growTotal" index="/uc/study/growth">
<span slot="title" class="textl">专业力必修</span>
</el-menu-item>
<el-menu-item v-if="pathTotal + proTotal" index="/uc/study/task?type=2">
<span slot="title" class="textl"><el-badge :value="pathTotal + proTotal||''" class="item">定制化学习</el-badge></span>
</el-menu-item>
</el-submenu>
<el-menu-item v-else index="/uc/study/task?type=9" v-show="curIdentity == 1">
<svg-icon :icon-class="activeMenu == '/uc/study/task'?'mystudy':'mystudy'"></svg-icon>
<span slot="title">我的必修</span>
</el-menu-item>
<el-submenu index="myelective" v-show="curIdentity == 1">
<template slot="title">
<svg-icon icon-class="mystudy"></svg-icon>
<span>我的选修</span>
</template>
<el-menu-item index="/uc/study/courses">
<span slot="title" class="study textl">自选学习</span>
</el-menu-item>
</el-submenu>
<el-menu-item index="/exam/mytask" v-show="curIdentity == 1">
<svg-icon :icon-class="activeMenu == '/exam/mytask'?'mybiji-active':'mybiji'"></svg-icon>
<span slot="title">我的考试</span>
</el-menu-item>
<el-menu-item index="/user/Mynotes" v-show="curIdentity == 1">
<svg-icon :icon-class="activeMenu == '/user/Mynotes'?'mybiji-active':'mybiji'"></svg-icon>
<span slot="title">我的笔记</span>
@@ -389,6 +422,8 @@ 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'
import apiManage from '@/api/manage/manage.js'
import {getList} from '@/api/growth'
export default {
name: 'UcMenu',
components: {
@@ -399,6 +434,9 @@ export default {
activeMenu() {
const route = this.$route;
const { meta, path } = route;
if(path == '/uc/study/task'){
return '/uc/study/task?type='+route.query.type
}
if(meta.title == '添加受众' || meta.title == '查看受众'){
meta.activeMenu = '/manage/ugroups'
}
@@ -416,7 +454,12 @@ export default {
isCollapse: false,
lastStudy:{},
overlayShow: false,
instructor:0
instructor:0,
fistTotal:0,
proTotal: 0,
pathTotal:0,
growTotal: 0,
openedsList:[]
};
},
created() {
@@ -425,6 +468,7 @@ export default {
this.getLastStudy();
//获取讲师认证中条数
this.instructorCertification()
this.learnTotal()
},
mounted() {
//console.log(this.userInfo.loginName,'this.userInfo.loginName');
@@ -437,6 +481,31 @@ export default {
// }
},
methods: {
learnTotal(){
let params = {
pageNo: 1,
pageSize: 10,
cmtask_user_status: "",
cmtask_name: ""
}
//领导力
apiManage.leadership(params).then(res=>{
this.fistTotal =parseInt(res.data.total);
})
//项目
apiManage.customized(params).then(res=>{
this.proTotal =parseInt(res.data.total);
})
//学习路径
apiManage.compulsoryList(params).then(res=>{
this.pathTotal =parseInt(res.data.total);
})
getList(this.userInfo.aid).then(res=>{
if(res.code == 200 ){
this.growTotal = 1
}
})
},
//讲师认证条数
instructorCertification(){
pageList({ teacherNo:this.userInfo.userNo,courseName:'', pageNo: 1, pageSize: 10}).then(res=>{
@@ -470,6 +539,7 @@ export default {
},
handleOpen(key, keyPath) {
console.log(key, keyPath);
this.openedsList = [key]
},
handleClose(key, keyPath) {
console.log(key, keyPath);

View File

@@ -106,7 +106,7 @@
<div class="body_schedule_pro">
<span class="pro_text">总进度</span>
<div style="display: flex;align-items: center;">
<el-progress style="width: 268px;" :show-text="false" :stroke-width="12" :percentage="Number(((detailData.overallCompletionRate || 0)*100).toFixed(2))"></el-progress>
<el-progress style="width: 213px;" :show-text="false" :stroke-width="10" :percentage="Number(((detailData.overallCompletionRate || 0)*100).toFixed(2))"></el-progress>
<div class="text">{{ Number(((detailData.overallCompletionRate || 0)*100).toFixed(2)) || 0 }}%</div>
</div>
</div>
@@ -378,65 +378,66 @@ export default {
.growth_heads{
display: flex;
justify-content: space-between;
margin: 22px 43px 19px 40px;
margin: 10px 43px 29px 40px;
position: relative;
.growth_left{
display: flex;
justify-content: center;
line-height: 40px;
.left_text{
width: 108px;
// width: 108px;
height: 25px;
font-weight: 600;
font-size: 18px;
font-size: 14px;
color: #333333;
text-align: left;
}
.growth_i{
cursor: pointer;
width: 20px;
height: 20px;
margin-left: 7px;
width: 16px;
height: 16px;
margin-left: 6px;
border: 1px solid #999999;
border-radius: 100%;
margin-top: 10px;
margin-top: 13px;
.growth_mark{
color: #999999;
line-height: 20px;
margin-left: 5px;
line-height: 15px;
margin-left: 4px;
}
}
}
.growth_right{
width: 198px;
height: 40px;
line-height: 40px;
width: 158px;
height: 32px;
line-height: 32px;
background: #387DF7;
box-shadow: 1px 2px 15px 1px rgba(56,125,247,0.34);
border-radius: 20px;
box-shadow: 1px 2 12px 1px rgba(56,125,247,0.34);
border-radius: 16px;
display: flex;
justify-content: center;
.right_text{
width: 112px;
// width: 112px;
height: 22px;
font-weight: 400;
font-size: 16px;
font-size: 13px;
color: #FFFFFF;
text-align: left;
}
.growth_img{
cursor: pointer;
width: 20px;
height: 20px;
margin-left: 13px;
width: 16px;
height: 16px;
margin-left: 10px;
.img{
width: 100%;
vertical-align: middle;
}
}
}
}
.growth_body{
max-width: 1340px;
// max-width: 1340px;
height: 574px;
background: #FFFFFF;
border-radius: 10px;
@@ -464,32 +465,32 @@ export default {
}
}
.body_head{
max-width: 1340px;
height: 88px;
// max-width: 1066px;
height: 70px;
background: linear-gradient( 180deg, #DEEBFF 0%, #FFFFFF 100%);
border-radius: 10px 10px 0px 0px;
border: 1px solid #E4EDFE;
display: flex;
justify-content: space-between;
margin-bottom: 25px;
margin-bottom: 23px;
.head_left{
// width: 272px;
height: 28px;
// height: 28px;
font-weight: 600;
font-size: 20px;
font-size: 16px;
color: #387DF7;
line-height: 28px;
// line-height: 28px;
text-align: left;
margin: 29px 0 0 33px;
margin: 23px 0 0 26px;
}
.head_right{
// width: 326px;
height: 22px;
font-weight: 400;
font-size: 16px;
font-size: 13px;
color: #666660;
line-height: 22px;
margin: 32px 45px 0 0;
margin: 25px 36px 0 0;
display: flex;
justify-content: space-between;
line-height: 22px;
@@ -510,11 +511,11 @@ export default {
}
}
.body_explain{
margin-bottom: 25px;
margin-bottom: 20px;
.body_explain_icon{
display: flex;
margin-left: 35px;
margin-bottom: 23px;
margin-left: 28px;
margin-bottom: 20px;
.body_explain_img{
width: 16px;
height: 16px;
@@ -524,29 +525,28 @@ export default {
width: 32px;
height: 22px;
font-weight: 600;
font-size: 16px;
font-size: 13px;
color: #333333;
line-height: 22px;
text-align: left;
margin-left: 10px;
margin-left: 8px;
}
}
.body_explain_item{
margin-left: 35px;
margin-right: 45px;
max-width: 1260px;
max-height: 100px;
margin-left: 28px;
margin-right: 36px;
// max-width: 1003px;
max-height: 80px;
background: #F5F6F7;
border-radius: 10px;
padding: 22px 25px 22px 16px;
border-radius: 8px;
padding: 18px 20px 18px 13px;
.body_explain_text{
max-width: 1219px;
max-height: 56px;
// max-width: 970px;
max-height: 45px;
font-weight: 400;
font-size: 14px;
font-size: 11px;
color: #333333;
line-height: 28px;
text-align: left;
line-height: 22px;
display: -webkit-box;
word-wrap: break-word;
word-break:break-all;
@@ -560,42 +560,42 @@ export default {
.body_schedule{
.body_schedule_icon{
display: flex;
margin-bottom: 33px;
margin-bottom: 27px;
.body_schedule_img{
width: 16px;
height: 16px;
margin-left: 35px;
margin-top: 4px;
margin-left: 28px;
margin-top: 3px;
}
.body_schedule_text{
width: 64px;
height: 22px;
font-weight: 600;
font-size: 16px;
font-size: 13px;
color: #333333;
line-height: 22px;
text-align: left;
margin-left: 10px;
margin-left: 8px;
}
}
.body_schedule_item{
margin-left: 58px;
.body_schedule_one{
display: flex;
margin-bottom: 52px;
margin-bottom: 41px;
.body_schedule_left{
min-width: 65px;
min-width: 52px;
font-weight: 500;
font-size: 16px;
font-size: 13px;
color: #3B3C4A;
line-height: 22px;
text-align: left;
}
.body_schedule_right{
margin-left: 16px;
margin-left: 13px;
min-width: 65px;
font-weight: 500;
font-size: 16px;
font-size: 13px;
color: #2E72F2;
line-height: 22px;
text-align: left;
@@ -604,13 +604,13 @@ export default {
.body_schedule_two{
display: flex;
.body_schedule_pro{
width: 314px;
height: 37px;
width: 250px;
height: 30px;
.pro_text{
width: 42px;
height: 22px;
font-weight: 400;
font-size: 14px;
font-size: 11px;
color: #666660;
line-height: 22px;
text-align: left;
@@ -618,29 +618,29 @@ export default {
}
.text{
font-weight: 400;
font-size: 12px;
font-size: 10px;
color: #333333;
margin-left: 19px;
margin-left: 15px;
}
}
.body_schedule_btn{
width: 140px;
width: 112px;
cursor: pointer;
height: 40px;
margin-left: 44px;
margin-top: 7px;
height: 32px;
margin-left: 35px;
margin-top: 6px;
background: #409EFF;
box-shadow: 1px 2px 15px 1px rgba(56,125,247,0.34);
border-radius: 4px;
box-shadow: 1px 2 12px 1px rgba(56,125,247,0.34);
border-radius: 3px;
text-align: center;
line-height: 40px;
line-height: 30px;
.body_schedule_text{
width: 64px;
height: 22px;
width: 52px;
height: 18px;
font-weight: 400;
font-size: 16px;
font-size: 13px;
color: #FFFFFF;
line-height: 22px;
line-height: 18px;
text-align: left;
}
}

View File

@@ -1,80 +1,89 @@
<template>
<div>
<!-- <div style="display:flex; padding-left:20px; width:100%">
<div style="width:100px">完成情况</div>
<div class="progress"><div class="msg">课程完成情况</div> <el-progress :text-inside="true" :stroke-width="16" :percentage="porcessData.course" status="warning" class="progressItem"> </el-progress> </div>
<div class="progress" ><div class="msg">项目完成情况</div> <el-progress :text-inside="true" :stroke-width="16" :percentage="porcessData.project" status="success" class="progressItem"> </el-progress> </div>
<div class="progress"><div class="msg">路径图完成情况</div> <el-progress :text-inside="true" :stroke-width="16" :percentage="porcessData.router" class="progressItem"> </el-progress> </div>
</div> -->
<div style="display: flex; justify-content: space-between; padding: 12px 32px 10px 22px;">
<div style="display: flex; justify-content: flex-start">
<div>
<el-select class="search-input" v-model="status" clearable placeholder="学习进度">
<el-option label="全部" value=""></el-option>
<el-option label="未开始" value="0"></el-option>
<el-option label="进行中" value="1"></el-option>
<el-option label="已完成" value="2"></el-option>
</el-select>
</div>
<div style="padding-left: 10px"><el-input v-model="params.cmtask_name" clearable placeholder="搜索名称"></el-input></div>
<div class="button-class" style="padding-left: 10px"><el-button type="primary" icon="el-icon-search" @click="search()">搜索</el-button></div>
<div class="button-class" style="padding-left: 10px"><el-button type="primary" icon="el-icon-refresh-right" @click="reset()">重置</el-button></div>
</div>
<div style="margin-top: 50px;" v-if="isType == 9">
<el-empty description="您还没有学习数据"></el-empty>
</div>
<!--课程列表内容-->
<div class="uc-list" v-if="couresList.length > 0">
<div class="uc-course" v-for="(item, idx) in couresList" @click="jumpRouter(item)" :key="idx">
<div class="uc-course-img">
<img :src="item.cmtask_imgurl" />
<span class="spanname" v-if="item.cmtask_type==1">学习路径图</span>
<span class="spanname" v-if="item.cmtask_type==2">学习项目</span>
<!-- 类型3不显示20230307 东吴说已确认的修改 -->
<!-- <span class="spanname" v-if="item.cmtask_type==3">老系统必修任务</span> -->
<div v-else>
<!-- <div style="display:flex; padding-left:20px; width:100%">
<div style="width:100px">完成情况</div>
<div class="progress"><div class="msg">课程完成情况</div> <el-progress :text-inside="true" :stroke-width="16" :percentage="porcessData.course" status="warning" class="progressItem"> </el-progress> </div>
<div class="progress" ><div class="msg">项目完成情况</div> <el-progress :text-inside="true" :stroke-width="16" :percentage="porcessData.project" status="success" class="progressItem"> </el-progress> </div>
<div class="progress"><div class="msg">路径图完成情况</div> <el-progress :text-inside="true" :stroke-width="16" :percentage="porcessData.router" class="progressItem"> </el-progress> </div>
</div> -->
<div v-if="isType == 2" class="title">
<div class="item" style="margin-right: 19px;" :class="typeClass == 1?'item1':'item'" @click="learnType(1)">学习项目</div>
<div class="item" :class="typeClass == 2?'item1':'item'" @click="learnType(2)">学习路径</div>
</div>
<div class="uc-course-info">
<!-- 任务名称 -->
<div class="uc-course-name one-line-ellipsis" style="cursor: pointer">
<span v-if="item.type==10" class="uc-course-type2">录播</span>
<span v-if="item.type==20" class="uc-course-type2">录播</span>
<!-- <a href="/course/detail?id=" target="_blank"> {{item.name}}</a> -->
<span v-html="item.cmtask_name"></span>
<div style="display: flex; justify-content: space-between; padding: 12px 32px 10px 22px;">
<div style="display: flex; justify-content: flex-start">
<div>
<el-select class="search-input" v-model="status" clearable placeholder="学习进度">
<el-option label="全部" value=""></el-option>
<el-option label="未开始" value="0"></el-option>
<el-option label="进行中" value="1"></el-option>
<el-option label="已完成" value="2"></el-option>
</el-select>
</div>
<!-- <div class="uc-course-source" @click="jumpRouter(item)">来源{{ item.cmtask_name }}</div> -->
<div style="padding-top: 18px; " class="uc-course-text">学习进度
<span v-if="item.cmtask_user_status==0">未开始</span>
<span v-if="item.cmtask_user_status==1">进行中</span>
<span v-if="item.cmtask_user_status==2">已完成</span>
</div>
<!-- <div class="uc-course-time">推送时间{{ formatsec(Number(item.updated_at) * 1000 )}}</div> -->
<div class="uc-course-time">推送时间{{ item.created_at}}</div>
</div>
<div class="uc-course-btns">
<el-button @click="jumpRouter(item)" type="primary" size="small">开始学习</el-button>
<div style="padding-left: 10px"><el-input v-model="params.cmtask_name" clearable placeholder="搜索名称"></el-input></div>
<div class="button-class" style="padding-left: 10px"><el-button type="primary" icon="el-icon-search" @click="search()">搜索</el-button></div>
<div class="button-class" style="padding-left: 10px"><el-button type="primary" icon="el-icon-refresh-right" @click="reset()">重置</el-button></div>
</div>
</div>
<div style="height:150px; text-align: center; margin-top:57px;" >
<el-pagination background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:page-sizes="[10, 20, 30, 40]"
:current-page="page"
:page-size="size"
layout="total, sizes, prev, pager, next, jumper"
:total="total">
</el-pagination>
<!--课程列表内容-->
<div class="uc-list" v-if="couresList.length > 0">
<div class="uc-course" v-for="(item, idx) in couresList" @click="jumpRouter(item)" :key="idx">
<div class="uc-course-img">
<img :src="item.cmtask_imgurl" />
<span class="spanname" v-if="item.cmtask_type==1">学习路径图</span>
<span class="spanname" v-if="item.cmtask_type==2">学习项目</span>
<!-- 类型3不显示20230307 东吴说已确认的修改 -->
<!-- <span class="spanname" v-if="item.cmtask_type==3">老系统必修任务</span> -->
</div>
<div class="uc-course-info">
<!-- 任务名称 -->
<div class="uc-course-name one-line-ellipsis" style="cursor: pointer">
<span v-if="item.type==10" class="uc-course-type2">录播</span>
<span v-if="item.type==20" class="uc-course-type2">录播</span>
<!-- <a href="/course/detail?id=" target="_blank"> {{item.name}}</a> -->
<span v-html="item.cmtask_name"></span>
</div>
<!-- <div class="uc-course-source" @click="jumpRouter(item)">来源{{ item.cmtask_name }}</div> -->
<div style="padding-top: 18px; " class="uc-course-text">学习进度
<span v-if="item.cmtask_user_status==0">未开始</span>
<span v-if="item.cmtask_user_status==1">进行中</span>
<span v-if="item.cmtask_user_status==2">已完成</span>
</div>
<!-- <div class="uc-course-time">推送时间{{ formatsec(Number(item.updated_at) * 1000 )}}</div> -->
<div class="uc-course-time">推送时间{{ item.created_at}}</div>
</div>
<div class="uc-course-btns">
<el-button @click="jumpRouter(item)" type="primary" size="small">开始学习</el-button>
</div>
</div>
<div style="height:150px; text-align: center; margin-top:57px;" >
<el-pagination background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:page-sizes="[10, 20, 30, 40]"
:current-page="page"
:page-size="size"
layout="total, sizes, prev, pager, next, jumper"
:total="total">
</el-pagination>
</div>
</div>
<!-- </div> -->
<div v-else class="zan-wu">
<div v-if="loading">
<span v-if="couresList.length==0">正在加载数据...</span>
<span v-else>查询中...</span>
</div>
<div v-else>
<span v-if="couresList.length==0">没有查询到相关内容</span>
</div>
</div>
</div>
<!-- </div> -->
<div v-else class="zan-wu">
<div v-if="loading">
<span v-if="couresList.length==0">正在加载数据...</span>
<span v-else>查询中...</span>
</div>
<div v-else>
<span v-if="couresList.length==0">没有查询到相关内容</span>
</div>
</div>
</div>
</template>
@@ -107,14 +116,32 @@ export default {
keyword:'',
formatsec,
couresList:[],
total: 0
total: 0,
isType: null,
typeClass: true,
};
},
watch:{
'$route': {
handler(to, from) {
console.log('type变化了', to.query.type);
this.isType = to.query.type;
if(this.isType != 9){
this.loadBoeData();
}
},
immediate: true
}
},
mounted() {
this.loadBoeData();
this.getPossData()
},
methods: {
learnType(item){
this.typeClass = item
this.reset()
},
jumpRouter(item) {
//location.href=`${this.webBaseUrl}/course/boeframe?id=${item.cmtask_id}`;
@@ -157,17 +184,59 @@ export default {
cmtask_name:this.params.cmtask_name,
}
this.loading=true;
apiManage.userTaskList(params).then(res=>{
if(res.code==200){
this.total =parseInt(res.data.total);
this.couresList = res.data.records;
}else{
this.$message.error('查询数据失败:'+res.msg);
}
this.loading=false;
}).catch(()=>{
this.loading=false;
})
if(this.isType == 1){
//领导力必修
apiManage.leadership(params).then(res=>{
if(res.code==200){
this.total =parseInt(res.data.total);
this.couresList = res.data.records;
}else{
this.$message.error('查询数据失败:'+res.msg);
}
this.loading=false;
}).catch(()=>{
this.loading=false;
})
}else if (this.isType == 2){
//定制化学习
if(this.typeClass == 1){
apiManage.customized(params).then(res=>{
if(res.code==200){
this.total =parseInt(res.data.total);
this.couresList = res.data.records;
}else{
this.$message.error('查询数据失败:'+res.msg);
}
this.loading=false;
}).catch(()=>{
this.loading=false;
})
}else{
apiManage.compulsoryList(params).then(res=>{
if(res.code==200){
this.total =parseInt(res.data.total);
this.couresList = res.data.records;
}else{
this.$message.error('查询数据失败:'+res.msg);
}
this.loading=false;
}).catch(()=>{
this.loading=false;
})
}
}else{
apiManage.userTaskList(params).then(res=>{
if(res.code==200){
this.total =parseInt(res.data.total);
this.couresList = res.data.records;
}else{
this.$message.error('查询数据失败:'+res.msg);
}
this.loading=false;
}).catch(()=>{
this.loading=false;
})
}
},
search(){
this.page=1;
@@ -196,6 +265,31 @@ export default {
</script>
<style scoped lang="scss">
.title{
display: flex;
margin-left: 22px;
margin-bottom: 6px;
.item{
width: 100px;
height: 46px;
line-height: 46px;
text-align: center;
font-size: 18px;
color: #666666;
}
.item1{
// border-bottom: #409EFF 4px solid;
position: relative;
&::before {
content: "";
position: absolute;
bottom: 0;
left: 10px;
width: 80px;
border-bottom: 4px solid #409EFF;
}
}
}
.progress{
width:calc((100% - 100px) / 3);
display: flex;