Commit 20af146c authored by root's avatar root

修改首页接口

parent 59afbbbe
......@@ -117,7 +117,8 @@ public class BLessonController extends PaginationController<BLesson> {
@ApiOperation(value="606 分页查询大家都在学", notes="分页查询大家都在学")
@GetMapping(value = "/queryPersonMoreByPagination")
public Result queryPersonMoreByPagination(CurUser curUser,@Valid FirstPageQueryDTO firstPageQueryDTO, BindingResult bindingResult) {
bLessonService.queryPersonMoreByPagination(getPaginationUtility());
String userId = curUser.getUserId();
bLessonService.queryPersonMoreByPagination(getPaginationUtility(),userId);
GridModel gridModel = getGridModelResponse();
return Result.builder(new PersistModel(1),
MessageConstant.MESSAGE_ALERT_SUCCESS,
......@@ -125,7 +126,7 @@ public class BLessonController extends PaginationController<BLesson> {
gridModel);
}
@ApiOperation(value="607 分页查询推荐", notes="分页查询推荐")
@ApiOperation(value="607 分页查询企业推荐", notes="分页查询企业推荐")
@GetMapping(value = "/queryRecommendByPagination")
public Result queryRecommendByPagination(CurUser curUser,@Valid FirstPageQueryDTO firstPageQueryDTO, BindingResult bindingResult) {
String userId = curUser.getUserId();
......@@ -140,7 +141,8 @@ public class BLessonController extends PaginationController<BLesson> {
@ApiOperation(value="608 分页查询最受关注", notes="分页查询最受关注")
@GetMapping(value = "/queryConcernByPagination")
public Result queryConcernByPagination(CurUser curUser) {
bLessonService.queryConcernByPagination(getPaginationUtility());
String userId = curUser.getUserId();
bLessonService.queryConcernByPagination(getPaginationUtility(),userId);
GridModel gridModel = getGridModelResponse();
return Result.builder(new PersistModel(1),
MessageConstant.MESSAGE_ALERT_SUCCESS,
......@@ -152,7 +154,8 @@ public class BLessonController extends PaginationController<BLesson> {
@ApiOperation(value="609 分页查询可能感兴趣", notes="分页查询可能感兴趣")
@GetMapping(value = "/queryInterestedByPagination")
public Result queryInterestedByPagination(CurUser curUser) {
bLessonService.queryInterestedByPagination(getPaginationUtility());
String userId = curUser.getUserId();
bLessonService.queryInterestedByPagination(getPaginationUtility(),userId);
GridModel gridModel = getGridModelResponse();
return Result.builder(new PersistModel(1),
MessageConstant.MESSAGE_ALERT_SUCCESS,
......@@ -199,13 +202,13 @@ public class BLessonController extends PaginationController<BLesson> {
}
@ApiOperation(value="613 我发布的课程总数", notes="我发布的课程总数")
@GetMapping(value = "/iPublishCount")
public Result iPublishCount(CurUser curUser) {
@GetMapping(value = "/iLessonCount")
public Result ILessonCountDTO(CurUser curUser) {
String userId = curUser.getUserId();
return Result.builder(new PersistModel(1),
MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR,
bLessonService.iPublishCount(userId));
bLessonService.iLessonCount(userId));
}
......
package org.rcisoft.business.blesson.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.rcisoft.business.blesson.entity.BLesson;
import org.rcisoft.business.blesson.dto.ILearnLessonDTO;
import org.rcisoft.business.blesson.service.BLessonPersonService;
import org.rcisoft.common.controller.PaginationController;
import org.rcisoft.common.model.GridModel;
import org.rcisoft.core.constant.MessageConstant;
import org.rcisoft.core.model.PersistModel;
import org.rcisoft.core.result.Result;
import org.rcisoft.sys.user.bean.CurUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
@Api(tags = "9 学生-课程")
@RestController
@RequestMapping("/BLessonPerson")
@Slf4j
public class BLessonPersonController extends PaginationController<BLesson> {
}
......@@ -40,9 +40,10 @@ public interface BLessonPersonRepository extends BaseMapper<BLabel> {
int quit(String id);
@Select({"<script>",
" select (select COUNT(1) from b_lesson_person where person_id = #{userId} ) learnAllCount, " +
" select " +
"(select COUNT(1) from b_lesson_person where person_id = #{userId} ) learnAllCount, " +
"(select COUNT(1) from b_lesson_person where person_id = #{userId} and is_finish = '1') finishCount, " +
"(select COUNT(1) from b_lesson_person where person_id = #{userId} and is_finish = '0') notFinishCount, " +
"(select COUNT(1) from b_lesson_person where person_id = #{userId} and is_finish = '0') notFinishCount " +
"</script>"})
ILearnCountDTO iLearnLessonCount(String userId);
......
......@@ -2,11 +2,9 @@ package org.rcisoft.business.blesson.dao;
import org.apache.ibatis.annotations.*;
import org.rcisoft.business.blabel.dto.QueryLabelResDTO;
import org.rcisoft.business.blabel.entity.BLabel;
import org.rcisoft.business.blesson.dto.BLessonIPublishDTO;
import org.rcisoft.business.blesson.dto.FindAllLessonDTO;
import org.rcisoft.business.blesson.dto.FirstPageQueryDTO;
import org.rcisoft.business.blesson.dto.IPublishCountDTO;
import org.rcisoft.business.blesson.dto.ILessonCountDTO;
import org.rcisoft.business.blesson.entity.BLesson;
import org.rcisoft.business.blesson.entity.BLessonLabel;
import org.rcisoft.core.base.BaseMapper;
......@@ -133,74 +131,165 @@ public interface BLessonRepository extends BaseMapper<BLesson> {
" from b_lesson bl " +
" left join s_user su on su.business_id = bl.lecturer_id " +
" left join s_user suc on suc.business_id = bl.create_by " +
" left join b_viewrange bv on bl.business_id = bv.lesson_id " +
" left join b_viewrange_son bvs on bv.business_id = bvs.viewrange_id " +
// " left join b_course bc on bc.business_id = bl.course_type " +
" where bl.del_flag != 1 and bl.flag = 1 " +
" and su.del_flag != 1 and su.flag = 1 " +
" and suc.del_flag != 1 and suc.flag = 1 " +
" and bv.del_flag != 1 and bv.flag = 1 " +
" and bl.release_state = 2 " +
" order by bl.person_number desc " +
" and ((bvs.type = 0 and bvs.target_id = #{userId}) " +
" or (bvs.type = 1 and bvs.target_id in " +
" <foreach item='item' index='index' collection='departs' open='(' separator=',' close=')'> #{item} </foreach>)) " +
" and bl.person_number > (select `value` from b_dictionary where type = 'ZXRS') " + //ZXRS 在学人数
" order by bl.person_number,bl.release_date desc " +
"</script>")
@ResultMap(value = "BaseResultMap")
List<BLesson> queryPersonMore();
List<BLesson> queryPersonMore(@Param("userId") String userId, @Param("departs") List<String> departs);
/**
* 按学习人数降序查询推荐
* @param
* @return
*/
// @Select(" <script> select bl.* " +
// " ,su.name lecturerName " +
// " ,suc.name createByName " +
// " from b_recommend br " +
// " left join b_lesson bl on br.lesson_id = bl.business_id " +
// " left join s_user su on su.business_id = bl.lecturer_id " +
// " left join s_user suc on suc.business_id = bl.create_by " +
// " where bl.del_flag != 1 and bl.flag = 1 " +
// " and su.del_flag != 1 and su.flag = 1 " +
// " and suc.del_flag != 1 and suc.flag = 1 " +
// " and bl.release_state = 2 " +
// " and br.person_id = #{userId} " +
// " order by bl.recommend_time desc " +
// "</script>")
@Select(" <script> select bl.* " +
" ,su.name lecturerName " +
" ,suc.name createByName " +
" from b_recommend br " +
" left join b_lesson bl on br.lesson_id = bl.business_id " +
" from b_lesson bl " +
" left join s_user su on su.business_id = bl.lecturer_id " +
" left join s_user suc on suc.business_id = bl.create_by " +
" left join b_recommend br on bl.business_id = br.lesson_id " +
" left join b_recommend_son brs on br.business_id = brs.recommend_id " +
// " left join b_course bc on bc.business_id = bl.course_type " +
" where bl.del_flag != 1 and bl.flag = 1 " +
" and su.del_flag != 1 and su.flag = 1 " +
" and suc.del_flag != 1 and suc.flag = 1 " +
" and br.del_flag != 1 and br.flag = 1 " +
" and bl.release_state = 2 " +
" and br.person_id = #{userId} " +
" order by bl.person_number desc " +
" and ((brs.type = 0 and brs.target_id = #{userId}) " +
" or (brs.type = 1 and brs.target_id in " +
" <foreach item='item' index='index' collection='departs' open='(' separator=',' close=')'> #{item} </foreach>)) " +
" order by br.update_date " +
"</script>")
@ResultMap(value = "BaseResultMap")
List<BLesson> queryRecommend(String userId);
List<BLesson> queryRecommend(@Param("userId") String userId,@Param("departs") List<String> departs);
/**
* 按学习人数降序查询
* @param
* @return
*/
// @Select(" <script> select bl.* " +
// " ,su.name lecturerName " +
// " ,suc.name createByName " +
// " from b_lesson bl " +
// " left join s_user su on su.business_id = bl.lecturer_id " +
//
// //" and su.COP == " //企业id
//
// " left join s_user suc on suc.business_id = bl.create_by " +
//// " left join b_course bc on bc.business_id = bl.course_type " +
// " where bl.del_flag != 1 and bl.flag = 1 " +
//
// //" and COP == " //企业id
//
// " and su.del_flag != 1 and su.flag = 1 " +
// " and suc.del_flag != 1 and suc.flag = 1 " +
// " and bl.release_state = 2 " +
// " order by bl.collect_number desc " +
// "</script>")
@Select(" <script> select bl.* " +
" ,su.name lecturerName " +
" ,suc.name createByName " +
" from b_lesson bl " +
" left join s_user su on su.business_id = bl.lecturer_id " +
" left join s_user suc on suc.business_id = bl.create_by " +
" left join b_viewrange bv on bl.business_id = bv.lesson_id " +
" left join b_viewrange_son bvs on bv.business_id = bvs.viewrange_id " +
// " left join b_course bc on bc.business_id = bl.course_type " +
" where bl.del_flag != 1 and bl.flag = 1 " +
" and su.del_flag != 1 and su.flag = 1 " +
" and suc.del_flag != 1 and suc.flag = 1 " +
" and bv.del_flag != 1 and bv.flag = 1 " +
" and bl.release_state = 2 " +
" order by bl.collect_number desc " +
" and ((bvs.type = 0 and bvs.target_id = #{userId}) " +
" or (bvs.type = 1 and bvs.target_id in " +
" <foreach item='item' index='index' collection='departs' open='(' separator=',' close=')'> #{item} </foreach>)) " +
" and bl.person_number > (select `value` from b_dictionary where type = 'GZRS') " + //ZXRS 关注人数
" order by bl.collect_number,bl.release_date desc " +
"</script>")
@ResultMap(value = "BaseResultMap")
List<BLesson> queryConcern();
List<BLesson> queryConcern(@Param("userId") String userId, @Param("departs") List<String> departs);
@Select(" <script> select bl.* " +
" ,su.name lecturerName " +
" ,suc.name createByName " +
" from b_lesson bl " +
" left join s_user su on su.business_id = bl.lecturer_id " +
" left join s_user suc on suc.business_id = bl.create_by " +
// " left join b_course bc on bc.business_id = bl.course_type " +
" where bl.del_flag != 1 and bl.flag = 1 " +
" and su.del_flag != 1 and su.flag = 1 " +
" and suc.del_flag != 1 and suc.flag = 1 " +
" and bl.release_state = 2 " +
" order by bl.hot_number desc " +
"</script>")
@ResultMap(value = "BaseResultMap")
List<BLesson> queryInterested();
// @Select(" <script> select bl.* " +
// " ,su.name lecturerName " +
// " ,suc.name createByName " +
// " from b_lesson bl " +
// " left join s_user su on su.business_id = bl.lecturer_id " +
// " left join s_user suc on suc.business_id = bl.create_by " +
//// " left join b_course bc on bc.business_id = bl.course_type " +
// " where bl.del_flag != 1 and bl.flag = 1 " +
// " and su.del_flag != 1 and su.flag = 1 " +
// " and suc.del_flag != 1 and suc.flag = 1 " +
// " and bl.release_state = 2 " +
// " order by bl.hot_number desc " +
// "</script>")
// @ResultMap(value = "BaseResultMap")
@Select(" <script> SELECT b.* " +
" ,su.name lecturerName " +
" ,suc.name createByName " +
" FROM " +
" b_lesson b " +
" LEFT JOIN b_lesson_label bl ON b.business_id = bl.lesson_id" +
" inner JOIN ( " +
" SELECT " +
" bla.business_id AS bussinessId, " +
" count( 1 ) AS bsum " +
" FROM " +
" b_label bla " +
" LEFT JOIN b_lesson_label bl ON bla.business_id = bl.label_id " +
" LEFT JOIN b_lesson b ON bl.lesson_id = b.business_id " +
" LEFT JOIN b_lesson_person bp ON b.business_id = bp.lesson_id " +
" WHERE " +
" bp.person_id = #{userId} " +
" and b.del_flag != 1 and b.flag = 1 " +
" and bp.del_flag != 1 and bp.flag = 1 " +
" GROUP BY " +
" bla.business_id " +
" ) T ON T.bussinessId = bl.label_id " +
" left join s_user su on su.business_id = b.lecturer_id " +
" left join s_user suc on suc.business_id = b.create_by " +
" left join b_viewrange bv on bl.business_id = bv.lesson_id " +
" left join b_viewrange_son bvs on bv.business_id = bvs.viewrange_id " +
" where b.del_flag != 1 and b.flag = 1 " +
" and su.del_flag != 1 and su.flag = 1 " +
" and suc.del_flag != 1 and suc.flag = 1 " +
" and bv.del_flag != 1 and bv.flag = 1 " +
" and b.business_id not in (SELECT DISTINCT b.business_id from " +
" b_lesson b left join b_lesson_person blp on b.business_id = blp.lesson_id " +
" where blp.person_id = #{userId} ) " +
" and b.release_state = 2 " +
" and ((bvs.type = 0 and bvs.target_id = #{userId}) " +
" or (bvs.type = 1 and bvs.target_id in " +
" <foreach item='item' index='index' collection='departs' open='(' separator=',' close=')'> #{item} </foreach>)) " +
" order by T.bsum , b.collect_number " +
"</script>")
List<BLesson> queryInterested(@Param("userId") String userId, @Param("departs") List<String> departs);
//查询课程中的标签
@Select(" <script> select blb.business_id businessId,blb.l_name lName" +
......@@ -255,9 +344,12 @@ public interface BLessonRepository extends BaseMapper<BLesson> {
" select (select COUNT(1) from b_lesson where lecturer_id = #{userId} ) publishAllCount, " +
"(select COUNT(1) from b_lesson where lecturer_id = #{userId} and release_state = '0') notPublishCount, " +
"(select COUNT(1) from b_lesson where lecturer_id = #{userId} and release_state = '2') publishedCount, " +
"(select COUNT(1) from b_lesson where lecturer_id = #{userId} and release_state = '4') closedCount "+
"(select COUNT(1) from b_lesson where lecturer_id = #{userId} and release_state = '4') closedCount, "+
"(select COUNT(1) from b_lesson_person where person_id = #{userId} ) learnAllCount, " +
"(select COUNT(1) from b_lesson_person where person_id = #{userId} and is_finish = '1') finishCount, " +
"(select COUNT(1) from b_lesson_person where person_id = #{userId} and is_finish = '0') notFinishCount " +
"</script>"})
IPublishCountDTO iPublishCount(String userId);
ILessonCountDTO iLessonCount(String userId);
}
......@@ -6,13 +6,5 @@ import lombok.Data;
@Data
public class ILearnCountDTO {
@ApiModelProperty(value = "我学习全部课程数量")
private String learnAllCount;
@ApiModelProperty(value = "我学完课程数量")
private String finishCount;
@ApiModelProperty(value = "我未学完课程数量")
private String notFinishCount;
}
......@@ -4,7 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class IPublishCountDTO {
public class ILessonCountDTO {
@ApiModelProperty(value = "我发布全部课程数量")
private String publishAllCount;
......@@ -17,4 +17,14 @@ public class IPublishCountDTO {
@ApiModelProperty(value = "我发布已关闭课程数量")
private String closedCount;
@ApiModelProperty(value = "我学习全部课程数量")
private String learnAllCount;
@ApiModelProperty(value = "我学完课程数量")
private String finishCount;
@ApiModelProperty(value = "我未学完课程数量")
private String notFinishCount;
}
......@@ -50,7 +50,7 @@ public interface BLessonService{
* @param
* @return
*/
List<BLesson> queryPersonMoreByPagination(PageUtil pageUtil);
List<BLesson> queryPersonMoreByPagination(PageUtil pageUtil,String userId);
/**
* 分页查找推荐
......@@ -66,7 +66,7 @@ public interface BLessonService{
* @param
* @return
*/
List<BLesson> queryConcernByPagination(PageUtil pageUtil);
List<BLesson> queryConcernByPagination(PageUtil pageUtil,String userId);
/**
* 分页查找可能感兴趣的
......@@ -74,7 +74,7 @@ public interface BLessonService{
* @param
* @return
*/
List<BLesson> queryInterestedByPagination(PageUtil pageUtil);
List<BLesson> queryInterestedByPagination(PageUtil pageUtil,String userId);
/**
* 插入
......@@ -116,6 +116,6 @@ public interface BLessonService{
* @param userId
* @return
*/
IPublishCountDTO iPublishCount(String userId);
ILessonCountDTO iLessonCount(String userId);
}
......@@ -73,21 +73,37 @@ public class BLessonServiceImpl implements BLessonService {
}
@Override
public List<BLesson> queryPersonMoreByPagination(PageUtil pageUtil) {
return bLessonRepository.queryPersonMore();
public List<BLesson> queryPersonMoreByPagination(PageUtil pageUtil, String userId) {
List<String> departs = new ArrayList<>();
departs.add("1");
departs.add("2");
departs.add("3");
return bLessonRepository.queryPersonMore(userId,departs);
}
@Override
public List<BLesson> queryRecommendByPagination(PageUtil pageUtil,String userId) {
return bLessonRepository.queryRecommend(userId);
List<String> departs = new ArrayList<>();
departs.add("1");
departs.add("2");
departs.add("3");
return bLessonRepository.queryRecommend(userId,departs);
}
@Override
public List<BLesson> queryConcernByPagination(PageUtil pageUtil) {
return bLessonRepository.queryConcern();
public List<BLesson> queryConcernByPagination(PageUtil pageUtil,String userId) {
List<String> departs = new ArrayList<>();
departs.add("1");
departs.add("2");
departs.add("3");
return bLessonRepository.queryConcern(userId,departs);
}
@Override
public List<BLesson> queryInterestedByPagination(PageUtil pageUtil) {
return bLessonRepository.queryInterested();
public List<BLesson> queryInterestedByPagination(PageUtil pageUtil,String userId) {
List<String> departs = new ArrayList<>();
departs.add("1");
departs.add("2");
departs.add("3");
return bLessonRepository.queryInterested(userId,departs);
}
......@@ -196,8 +212,8 @@ public class BLessonServiceImpl implements BLessonService {
}
@Override
public IPublishCountDTO iPublishCount(String userId) {
return bLessonRepository.iPublishCount(userId);
public ILessonCountDTO iLessonCount(String userId) {
return bLessonRepository.iLessonCount(userId);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment