课程价格优化
This commit is contained in:
@@ -98,7 +98,7 @@ public class HomeController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医学课程价格
|
||||
* 获取医学课程价格1
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping("/getMedicalCoursePrice")
|
||||
@@ -107,6 +107,16 @@ public class HomeController {
|
||||
return R.ok().put("res",coursePrice);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取医学课程价格2
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping("/getMedicalCoursePriceIsBuy")
|
||||
public R getMedicalCoursePriceIsBuy(@RequestBody Map<String,Object> map){
|
||||
Page<CourseEntity> coursePrice = medicalService.getMedicalCoursePriceIsBuy(map);
|
||||
return R.ok().put("res",coursePrice);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取课程说明
|
||||
* @return
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.peanut.modules.medical.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.peanut.common.utils.R;
|
||||
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;
|
||||
|
||||
@@ -19,5 +18,7 @@ public interface CourseMedicalService extends IService<CourseMedicine> {
|
||||
|
||||
List<Map<String,Object>> getMedicalCoursePrice();
|
||||
|
||||
Page<CourseEntity> getMedicalCoursePriceIsBuy(Map<String,Object> map);
|
||||
|
||||
String checkVideoByMD(String id) throws Exception;
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.peanut.modules.medical.service.impl;
|
||||
import com.aliyun.vod20170321.models.GetVideoPlayAuthResponse;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||
import com.peanut.common.utils.R;
|
||||
@@ -26,6 +27,8 @@ import java.util.stream.Collectors;
|
||||
@Service("medicineCourseMedicalService")
|
||||
public class CourseMedicalServiceImpl extends ServiceImpl<CourseMedicineDao, CourseMedicine> implements CourseMedicalService {
|
||||
|
||||
@Autowired
|
||||
private CourseMedicineDao medicineDao;
|
||||
@Autowired
|
||||
private CourseToMedicineDao toMedicineDao;
|
||||
@Autowired
|
||||
@@ -89,35 +92,27 @@ public class CourseMedicalServiceImpl extends ServiceImpl<CourseMedicineDao, Cou
|
||||
List<Map<String,Object>> res = new ArrayList<>();
|
||||
for (CourseMedicine c : courseMedicines){
|
||||
Map<String,Object> m = new HashMap<>();
|
||||
List<Integer> list = new ArrayList<>();
|
||||
getLastLevel(c,list);
|
||||
m.put("courseMedicine",c);
|
||||
m.put("courseList",new ArrayList<>());
|
||||
getLastLevelCourseList(c,m);
|
||||
m.put("medicineList",list);
|
||||
res.add(m);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String checkVideoByMD(String id) throws Exception {
|
||||
GetVideoPlayAuthResponse p = SpdbUtil.getPlayAuth(id);
|
||||
String playAuth = p.getBody().getPlayAuth();
|
||||
return playAuth;
|
||||
}
|
||||
|
||||
private void getLastLevelCourseList(CourseMedicine c, Map<String,Object> map){
|
||||
public Page<CourseEntity> getMedicalCoursePriceIsBuy(Map<String,Object> params) {
|
||||
Integer limit = Integer.valueOf(params.get("limit").toString());
|
||||
Integer page = Integer.valueOf(params.get("page").toString());
|
||||
String vip = ShiroUtils.getUser().getVip();
|
||||
if (c.getChildren()!=null&&c.getChildren().size() > 0){
|
||||
for (CourseMedicine child : c.getChildren()){
|
||||
getLastLevelCourseList(child,map);
|
||||
}
|
||||
}
|
||||
MPJLambdaWrapper<CourseToMedicine> wrapper = new MPJLambdaWrapper<>();
|
||||
wrapper.selectAll(CourseEntity.class);
|
||||
wrapper.leftJoin(CourseEntity.class,CourseEntity::getId,CourseToMedicine::getCourseId);
|
||||
wrapper.eq(CourseToMedicine::getMedicalId,c.getId());
|
||||
wrapper.in(CourseToMedicine::getMedicalId,(ArrayList)params.get("ids"));
|
||||
wrapper.orderByAsc(CourseToMedicine::getSort);
|
||||
List<CourseEntity> courseEntities = toMedicineDao.selectJoinList(CourseEntity.class, wrapper);
|
||||
Page<CourseEntity> pageRes = toMedicineDao.selectJoinPage(new Page<>(page, limit),CourseEntity.class, wrapper);
|
||||
List<CourseEntity> courseEntities = pageRes.getRecords();
|
||||
if(courseEntities.size()>0){
|
||||
for (CourseEntity co:courseEntities){
|
||||
List<CourseCatalogueEntity> courseCatalogueEntities = courseCatalogueDao.selectList(new LambdaQueryWrapper<CourseCatalogueEntity>().eq(CourseCatalogueEntity::getCourseId, co.getId()).orderByAsc(CourseCatalogueEntity::getSort));
|
||||
@@ -136,11 +131,25 @@ public class CourseMedicalServiceImpl extends ServiceImpl<CourseMedicineDao, Cou
|
||||
co.setCourseCatalogueEntityList(courseCatalogueEntities);
|
||||
}
|
||||
}
|
||||
((List<CourseEntity>)map.get("courseList")).addAll(courseEntities);
|
||||
return pageRes;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String checkVideoByMD(String id) throws Exception {
|
||||
GetVideoPlayAuthResponse p = SpdbUtil.getPlayAuth(id);
|
||||
String playAuth = p.getBody().getPlayAuth();
|
||||
return playAuth;
|
||||
}
|
||||
|
||||
|
||||
private void getLastLevel(CourseMedicine c,List<Integer> list){
|
||||
if (c.getChildren()!=null&&c.getChildren().size() > 0){
|
||||
for (CourseMedicine child : c.getChildren()){
|
||||
getLastLevel(child,list);
|
||||
}
|
||||
}else {
|
||||
list.add(c.getId());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user