From 356bf1ab462ec980e56b0945fc591cc66b400b3c Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Tue, 18 Jun 2024 11:40:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8E=B7=E5=8F=96=E5=8C=BB?= =?UTF-8?q?=E5=AD=A6=E8=AF=BE=E7=A8=8B=E4=BB=B7=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../medical/controller/HomeController.java | 5 +++-- .../medical/service/CourseMedicalService.java | 4 +++- .../service/impl/CourseMedicalServiceImpl.java | 18 ++++++++++++------ .../service/impl/CourseServiceImpl.java | 13 ++++++++++--- 4 files changed, 28 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/peanut/modules/medical/controller/HomeController.java b/src/main/java/com/peanut/modules/medical/controller/HomeController.java index 2555961c..283f0bbd 100644 --- a/src/main/java/com/peanut/modules/medical/controller/HomeController.java +++ b/src/main/java/com/peanut/modules/medical/controller/HomeController.java @@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Map; @Slf4j @RestController("medicalHome") @@ -102,8 +103,8 @@ public class HomeController { */ @RequestMapping("/getMedicalCoursePrice") public R getMedicalCoursePrice(){ - List coursePrice = medicalService.getMedicalCoursePrice(); - return R.ok().put("list",coursePrice); + List> coursePrice = medicalService.getMedicalCoursePrice(); + return R.ok().put("res",coursePrice); } /** diff --git a/src/main/java/com/peanut/modules/medical/service/CourseMedicalService.java b/src/main/java/com/peanut/modules/medical/service/CourseMedicalService.java index 66115f94..9b6d9fbe 100644 --- a/src/main/java/com/peanut/modules/medical/service/CourseMedicalService.java +++ b/src/main/java/com/peanut/modules/medical/service/CourseMedicalService.java @@ -1,10 +1,12 @@ package com.peanut.modules.medical.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.modules.common.entity.CourseEntity; import com.peanut.modules.common.entity.CourseMedicine; import com.peanut.modules.common.to.ParamTo; import java.util.List; +import java.util.Map; public interface CourseMedicalService extends IService { @@ -14,5 +16,5 @@ public interface CourseMedicalService extends IService { List getChildCourseMedicalTree(ParamTo param); - List getMedicalCoursePrice(); + List> getMedicalCoursePrice(); } 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 76710028..1b325659 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 @@ -79,19 +79,24 @@ public class CourseMedicalServiceImpl extends ServiceImpl> getMedicalCoursePrice() { //获取所有医学标签 List courseMedicines = getCourseMedicalTree(); + List> res = new ArrayList<>(); for (CourseMedicine c : courseMedicines){ - getLastLevelCourseList(c); + Map m = new HashMap<>(); + m.put("courseMedicine",c); + m.put("courseList",new ArrayList<>()); + getLastLevelCourseList(c,m); + res.add(m); } - return courseMedicines; + return res; } - private void getLastLevelCourseList(CourseMedicine c){ + private void getLastLevelCourseList(CourseMedicine c,Map map){ if (c.getChildren()!=null&&c.getChildren().size() > 0){ for (CourseMedicine child : c.getChildren()){ - getLastLevelCourseList(child); + getLastLevelCourseList(child,map); } } MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); @@ -105,8 +110,9 @@ public class CourseMedicalServiceImpl extends ServiceImpl courseCatalogueEntities = courseCatalogueDao.selectList(new LambdaQueryWrapper().eq(CourseCatalogueEntity::getCourseId, co.getId()).orderByAsc(CourseCatalogueEntity::getSort)); co.setCourseCatalogueEntityList(courseCatalogueEntities); } - c.setCourseList(courseEntities); +// c.setCourseList(courseEntities); } + ((List)map.get("courseList")).addAll(courseEntities); } diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java index ae1b7b29..cfb4579f 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java @@ -60,6 +60,7 @@ public class CourseServiceImpl extends ServiceImpl impl @Override public Page getSociologyCourseList(ParamTo param) { Integer uId = ShiroUtils.getUId(); + MyUserEntity user = userDao.selectOne(new LambdaQueryWrapper().eq(MyUserEntity::getId,uId)); MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); wrapper.selectAll(CourseEntity.class); wrapper.leftJoin(CourseToSociologyEntity.class,CourseToSociologyEntity::getCourseId,CourseEntity::getId); @@ -70,9 +71,15 @@ public class CourseServiceImpl extends ServiceImpl impl Integer integer = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCourseId, c.getId()).eq(UserCourseBuyEntity::getUserId,uId)); c.setIsBuy(integer>0?1:0); List courseCatalogueEntities = courseCatalogueDao.selectList(new LambdaQueryWrapper().eq(CourseCatalogueEntity::getCourseId, c.getId())); - for (CourseCatalogueEntity cc:courseCatalogueEntities){ - Integer integer1 = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCatalogueId, cc.getId()).eq(UserCourseBuyEntity::getUserId, uId)); - cc.setIsBuy(integer1>0?1:0); + if (courseCatalogueEntities != null && courseCatalogueEntities.size() > 0){ + for (CourseCatalogueEntity cc : courseCatalogueEntities) { + if ("0".equals(user.getVip())||"2".equals(user.getVip())){ + Integer i = userCourseBuyDao.selectCount(new LambdaQueryWrapper().eq(UserCourseBuyEntity::getCatalogueId, cc.getId()).eq(UserCourseBuyEntity::getUserId,uId)); + cc.setIsBuy(i>0?1:0); + }else { + cc.setIsBuy(1); + } + } } c.setCourseCatalogueEntityList(courseCatalogueEntities); }