From 158fdd8ee200b154d1ad3a6f2ffd7d7bae7aed9e Mon Sep 17 00:00:00 2001 From: wangjinlei <751475802@qq.com> Date: Tue, 26 Mar 2024 14:31:14 +0800 Subject: [PATCH 1/2] 1 --- .../controller/CourseSociologyController.java | 28 +++++++++++++++++++ .../service/CourseSociologyService.java | 7 +++++ .../service/CourseToSociologyService.java | 7 +++++ .../impl/CourseSociologyServiceImpl.java | 13 +++++++++ .../impl/CourseToSociologyServiceImpl.java | 16 +++++++++++ 5 files changed, 71 insertions(+) create mode 100644 src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java create mode 100644 src/main/java/com/peanut/modules/master/service/CourseSociologyService.java create mode 100644 src/main/java/com/peanut/modules/master/service/CourseToSociologyService.java create mode 100644 src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java create mode 100644 src/main/java/com/peanut/modules/master/service/impl/CourseToSociologyServiceImpl.java diff --git a/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java b/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java new file mode 100644 index 00000000..5c691798 --- /dev/null +++ b/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java @@ -0,0 +1,28 @@ +package com.peanut.modules.master.controller; + +import com.peanut.common.utils.R; +import com.peanut.modules.common.to.ParamTo; +import com.peanut.modules.master.service.CourseSociologyService; +import com.peanut.modules.master.service.CourseToSociologyService; +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; + +@Slf4j +@RestController("masterCourseSociology") +@RequestMapping("master/courseSociology") +public class CourseSociologyController { + @Autowired + private CourseSociologyService courseSociologyService; + @Autowired + private CourseToSociologyService courseToSociologyService; + + @RequestMapping("/getCourseSociologyList") + public R getCourseSociologyList(@RequestBody ParamTo param){ + + return R.ok(); + } + +} diff --git a/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java b/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java new file mode 100644 index 00000000..28376aba --- /dev/null +++ b/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java @@ -0,0 +1,7 @@ +package com.peanut.modules.master.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.modules.common.entity.CourseSociologyEntity; + +public interface CourseSociologyService extends IService { +} diff --git a/src/main/java/com/peanut/modules/master/service/CourseToSociologyService.java b/src/main/java/com/peanut/modules/master/service/CourseToSociologyService.java new file mode 100644 index 00000000..ff977657 --- /dev/null +++ b/src/main/java/com/peanut/modules/master/service/CourseToSociologyService.java @@ -0,0 +1,7 @@ +package com.peanut.modules.master.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.modules.common.entity.CourseToSociologyEntity; + +public interface CourseToSociologyService extends IService { +} diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java new file mode 100644 index 00000000..d7139abc --- /dev/null +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java @@ -0,0 +1,13 @@ +package com.peanut.modules.master.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.peanut.modules.common.dao.CourseSociologyDao; +import com.peanut.modules.common.entity.CourseSociologyEntity; +import com.peanut.modules.master.service.CourseSociologyService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Slf4j +@Service("masterCourseSociology") +public class CourseSociologyServiceImpl extends ServiceImpl implements CourseSociologyService { +} diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseToSociologyServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseToSociologyServiceImpl.java new file mode 100644 index 00000000..70f9a7ac --- /dev/null +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseToSociologyServiceImpl.java @@ -0,0 +1,16 @@ +package com.peanut.modules.master.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.peanut.modules.common.dao.CourseToSociologyDao; +import com.peanut.modules.common.entity.CourseToSociologyEntity; +import com.peanut.modules.master.service.CourseToSociologyService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Slf4j +@Service("masterCourseToSociologyService") +public class CourseToSociologyServiceImpl extends ServiceImpl implements CourseToSociologyService { + + + +} From d4f30ed9036f53d5d74bc2cecce8c15138e732d6 Mon Sep 17 00:00:00 2001 From: wangjinlei <751475802@qq.com> Date: Tue, 26 Mar 2024 17:23:15 +0800 Subject: [PATCH 2/2] 1 --- .../common/entity/CourseSociologyEntity.java | 7 ++ .../controller/CourseSociologyController.java | 22 ++++++- .../service/CourseSociologyService.java | 11 ++++ .../impl/CourseSociologyServiceImpl.java | 66 ++++++++++++++++++- 4 files changed, 104 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/peanut/modules/common/entity/CourseSociologyEntity.java b/src/main/java/com/peanut/modules/common/entity/CourseSociologyEntity.java index f1594e7c..044d4ab5 100644 --- a/src/main/java/com/peanut/modules/common/entity/CourseSociologyEntity.java +++ b/src/main/java/com/peanut/modules/common/entity/CourseSociologyEntity.java @@ -1,11 +1,13 @@ package com.peanut.modules.common.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.util.Date; +import java.util.List; @Data @TableName("course_sociology") @@ -20,8 +22,13 @@ public class CourseSociologyEntity { private String title; + private Integer sort; + private Date createTime; @TableLogic private Integer delFlag; + + @TableField(exist = false) + private List children; } diff --git a/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java b/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java index 5c691798..2034cdd2 100644 --- a/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java +++ b/src/main/java/com/peanut/modules/master/controller/CourseSociologyController.java @@ -1,6 +1,7 @@ package com.peanut.modules.master.controller; import com.peanut.common.utils.R; +import com.peanut.modules.common.entity.CourseSociologyEntity; import com.peanut.modules.common.to.ParamTo; import com.peanut.modules.master.service.CourseSociologyService; import com.peanut.modules.master.service.CourseToSociologyService; @@ -10,6 +11,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + @Slf4j @RestController("masterCourseSociology") @RequestMapping("master/courseSociology") @@ -20,8 +23,25 @@ public class CourseSociologyController { private CourseToSociologyService courseToSociologyService; @RequestMapping("/getCourseSociologyList") - public R getCourseSociologyList(@RequestBody ParamTo param){ + public R getCourseSociologyList(){ + List courseSociologyList = courseSociologyService.getCourseSociologyList(); + return R.ok().put("sociologys",courseSociologyList); + } + @RequestMapping("/addCourseSociology") + public R addCourseSociology(@RequestBody CourseSociologyEntity courseSociologyEntity){ + courseSociologyService.save(courseSociologyEntity); + return R.ok(); + } + + @RequestMapping("/delCourseSociology") + public R delCourseSociology(@RequestBody ParamTo param){ + return courseSociologyService.delCourseSociology(param.getId()); + } + + @RequestMapping("/editCourseSociology") + public R editCourseSociology(@RequestBody CourseSociologyEntity courseSociologyEntity){ + courseSociologyService.editCourseSociology(courseSociologyEntity); return R.ok(); } diff --git a/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java b/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java index 28376aba..812ec39d 100644 --- a/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java +++ b/src/main/java/com/peanut/modules/master/service/CourseSociologyService.java @@ -1,7 +1,18 @@ package com.peanut.modules.master.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.common.utils.R; import com.peanut.modules.common.entity.CourseSociologyEntity; +import com.peanut.modules.common.entity.CourseToSociologyEntity; +import com.peanut.modules.common.to.ParamTo; + +import java.util.List; public interface CourseSociologyService extends IService { + List getCourseSociologyList(); + + R delCourseSociology(int id); + + R editCourseSociology(CourseSociologyEntity courseSociologyEntity); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java index d7139abc..04658262 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseSociologyServiceImpl.java @@ -1,13 +1,77 @@ package com.peanut.modules.master.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.peanut.common.utils.R; import com.peanut.modules.common.dao.CourseSociologyDao; +import com.peanut.modules.common.dao.CourseToSociologyDao; import com.peanut.modules.common.entity.CourseSociologyEntity; +import com.peanut.modules.common.entity.CourseToSociologyEntity; import com.peanut.modules.master.service.CourseSociologyService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + @Slf4j -@Service("masterCourseSociology") +@Service("masterCourseSociologyService") public class CourseSociologyServiceImpl extends ServiceImpl implements CourseSociologyService { + + @Autowired + private CourseToSociologyDao courseToSociologyDao; + + @Override + public List getCourseSociologyList() { + return this.sociologys(0); + } + + @Override + public R delCourseSociology(int id) { + //查看下一级是否存在 + CourseSociologyEntity one = this.getOne(new LambdaQueryWrapper().eq(CourseSociologyEntity::getPid, id)); + if(one!=null){ + return R.error(501,"删除失败,请先删除子项目后再尝试"); + } + //查看绑定关系是否存在 + CourseToSociologyEntity courseToSociologyEntity = courseToSociologyDao.selectOne(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getSociologyId, id)); + if(courseToSociologyEntity!=null){ + return R.error(502,"删除失败,请先解绑课程与国学标签的绑定关系"); + } + this.removeById(id); + return R.ok(); + } + + + @Override + public R editCourseSociology(CourseSociologyEntity courseSociologyEntity) { + CourseSociologyEntity old = this.getById(courseSociologyEntity.getId()); + + if(old.getIsLast()==0&&courseSociologyEntity.getIsLast()==1){ + CourseSociologyEntity one = this.getOne(new LambdaQueryWrapper().eq(CourseSociologyEntity::getPid, courseSociologyEntity.getId())); + if(one!=null){ + return R.error(501,"更新失败,请先清空此项的下级标签,才能将此标签变成终极标签"); + } + } + if(old.getIsLast()==1&&courseSociologyEntity.getIsLast()==0){ + CourseToSociologyEntity courseToSociologyEntity = courseToSociologyDao.selectOne(new LambdaQueryWrapper().eq(CourseToSociologyEntity::getSociologyId, courseSociologyEntity.getId())); + if(courseToSociologyEntity!=null){ + return R.error(502,"更新失败,请先把此项与课程的关联关系清空后才可把此标签变成普通标签"); + } + } + this.updateById(courseSociologyEntity); + return R.ok(); + } + + private List sociologys(int id){ + List list = this.list(new LambdaQueryWrapper().eq(CourseSociologyEntity::getPid, id)); + for (CourseSociologyEntity c : list){ + if(c.getIsLast()!=1){ + List so = this.sociologys(c.getId()); + c.setChildren(so); + } + } + return list; + } + }