From 64f7ccb9ef8b5a0618e65cddc14b981c1f108ba3 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期一, 04 十一月 2024 09:01:59 +0800 Subject: [PATCH] 代码提交 --- xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientTutorSpecialColumnController.java | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 106 insertions(+), 2 deletions(-) diff --git a/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientTutorSpecialColumnController.java b/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientTutorSpecialColumnController.java index 0116cc2..ad6f279 100644 --- a/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientTutorSpecialColumnController.java +++ b/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientTutorSpecialColumnController.java @@ -1,8 +1,36 @@ package com.xinquan.course.controller.client; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.xinquan.common.core.domain.R; +import com.xinquan.common.core.utils.page.BeanUtils; +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.course.api.domain.Course; +import com.xinquan.course.api.domain.CourseCategory; +import com.xinquan.course.domain.TutorSpecialColumn; +import com.xinquan.course.domain.TutorSpecialColumnCourse; +import com.xinquan.course.domain.vo.ClientCourseVO; +import com.xinquan.course.domain.vo.TutorCourseVO; +import com.xinquan.course.domain.vo.TutorVo; +import com.xinquan.course.service.CourseCategoryService; +import com.xinquan.course.service.CourseService; +import com.xinquan.course.service.TutorSpecialColumnCourseService; +import com.xinquan.course.service.TutorSpecialColumnService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; /** * <p> @@ -16,5 +44,81 @@ @RequestMapping("/client/course/tutor-special-column") public class ClientTutorSpecialColumnController { + @Resource + private TutorSpecialColumnService tutorSpecialColumnService; + @Resource + private TutorSpecialColumnCourseService tutorSpecialColumnCourseService; + @Resource + private CourseCategoryService courseCategoryService; + @Resource + private CourseService courseService; + @PostMapping("/getCoursePageList") + @ApiOperation(value = "导师专栏",tags = "导师专栏") + public R<TutorVo> getCourseList() { + TutorVo tutorVo = new TutorVo(); + TutorSpecialColumn one = tutorSpecialColumnService.lambdaQuery().one(); + List<TutorCourseVO> clientCourseVOS = new ArrayList<>(); + if (one!=null){ + TutorSpecialColumnCourse one1 = tutorSpecialColumnCourseService.lambdaQuery().eq(TutorSpecialColumnCourse::getTutorSpecialColumnId, one.getId()).one(); + BeanUtils.copyProperties(one, tutorVo); + List<Course> page = courseService.lambdaQuery() + .in(Course::getId, Arrays.asList(one1.getCourseId().split(","))) + .orderByDesc(Course::getSortNum).list().stream().limit(2).collect(Collectors.toList()); + for (Course course : page) { + TutorCourseVO tutorCourseVO = new TutorCourseVO(); + BeanUtils.copyProperties(course, tutorCourseVO); + clientCourseVOS.add(tutorCourseVO); + } + tutorVo.setList(clientCourseVOS); + return R.ok(tutorVo); + }else{ + tutorVo.setList(clientCourseVOS); + return R.ok(tutorVo); + } + } + @GetMapping("/detailTutor") + @ApiOperation(value = "查看详情导师专栏", tags = "管理后台-导师专栏") + public R<TutorSpecialColumn> detailTutor() { + TutorSpecialColumn one = tutorSpecialColumnService.getOne(null); + if (one!=null){ + TutorSpecialColumnCourse one1 = tutorSpecialColumnCourseService.lambdaQuery() + .eq(TutorSpecialColumnCourse::getTutorSpecialColumnId, one.getId()).one(); + if (one1!=null){ + List<String> collect = Arrays.asList(one1.getCourseId().split(",")); + List<Course> list = courseService.lambdaQuery().in(Course::getId, collect).list(); + for (Course course : list) { + CourseCategory byId = courseCategoryService.getById(course.getCateId()); + if (byId!=null){ + course.setCategoryName(byId.getName()); + } + } + one.setCourses(list); + } + } + return R.ok(one); + } + @PostMapping("/updateTutor") + @ApiOperation(value = "修改分类导师专栏", tags = "管理后台-导师专栏") + public R updateTutor(@RequestBody TutorSpecialColumn homeBackgroundMusic) { + TutorSpecialColumn one = tutorSpecialColumnService.getOne(null); + if (one == null){ + tutorSpecialColumnService.save(homeBackgroundMusic); + } + homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername()); + homeBackgroundMusic.setUpdateTime(LocalDateTime.now()); + List<Long> collect = tutorSpecialColumnCourseService.lambdaQuery() + .eq(TutorSpecialColumnCourse::getTutorSpecialColumnId, homeBackgroundMusic.getId()) + .list().stream().map(TutorSpecialColumnCourse::getId) + .collect(Collectors.toList()); + tutorSpecialColumnCourseService.removeBatchByIds(collect); + List<TutorSpecialColumnCourse> tutorSpecialColumnCourses = new ArrayList<>(); + TutorSpecialColumnCourse tutorSpecialColumnCourse = new TutorSpecialColumnCourse(); + tutorSpecialColumnCourse.setCourseId(homeBackgroundMusic.getCourseIds()); + tutorSpecialColumnCourse.setTutorSpecialColumnId(homeBackgroundMusic.getId()); + tutorSpecialColumnCourses.add(tutorSpecialColumnCourse); + tutorSpecialColumnCourseService.saveBatch(tutorSpecialColumnCourses); + return R.ok(tutorSpecialColumnService.updateById(homeBackgroundMusic)); + } + } -- Gitblit v1.7.1