From fe4f4a52ce1a2b92412eb8f2500cd0154e4dd15a Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期三, 24 四月 2024 14:02:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
rest/src/main/java/cn/stylefeng/rest/modular/user/controller/CourseController.java | 119 ++++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 85 insertions(+), 34 deletions(-)
diff --git a/rest/src/main/java/cn/stylefeng/rest/modular/user/controller/CourseController.java b/rest/src/main/java/cn/stylefeng/rest/modular/user/controller/CourseController.java
index 0e3ad33..c605ea6 100644
--- a/rest/src/main/java/cn/stylefeng/rest/modular/user/controller/CourseController.java
+++ b/rest/src/main/java/cn/stylefeng/rest/modular/user/controller/CourseController.java
@@ -120,49 +120,100 @@
return new SuccessResponseData<>(course);
}
@Resource
- private CacheOperatorApi<List<CourseResponseDTO>> roleInfoCacheApi1;
+ private CacheOperatorApi<List<CourseResponseDTO>> roleInfoCacheApi;
/**
* 获取课程管理列表(分页)
*/
@ApiOperation("获取课程管理列表(分页)")
@GetResource(name = "获取课程管理列表(分页)", path = "/page", requiredPermission = false)
- public ResponseData<List<CourseResponseDTO>> page(CourseRequest courseRequest) {
- List<CourseResponseDTO> course = roleInfoCacheApi1.get("course");
- return new SuccessResponseData<>(course);
+ public ResponseData<PageResult<CourseResponseDTO>> page(CourseRequest courseRequest) {
-// LambdaQueryWrapper<Course> lambdaQueryWrapper = new LambdaQueryWrapper<Course>().eq(Course::getIsDelete,false)
-// .orderByDesc(Course::getSort,Course::getCreateTime);
-// if (courseRequest.getListingStatus() != null){
-// lambdaQueryWrapper.eq(Course::getListingStatus,courseRequest.getListingStatus());
+// if (roleInfoCacheApi.get("course:"+LoginContext.me().getLoginUser().getUserId())!=null){
+// return new SuccessResponseData<>(roleInfoCacheApi.get("course:"+LoginContext.me().getLoginUser().getUserId()));
// }else {
-// lambdaQueryWrapper.eq(Course::getListingStatus,1);
-// }
-// lambdaQueryWrapper.like(StrUtil.isNotBlank(courseRequest.getCourseName()),Course::getCourseName,courseRequest.getCourseName());
-// Page<Course> page = this.courseService.page(PageFactory.defaultPage(), lambdaQueryWrapper);
-//
-// if (CollectionUtil.isNotEmpty(page.getRecords())){
-// List<CourseResponseDTO> courseResponseDTOList = BeanUtil.copyToList(page.getRecords(),CourseResponseDTO.class, CopyOptions.create());
-// //查询当前人是否购买过课程
-// List<CourseOrder> courseOrderList = this.courseOrderService.list(new LambdaQueryWrapper<CourseOrder>().select(CourseOrder::getCourseId).eq(CourseOrder::getUserId, LoginContext.me().getLoginUser().getUserId()).eq(CourseOrder::getStatusFlag,1));
-// if (CollectionUtil.isNotEmpty(courseOrderList)){
-// List<Long> courseIds = courseOrderList.stream().map(CourseOrder::getCourseId).collect(Collectors.toList());
-// courseResponseDTOList.forEach(course1 -> {
-// if (courseIds.contains(course1.getId())){
-// course1.setIsBuy(true);
-// CourseOrder courseOrder = this.courseOrderService.getOne(new LambdaQueryWrapper<CourseOrder>().select(CourseOrder::getId).eq(CourseOrder::getUserId, LoginContext.me().getLoginUser().getUserId()).eq(CourseOrder::getStatusFlag,1)
-// .eq(CourseOrder::getCourseId,course1.getId()).orderByAsc(CourseOrder::getPayTime)
-// .last(" limit 1 "));
-// if(courseOrder != null){
-// course1.setCourseOrderId(courseOrder.getId());
-// }
-// }else{
-// course1.setIsBuy(false);
-// }
-// });
+// LambdaQueryWrapper<Course> lambdaQueryWrapper = new LambdaQueryWrapper<Course>().eq(Course::getIsDelete, false)
+// .orderByDesc(Course::getSort, Course::getCreateTime);
+// if (courseRequest.getListingStatus() != null) {
+// lambdaQueryWrapper.eq(Course::getListingStatus, courseRequest.getListingStatus());
+// } else {
+// lambdaQueryWrapper.eq(Course::getListingStatus, 1);
// }
-// return new SuccessResponseData<>(PageResultFactory.createPageResult(courseResponseDTOList,page.getTotal(), Convert.toInt(page.getSize()),Convert.toInt(page.getCurrent())));
+// lambdaQueryWrapper.like(StrUtil.isNotBlank(courseRequest.getCourseName()), Course::getCourseName, courseRequest.getCourseName());
+// List<Course> page = this.courseService.list( lambdaQueryWrapper);
+//
+// if (CollectionUtil.isNotEmpty(page)) {
+// List<CourseResponseDTO> courseResponseDTOList = BeanUtil.copyToList(page, CourseResponseDTO.class, CopyOptions.create());
+// //查询当前人是否购买过课程
+// List<CourseOrder> courseOrderList = this.courseOrderService.list(new LambdaQueryWrapper<CourseOrder>().select(CourseOrder::getCourseId).eq(CourseOrder::getUserId, LoginContext.me().getLoginUser().getUserId()).eq(CourseOrder::getStatusFlag, 1));
+// if (CollectionUtil.isNotEmpty(courseOrderList)) {
+// List<Long> courseIds = courseOrderList.stream().map(CourseOrder::getCourseId).collect(Collectors.toList());
+// courseResponseDTOList.forEach(course1 -> {
+// if (courseIds.contains(course1.getId())) {
+// course1.setIsBuy(true);
+// CourseOrder courseOrder = this.courseOrderService.getOne(new LambdaQueryWrapper<CourseOrder>().select(CourseOrder::getId).eq(CourseOrder::getUserId, LoginContext.me().getLoginUser().getUserId()).eq(CourseOrder::getStatusFlag, 1)
+// .eq(CourseOrder::getCourseId, course1.getId()).orderByAsc(CourseOrder::getPayTime)
+// .last(" limit 1 "));
+// if (courseOrder != null) {
+// course1.setCourseOrderId(courseOrder.getId());
+// }
+// } else {
+// course1.setIsBuy(false);
+// }
+// });
+// }
+// roleInfoCacheApi.put("course:"+LoginContext.me().getLoginUser().getUserId(),courseResponseDTOList,600L);
+// return new SuccessResponseData<>(courseResponseDTOList);
+// }
+//
// }
-// return new SuccessResponseData<>(PageResultFactory.createPageResult(new ArrayList<CourseResponseDTO>(),page.getTotal(), Convert.toInt(page.getSize()),Convert.toInt(page.getCurrent())));
+// return new SuccessResponseData<>();
+
+ //缓存
+//
+// List<Object> course = roleInfoCacheApi.get("course");
+// return new SuccessResponseData<>(course);
+
+ LambdaQueryWrapper<Course> lambdaQueryWrapper = new LambdaQueryWrapper<Course>().eq(Course::getIsDelete,false)
+ .orderByDesc(Course::getSort,Course::getCreateTime);
+ if (courseRequest.getListingStatus() != null){
+ lambdaQueryWrapper.eq(Course::getListingStatus,courseRequest.getListingStatus());
+ }else {
+ lambdaQueryWrapper.eq(Course::getListingStatus,1);
+ }
+ lambdaQueryWrapper.like(StrUtil.isNotBlank(courseRequest.getCourseName()),Course::getCourseName,courseRequest.getCourseName());
+ Page<Course> page = this.courseService.page(PageFactory.defaultPage(), lambdaQueryWrapper);
+
+ if (CollectionUtil.isNotEmpty(page.getRecords())){
+ List<CourseResponseDTO> courseResponseDTOList = BeanUtil.copyToList(page.getRecords(),CourseResponseDTO.class, CopyOptions.create());
+ //查询当前人是否购买过课程
+ List<CourseOrder> courseOrderList = this.courseOrderService.list(new LambdaQueryWrapper<CourseOrder>().select(CourseOrder::getCourseId).eq(CourseOrder::getUserId, LoginContext.me().getLoginUser().getUserId()).eq(CourseOrder::getStatusFlag,1));
+ if (CollectionUtil.isNotEmpty(courseOrderList)){
+ List<Long> courseIds = courseOrderList.stream().map(CourseOrder::getCourseId).collect(Collectors.toList());
+ courseResponseDTOList.forEach(course1 -> {
+ //不返回内容 内容文件太大
+ course1.setCourseContent(null);
+ if (courseIds.contains(course1.getId())){
+ course1.setIsBuy(true);
+ CourseOrder courseOrder = this.courseOrderService.getOne(new LambdaQueryWrapper<CourseOrder>().select(CourseOrder::getId).eq(CourseOrder::getUserId, LoginContext.me().getLoginUser().getUserId()).eq(CourseOrder::getStatusFlag,1)
+ .eq(CourseOrder::getCourseId,course1.getId()).orderByAsc(CourseOrder::getPayTime)
+ .last(" limit 1 "));
+ if(courseOrder != null){
+ course1.setCourseOrderId(courseOrder.getId());
+ }
+ }else{
+ course1.setIsBuy(false);
+ }
+ });
+ }else{
+ courseResponseDTOList.forEach(course1 -> {
+ //不返回内容 内容文件太大
+ course1.setCourseContent(null);
+ course1.setIsBuy(false);
+ });
+ }
+ return new SuccessResponseData<>(PageResultFactory.createPageResult(courseResponseDTOList,page.getTotal(), Convert.toInt(page.getSize()),Convert.toInt(page.getCurrent())));
+ }
+ return new SuccessResponseData<>(PageResultFactory.createPageResult(new ArrayList<CourseResponseDTO>(),page.getTotal(), Convert.toInt(page.getSize()),Convert.toInt(page.getCurrent())));
}
--
Gitblit v1.7.1