子查询 以及 扫描路径

This commit is contained in:
2024-12-30 21:21:49 +08:00
parent d496efb196
commit 435421be0a
7 changed files with 82 additions and 81 deletions

View File

@@ -22,9 +22,9 @@ import javax.servlet.http.HttpServletRequest;
@Slf4j @Slf4j
public class AppApiMethodAspect { public class AppApiMethodAspect {
@Pointcut("execution(public * (com.sqx.modules.*.controller.*).*(..)) " + @Pointcut(" execution(public * (com.sqx.modules.*.controller.*).*(..)) " +
"&& " + "&& execution(public * (com.sqx.modules.app.*.controller.*).*(..))" +
"!execution(public * (com.sqx.modules.sys.controller.SysLoginController).*(..))") "&& !execution(public * (com.sqx.modules.sys.controller.SysLoginController).*(..)) ")
public void pkg() { public void pkg() {
} }

View File

@@ -61,11 +61,11 @@ public class CourseController extends AbstractController {
} }
@GetMapping("/selectCourseUserbyid") // @GetMapping("/selectCourseUserbyid")
@ApiOperation("我的短剧") // @ApiOperation("我的短剧")
public Result selectCourseUser(Integer page, Integer limit, Long userId) { // public Result selectCourseUser(Integer page, Integer limit, Long userId) {
return courseUserService.selectCourseUser(page, limit, userId); // return courseUserService.selectCourseUser(page, limit, userId);
} // }
@GetMapping("/updateCourse") @GetMapping("/updateCourse")
@ApiOperation("修改状态") @ApiOperation("修改状态")

View File

@@ -19,12 +19,12 @@ public class AppCourseUserController extends AbstractController {
@Autowired @Autowired
private CourseUserService courseUserService; private CourseUserService courseUserService;
@Login // @Login
@GetMapping("/selectCourseUser") // @GetMapping("/selectCourseUser")
@ApiOperation("App我的短剧") // @ApiOperation("App我的短剧")
public Result selectCourseUser(Integer page, Integer limit, Long userId) { // public Result selectCourseUser(Integer page, Integer limit, Long userId) {
return courseUserService.selectCourseUser(page, limit, userId); // return courseUserService.selectCourseUser(page, limit, userId);
} // }
@Login @Login
@GetMapping("/updateTime") @GetMapping("/updateTime")
@@ -33,12 +33,12 @@ public class AppCourseUserController extends AbstractController {
courseUserService.updateTime(courseId); courseUserService.updateTime(courseId);
} }
@Login // @Login
@GetMapping("/selectLatelyCourse") // @GetMapping("/selectLatelyCourse")
@ApiOperation("最近学习") // @ApiOperation("最近学习")
public Result selectLatelyCourse(Integer page, Integer limit, Long userId) { // public Result selectLatelyCourse(Integer page, Integer limit, Long userId) {
return courseUserService.selectLatelyCourse(page, limit, userId); // return courseUserService.selectLatelyCourse(page, limit, userId);
} // }

View File

@@ -13,9 +13,10 @@ import java.util.List;
@Mapper @Mapper
public interface CourseUserDao extends BaseMapper<CourseUser> { public interface CourseUserDao extends BaseMapper<CourseUser> {
IPage<Course> selectLatelyCourse(Page<Course> pages, @Param("userId") Long userId); // IPage<Course> selectLatelyCourse(Page<Course> pages, @Param("userId") Long userId);
IPage<Course> selectCourseByCourseUser(Page<Course> pages, @Param("userId") Long userId); //子查询不能用
// IPage<Course> selectCourseByCourseUser(Page<Course> pages, @Param("userId") Long userId);
/** /**
* 查询用户是否订购 * 查询用户是否订购

View File

@@ -9,9 +9,9 @@ public interface CourseUserService extends IService<CourseUser> {
void updateTime(Long courseId); void updateTime(Long courseId);
Result selectCourseUser(Integer page, Integer limit, Long userId); // Result selectCourseUser(Integer page, Integer limit, Long userId);
Result selectLatelyCourse(Integer page, Integer limit, Long userId); // Result selectLatelyCourse(Integer page, Integer limit, Long userId);
Result insertCourseUser(CourseUser courseUser); Result insertCourseUser(CourseUser courseUser);
} }

View File

@@ -42,40 +42,40 @@ public class CourseUserServiceImpl extends ServiceImpl<CourseUserDao, CourseUser
baseMapper.update(bean, updateWrapper); baseMapper.update(bean, updateWrapper);
} }
@Override // @Override
public Result selectCourseUser(Integer page, Integer limit, Long userId) { // public Result selectCourseUser(Integer page, Integer limit, Long userId) {
Page<Course> courseUserPage = new Page<>(page, limit); // Page<Course> courseUserPage = new Page<>(page, limit);
IPage<Course> iPage = baseMapper.selectCourseByCourseUser(courseUserPage, userId); // IPage<Course> iPage = baseMapper.selectCourseByCourseUser(courseUserPage, userId);
//
// List<Course> courses = iPage.getRecords();
// if (courses != null && courses.size() > 0) {
// for (Course course : courses) {
// Orders orders = ordersService.selectOrdersByCourseIdAndUserId(userId, course.getCourseId());
// if(orders!=null){
// course.setOrders(orders);
// }
// course.setCourseClassification(courseClassificationDao.selectById(course.getClassifyId()));
// }
// }
// return Result.success().put("data", new PageUtils(iPage));
// }
List<Course> courses = iPage.getRecords(); // @Override
if (courses != null && courses.size() > 0) { // public Result selectLatelyCourse(Integer page, Integer limit, Long userId) {
for (Course course : courses) { // Page<Course> pages = new Page<>(page, limit);
Orders orders = ordersService.selectOrdersByCourseIdAndUserId(userId, course.getCourseId()); // IPage<Course> iPage = baseMapper.selectLatelyCourse(pages, userId);
if(orders!=null){ // List<Course> courses = iPage.getRecords();
course.setOrders(orders); // if (courses != null && courses.size() > 0) {
} // for (Course course : courses) {
course.setCourseClassification(courseClassificationDao.selectById(course.getClassifyId())); // Orders orders = ordersService.selectOrdersByCourseIdAndUserId(userId, course.getCourseId());
} // if(orders!=null){
} // course.setOrders(orders);
return Result.success().put("data", new PageUtils(iPage)); // }
} // course.setCourseClassification(courseClassificationDao.selectById(course.getClassifyId()));
// }
@Override // }
public Result selectLatelyCourse(Integer page, Integer limit, Long userId) { // return Result.success().put("data", new PageUtils(iPage));
Page<Course> pages = new Page<>(page, limit); // }
IPage<Course> iPage = baseMapper.selectLatelyCourse(pages, userId);
List<Course> courses = iPage.getRecords();
if (courses != null && courses.size() > 0) {
for (Course course : courses) {
Orders orders = ordersService.selectOrdersByCourseIdAndUserId(userId, course.getCourseId());
if(orders!=null){
course.setOrders(orders);
}
course.setCourseClassification(courseClassificationDao.selectById(course.getClassifyId()));
}
}
return Result.success().put("data", new PageUtils(iPage));
}
@Override @Override

View File

@@ -2,31 +2,31 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.sqx.modules.course.dao.CourseUserDao"> <mapper namespace="com.sqx.modules.course.dao.CourseUserDao">
<select id="selectLatelyCourse" resultType="com.sqx.modules.course.entity.Course"> <!-- <select id="selectLatelyCourse" resultType="com.sqx.modules.course.entity.Course">-->
select c.*,(select count(*) from course_user cu where cu.course_id=u.course_id) as courseCount, <!-- select c.*,(select count(*) from course_user cu where cu.course_id=u.course_id) as courseCount,-->
(select group_concat(avatar) from <!-- (select group_concat(avatar) from-->
(SELECT tu.avatar,course_id FROM course_user o <!-- (SELECT tu.avatar,course_id FROM course_user o-->
left join tb_user tu on tu.user_id=o.user_id <!-- left join tb_user tu on tu.user_id=o.user_id-->
GROUP BY course_id,tu.avatar <!-- GROUP BY course_id,tu.avatar-->
limit 3 <!-- limit 3-->
) a where a.course_id=u.course_id ) as avatar from course_user u <!-- ) a where a.course_id=u.course_id ) as avatar from course_user u-->
left join course c on u.course_id=c.course_id <!-- left join course c on u.course_id=c.course_id-->
where u.user_id=#{userId} and c.is_delete=0 order by update_time desc <!-- where u.user_id=#{userId} and c.is_delete=0 order by update_time desc-->
</select> <!-- </select>-->
<select id="selectCourseByCourseUser" resultType="com.sqx.modules.course.entity.Course"> <!-- <select id="selectCourseByCourseUser" resultType="com.sqx.modules.course.entity.Course">-->
select c.*,(select count(*) from course_user cu where cu.course_id=u.course_id) as courseCount, <!-- select c.*,(select count(*) from course_user cu where cu.course_id=u.course_id) as courseCount,-->
(select group_concat(avatar) from <!-- (select group_concat(avatar) from-->
(SELECT tu.avatar,course_id FROM course_user o <!-- (SELECT tu.avatar,course_id FROM course_user o-->
left join tb_user tu on tu.user_id=o.user_id <!-- left join tb_user tu on tu.user_id=o.user_id-->
GROUP BY course_id,tu.avatar <!-- GROUP BY course_id,tu.avatar-->
limit 3 <!-- limit 3-->
) a where a.course_id=u.course_id ) as avatar <!-- ) a where a.course_id=u.course_id ) as avatar-->
from course_user u <!-- from course_user u-->
left join course c on u.course_id=c.course_id <!-- left join course c on u.course_id=c.course_id-->
where u.user_id=#{userId} and c.is_delete=0 <!-- where u.user_id=#{userId} and c.is_delete=0-->
order by u.create_time desc <!-- order by u.create_time desc-->
</select> <!-- </select>-->
<select id="selectCourseUser" resultType="com.sqx.modules.course.entity.CourseUser"> <select id="selectCourseUser" resultType="com.sqx.modules.course.entity.CourseUser">
select * from course_user u where u.user_id=#{userId} and u.course_id=#{id} and u.classify=1 select * from course_user u where u.user_id=#{userId} and u.course_id=#{id} and u.classify=1