From 3f481005be717250a2ea87ff9367aa84d6a3eb13 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期六, 14 九月 2024 10:55:52 +0800 Subject: [PATCH] 课程代码 --- xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserCourseController.java | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 57 insertions(+), 2 deletions(-) diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserCourseController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserCourseController.java index 18a5730..6bdb1cb 100644 --- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserCourseController.java +++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserCourseController.java @@ -1,9 +1,23 @@ package com.xinquan.user.controller.client; -import org.springframework.web.bind.annotation.RequestMapping; +import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.C; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.xinquan.common.core.domain.R; +import com.xinquan.common.core.utils.page.CollUtils; +import com.xinquan.common.core.utils.page.PageDTO; +import com.xinquan.common.security.utils.SecurityUtils; +import com.xinquan.system.api.domain.AppUser; +import com.xinquan.system.api.domain.AppUserCourse; +import com.xinquan.system.api.domain.vo.AppUserVO; +import com.xinquan.user.service.AppUserCourseService; +import com.xinquan.user.service.AppUserService; +import io.swagger.models.auth.In; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -16,6 +30,47 @@ @RestController @RequestMapping("/client/app-user-course") public class ClientAppUserCourseController { + @Resource + private AppUserService appUserService; + @Resource + private AppUserCourseService appUserCourseService; + + /** + * 远程调用 根据课程id 查询拥有课程的用户 + * + * @return 用户信息 + * @see AppUserVO + */ + @GetMapping("/getUserByCourseId/{courseId}") + public R<List<AppUser>> getUserByCourseId(@PathVariable("courseId") Long courseId) { + List<Long> collect = appUserCourseService.lambdaQuery().eq(AppUserCourse::getCourseId, courseId).list() + .stream().map(AppUserCourse::getAppUserId).collect(Collectors.toList()); + // 批量查询用户头像 + List<AppUser> collect1 = appUserService.lambdaQuery().in(!collect.isEmpty(), AppUser::getId, collect).list(); + return R.ok(collect1); + } + /** + * 远程调用 查询当前登录用户已购买课程 + * + * @return 用户信息 + * @see AppUserVO + */ + @GetMapping("/getPayCourse/{pageCurr}/{pageSize}") + public R<PageDTO<AppUserCourse>> getPayCourse(@PathVariable("pageCurr")Integer pageCurr + ,@PathVariable("pageSize")Integer pageSize) { + Page<AppUserCourse> page = appUserCourseService.lambdaQuery() + .eq(AppUserCourse::getCourseId, SecurityUtils.getUserId()) + .orderByDesc(AppUserCourse::getCreateTime) + .page(new Page<>(pageCurr, pageSize)); + if (CollUtils.isEmpty(page.getRecords())) { + PageDTO<AppUserCourse> empty = PageDTO.empty(page); + return R.ok(empty); + } + PageDTO<AppUserCourse> courseChapterPageDTO = PageDTO.of(page, AppUserCourse.class); + return R.ok(courseChapterPageDTO); + } + + } -- Gitblit v1.7.1