You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
4.3 KiB
111 lines
4.3 KiB
1 year ago
|
package com.teaching.backend.controller.favour;
|
||
|
|
||
|
import com.teaching.backend.common.BaseResponse;
|
||
|
import com.teaching.backend.common.ErrorCode;
|
||
|
import com.teaching.backend.common.ResultUtils;
|
||
|
import com.teaching.backend.exception.BusinessException;
|
||
|
|
||
|
|
||
|
import com.teaching.backend.model.dto.favour.courseFavour.CourseFavourAddRequest;
|
||
|
import com.teaching.backend.model.dto.favour.courseFavour.CourseFavourAllRequest;
|
||
|
import com.teaching.backend.model.dto.favour.courseFavour.CourseFavourListRequest;
|
||
|
import com.teaching.backend.service.favour.SeCourseFavourService;
|
||
|
import lombok.extern.slf4j.Slf4j;
|
||
|
import org.apache.commons.lang3.StringUtils;
|
||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||
|
import org.springframework.web.bind.annotation.RestController;
|
||
|
|
||
|
import javax.annotation.Resource;
|
||
|
import java.util.List;
|
||
|
|
||
|
/**
|
||
|
* @Author:youhang
|
||
|
* @Date:2024-05-30-20:22
|
||
|
* @Description:
|
||
|
*/
|
||
|
@RestController
|
||
|
@RequestMapping("/course_favour")
|
||
|
@Slf4j
|
||
|
public class SeCourseFavourController {
|
||
|
|
||
|
@Resource
|
||
|
private SeCourseFavourService seCourseFavourService;
|
||
|
|
||
|
|
||
|
/**
|
||
|
* 点赞
|
||
|
*
|
||
|
* @param courseFavourAddRequest
|
||
|
* @return result 执行情况
|
||
|
*/
|
||
|
@PostMapping("/add")
|
||
|
// todo 后期加上 HttpServletRequest request 在一个fitter里面进行鉴权操作
|
||
|
public BaseResponse<Boolean> doFavour(@RequestBody CourseFavourAddRequest courseFavourAddRequest) {
|
||
|
System.out.println(courseFavourAddRequest);
|
||
|
if (StringUtils.isAnyBlank(courseFavourAddRequest.getCourseId(), courseFavourAddRequest.getUserId())) {
|
||
|
throw new BusinessException(ErrorCode.PARAMS_ERROR);
|
||
|
}
|
||
|
// todo 从数据库中校验是否存在courseid , userid
|
||
|
Boolean result = seCourseFavourService.doCourseFavour(courseFavourAddRequest.getCourseId(), courseFavourAddRequest.getUserId());
|
||
|
return ResultUtils.success(result);
|
||
|
}
|
||
|
|
||
|
|
||
|
/**
|
||
|
* 课程点赞总数
|
||
|
*
|
||
|
* @param courseFavourAddRequest
|
||
|
* @return result 课程点赞总数
|
||
|
*/
|
||
|
@PostMapping("/count")
|
||
|
// todo 后期加上 HttpServletRequest request 在一个fitter里面进行鉴权操作
|
||
|
public BaseResponse<Long> favourCount(@RequestBody CourseFavourAddRequest courseFavourAddRequest) {
|
||
|
if (StringUtils.isAnyBlank(courseFavourAddRequest.getCourseId())) {
|
||
|
throw new BusinessException(ErrorCode.PARAMS_ERROR, "请求参数不能为空");
|
||
|
}
|
||
|
// todo 从数据库中校验是否存在courseid
|
||
|
|
||
|
Long result = seCourseFavourService.favourCount(courseFavourAddRequest.getCourseId());
|
||
|
return ResultUtils.success(result);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 课程下资源和知识点点赞总数
|
||
|
*
|
||
|
* @param courseFavourAllRequest
|
||
|
* @return result 课程下资源和知识点点赞总数
|
||
|
*/
|
||
|
@PostMapping("/countAll")
|
||
|
// todo 后期加上 HttpServletRequest request 在一个fitter里面进行鉴权操作
|
||
|
public BaseResponse<Long> courseCount(@RequestBody CourseFavourAllRequest courseFavourAllRequest) {
|
||
|
if (StringUtils.isAnyBlank(courseFavourAllRequest.getCourseId())) {
|
||
|
throw new BusinessException(ErrorCode.PARAMS_ERROR, "请求参数不能为空");
|
||
|
}
|
||
|
// todo 从数据库中校验是否存在courseid
|
||
|
|
||
|
Long result = seCourseFavourService.courseCount(courseFavourAllRequest.getCourseId());
|
||
|
return ResultUtils.success(result);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 某个用户课程列表
|
||
|
*
|
||
|
* @param courseFavourListRequest
|
||
|
* @return result 某个用户课程列表
|
||
|
*/
|
||
|
@PostMapping("/countList")
|
||
|
// todo 后期加上 HttpServletRequest request 在一个fitter里面进行鉴权操作
|
||
|
public BaseResponse<List<String>> courseList(@RequestBody CourseFavourListRequest courseFavourListRequest) {
|
||
|
if (StringUtils.isAnyBlank(courseFavourListRequest.getUserId())) {
|
||
|
throw new BusinessException(ErrorCode.PARAMS_ERROR, "请求参数-用户id不能为空");
|
||
|
}
|
||
|
// todo 从数据库中校验是否存在userid
|
||
|
List<String> result = seCourseFavourService.courseList(courseFavourListRequest.getUserId());
|
||
|
return ResultUtils.success(result);
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|