diff --git a/src/main/java/com/peanut/common/utils/ShiroUtils.java b/src/main/java/com/peanut/common/utils/ShiroUtils.java index 411749be..c1f46f85 100644 --- a/src/main/java/com/peanut/common/utils/ShiroUtils.java +++ b/src/main/java/com/peanut/common/utils/ShiroUtils.java @@ -38,6 +38,10 @@ public class ShiroUtils { return getUserEntity().getUserId(); } + public static MyUserEntity getUser() { + return (MyUserEntity)SecurityUtils.getSubject().getPrincipal(); + } + public static Integer getUId() { MyUserEntity user = (MyUserEntity)SecurityUtils.getSubject().getPrincipal(); return user.getId(); diff --git a/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java b/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java index 1b325659..b0dc916c 100644 --- a/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java +++ b/src/main/java/com/peanut/modules/medical/service/impl/CourseMedicalServiceImpl.java @@ -4,9 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.peanut.common.utils.ShiroUtils; import com.peanut.modules.common.dao.CourseCatalogueDao; import com.peanut.modules.common.dao.CourseMedicineDao; import com.peanut.modules.common.dao.CourseToMedicineDao; +import com.peanut.modules.common.dao.UserCourseBuyDao; import com.peanut.modules.common.entity.*; import com.peanut.modules.common.to.ParamTo; import com.peanut.modules.medical.service.CourseMedicalService; @@ -28,6 +30,8 @@ public class CourseMedicalServiceImpl extends ServiceImpl getMedicalLabels(Integer id) { @@ -94,6 +98,7 @@ public class CourseMedicalServiceImpl extends ServiceImpl map){ + String vip = ShiroUtils.getUser().getVip(); if (c.getChildren()!=null&&c.getChildren().size() > 0){ for (CourseMedicine child : c.getChildren()){ getLastLevelCourseList(child,map); @@ -108,9 +113,20 @@ public class CourseMedicalServiceImpl extends ServiceImpl0){ for (CourseEntity co:courseEntities){ List courseCatalogueEntities = courseCatalogueDao.selectList(new LambdaQueryWrapper().eq(CourseCatalogueEntity::getCourseId, co.getId()).orderByAsc(CourseCatalogueEntity::getSort)); + if (courseCatalogueEntities.size() > 0){ + for (CourseCatalogueEntity cc:courseCatalogueEntities){ + if ("0".equals(vip)||"2".equals(vip)){ + Integer i = userCourseBuyDao.selectCount(new LambdaQueryWrapper() + .eq(UserCourseBuyEntity::getCatalogueId, cc.getId()) + .eq(UserCourseBuyEntity::getUserId, ShiroUtils.getUId())); + cc.setIsBuy(i>0?1:0); + }else { + cc.setIsBuy(1); + } + } + } co.setCourseCatalogueEntityList(courseCatalogueEntities); } -// c.setCourseList(courseEntities); } ((List)map.get("courseList")).addAll(courseEntities); }