课程、章节评论

This commit is contained in:
wuchunlei
2024-06-12 16:38:34 +08:00
parent 501db3f59d
commit 85901e1996
9 changed files with 230 additions and 1 deletions

View File

@@ -0,0 +1,35 @@
package com.peanut.modules.common.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.peanut.common.utils.R;
import com.peanut.modules.common.entity.CourseGuestbook;
import com.peanut.modules.common.service.CourseGuestbookService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
@Slf4j
@RestController("commonCourseGuestbook")
@RequestMapping("common/courseGuestbook")
public class CourseGuestbookController {
@Autowired
private CourseGuestbookService service;
@RequestMapping("/getCourseGuestbookList")
public R getCourseGuestbookList(@RequestBody Map<String,Object> map){
Page courseGuestbookList = service.getCourseGuestbookList(map);
return R.ok().put("page",courseGuestbookList);
}
@RequestMapping("/addCourseGuestbook")
public R addCourseGuestbook(@RequestBody CourseGuestbook courseGuestbook){
service.save(courseGuestbook);
return R.ok();
}
}

View File

@@ -0,0 +1,9 @@
package com.peanut.modules.common.dao;
import com.github.yulichang.base.MPJBaseMapper;
import com.peanut.modules.common.entity.CourseGuestbook;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface CourseGuestbookDao extends MPJBaseMapper<CourseGuestbook> {
}

View File

@@ -43,5 +43,7 @@ public class CourseGuestbook {
@TableField(exist = false)
private List<CourseGuestbook> children;
@TableField(exist = false)
private MyUserEntity user;
}

View File

@@ -0,0 +1,12 @@
package com.peanut.modules.common.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.peanut.modules.common.entity.CourseGuestbook;
import java.util.Map;
public interface CourseGuestbookService extends IService<CourseGuestbook> {
Page getCourseGuestbookList(Map<String ,Object> map);
}

View File

@@ -0,0 +1,59 @@
package com.peanut.modules.common.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.modules.common.dao.CourseGuestbookDao;
import com.peanut.modules.common.dao.MyUserDao;
import com.peanut.modules.common.entity.CourseGuestbook;
import com.peanut.modules.common.entity.MyUserEntity;
import com.peanut.modules.common.service.CourseGuestbookService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
@Slf4j
@Service("commonCourseGuestbookService")
public class CourseGuestbookServiceImpl extends ServiceImpl<CourseGuestbookDao, CourseGuestbook> implements CourseGuestbookService {
@Autowired
private MyUserDao userDao;
@Override
public Page getCourseGuestbookList(Map<String, Object> map) {
Integer limit = Integer.valueOf(map.get("limit").toString());
Integer page = Integer.valueOf(map.get("page").toString());
MPJLambdaWrapper<CourseGuestbook> wrapper = new MPJLambdaWrapper<>();
if (StringUtils.isNotEmpty(map.get("courseId").toString())){
wrapper.eq(CourseGuestbook::getCourseId,map.get("courseId"));
}
if (StringUtils.isNotEmpty(map.get("chapterId").toString())){
wrapper.eq(CourseGuestbook::getChapterId,map.get("chapterId"));
}
wrapper.eq(CourseGuestbook::getPid,0);
wrapper.orderByAsc(CourseGuestbook::getCreateTime);
Page<CourseGuestbook> courseGuestbookPage = this.getBaseMapper().selectPage(new Page<>(page, limit), wrapper);
if (courseGuestbookPage != null&&courseGuestbookPage.getRecords().size() > 0){
for (CourseGuestbook courseGuestbook : courseGuestbookPage.getRecords()) {
courseGuestbook.setUser(userDao.selectById(courseGuestbook.getUserId()));
MPJLambdaWrapper<CourseGuestbook> w = new MPJLambdaWrapper();
w.eq(CourseGuestbook::getPid,courseGuestbook.getId());
w.orderByAsc(CourseGuestbook::getCreateTime);
List<CourseGuestbook> list = this.getBaseMapper().selectList(w);
if (list.size() > 0) {
for (CourseGuestbook c : list){
c.setUser(userDao.selectById(courseGuestbook.getUserId()));
}
}
courseGuestbook.setChildren(list);
}
}
return courseGuestbookPage;
}
}

View File

@@ -114,11 +114,14 @@ public class CourseController {
courseCatalogueChapterService.updateById(courseCatalogueChapterEntity);
//修改视频
if (courseCatalogueChapterEntity.getVideoList()!=null&&courseCatalogueChapterEntity.getVideoList().size() > 0){
LambdaQueryWrapper<CourseCatalogueChapterVideoEntity> wrapper = new LambdaQueryWrapper();
wrapper.eq(CourseCatalogueChapterVideoEntity::getChapterId,courseCatalogueChapterEntity.getId());
courseCatalogueChapterVideoService.remove(wrapper);
for (CourseCatalogueChapterVideoEntity c:courseCatalogueChapterEntity.getVideoList()) {
if (c.getId()==0){
courseCatalogueChapterVideoService.save(c);
}else {
courseCatalogueChapterVideoService.updateById(c);
courseCatalogueChapterVideoService.saveOrUpdate(c);
}
}
}

View File

@@ -0,0 +1,52 @@
package com.peanut.modules.master.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.peanut.common.utils.R;
import com.peanut.modules.common.entity.CourseGuestbook;
import com.peanut.modules.master.service.CourseGuestbookService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
@Slf4j
@RestController("masterCourseGuestbook")
@RequestMapping("master/courseGuestbook")
public class CourseGuestbookController {
@Autowired
private CourseGuestbookService service;
@RequestMapping("/getCourseGuestbookList")
public R getCourseGuestbookList(@RequestBody Map<String,Object> map){
Page courseGuestbookList = service.getCourseGuestbookList(map);
return R.ok().put("page",courseGuestbookList);
}
@RequestMapping("/addCourseGuestbook")
public R addCourseGuestbook(@RequestBody CourseGuestbook courseGuestbook){
service.save(courseGuestbook);
return R.ok();
}
@RequestMapping("/delCourseGuestbook")
public R delCourseGuestbook(@RequestBody Map<String,Object> map){
service.removeById(map.get("id").toString());
return R.ok();
}
@RequestMapping("/editCourseGuestbook")
public R editCourseGuestbook(@RequestBody CourseGuestbook courseGuestbook){
service.updateById(courseGuestbook);
return R.ok();
}
@RequestMapping("/getCourseGuestbookDetail")
public R getCourseGuestbookDetail(@RequestBody Map<String,Object> map){
CourseGuestbook courseGuestbook = service.getById(map.get("id").toString());
return R.ok().put("courseGuestbook",courseGuestbook);
}
}

View File

@@ -0,0 +1,14 @@
package com.peanut.modules.master.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.peanut.modules.common.entity.CourseGuestbook;
import java.util.Map;
public interface CourseGuestbookService extends IService<CourseGuestbook> {
Page getCourseGuestbookList(Map<String ,Object> map);
}

View File

@@ -0,0 +1,43 @@
package com.peanut.modules.master.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.modules.common.dao.CourseGuestbookDao;
import com.peanut.modules.common.entity.CourseGuestbook;
import com.peanut.modules.master.service.CourseGuestbookService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
import java.util.Map;
@Slf4j
@Service("masterCourseGuestbookService")
public class CourseGuestbookServiceImpl extends ServiceImpl<CourseGuestbookDao, CourseGuestbook> implements CourseGuestbookService {
@Override
public Page getCourseGuestbookList(Map<String, Object> map) {
Integer limit = Integer.valueOf(map.get("limit").toString());
Integer page = Integer.valueOf(map.get("page").toString());
MPJLambdaWrapper<CourseGuestbook> wrapper = new MPJLambdaWrapper<>();
wrapper.eq(CourseGuestbook::getType,map.get("type"));
if (StringUtils.isNotEmpty(map.get("courseId").toString())){
wrapper.eq(CourseGuestbook::getCourseId,map.get("courseId"));
}
if (StringUtils.isNotEmpty(map.get("chapterId").toString())){
wrapper.eq(CourseGuestbook::getChapterId,map.get("chapterId"));
}
wrapper.eq(CourseGuestbook::getPid,0);
wrapper.like(CourseGuestbook::getContent,map.get("content"));
wrapper.orderByAsc(CourseGuestbook::getCreateTime);
Page<CourseGuestbook> courseGuestbookPage = this.getBaseMapper().selectPage(new Page<>(page, limit), wrapper);
if (courseGuestbookPage != null&&courseGuestbookPage.getRecords().size() > 0){
for (CourseGuestbook courseGuestbook : courseGuestbookPage.getRecords()) {
courseGuestbook.setChildren(this.list(new LambdaQueryWrapper<CourseGuestbook>().eq(CourseGuestbook::getPid,courseGuestbook.getId()).orderByAsc(CourseGuestbook::getCreateTime)));
}
}
return courseGuestbookPage;
}
}