change hace 4 años
padre
commit
6db1470018

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/MajorAddBo.java

@@ -42,4 +42,8 @@ public class MajorAddBo {
     /** 编码ZY */
     @ApiModelProperty("编码ZY")
     private String encoder;
+
+    /** 绑定项目id集合 */
+    @ApiModelProperty("绑定项目id集合")
+    private Long[] majorProjects;
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/MajorEditBo.java

@@ -50,4 +50,9 @@ public class MajorEditBo {
     @ApiModelProperty("编码ZY")
     private String encoder;
 
+
+    /** 绑定项目id集合 */
+    @ApiModelProperty("绑定项目id集合")
+    private Long[] majorProjects;
+
 }

+ 2 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/mapper/MajorMapper.java

@@ -3,6 +3,7 @@ package com.zhongzheng.modules.course.mapper;
 import com.zhongzheng.modules.course.bo.CourseProjectTypeQueryBo;
 import com.zhongzheng.modules.course.domain.Major;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zhongzheng.modules.course.vo.CourseProjectTypeVo;
 import com.zhongzheng.modules.course.vo.MajorProjectVo;
 
 import java.util.List;
@@ -15,5 +16,5 @@ import java.util.List;
  */
 public interface MajorMapper extends BaseMapper<Major> {
 
-    List<MajorProjectVo> selectProject(CourseProjectTypeQueryBo courseProjectTypeQueryBo);
+    List<CourseProjectTypeVo> selectProject(CourseProjectTypeQueryBo courseProjectTypeQueryBo);
 }

+ 28 - 7
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/MajorServiceImpl.java

@@ -3,17 +3,19 @@ package com.zhongzheng.modules.course.service.impl;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.StrUtil;
 import com.zhongzheng.common.utils.DateUtils;
-import com.zhongzheng.modules.course.bo.CourseProjectTypeQueryBo;
+import com.zhongzheng.modules.course.bo.*;
+import com.zhongzheng.modules.course.domain.MajorProject;
+import com.zhongzheng.modules.course.service.IMajorProjectService;
 import com.zhongzheng.modules.course.vo.CourseProjectTypeVo;
 import com.zhongzheng.modules.course.vo.MajorProjectVo;
+import com.zhongzheng.modules.user.bo.SchoolProjectAddBo;
+import com.zhongzheng.modules.user.domain.SchoolProject;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.Page;
-import com.zhongzheng.modules.course.bo.MajorAddBo;
-import com.zhongzheng.modules.course.bo.MajorQueryBo;
-import com.zhongzheng.modules.course.bo.MajorEditBo;
 import com.zhongzheng.modules.course.domain.Major;
 import com.zhongzheng.modules.course.mapper.MajorMapper;
 import com.zhongzheng.modules.course.vo.MajorVo;
@@ -34,6 +36,9 @@ import java.util.stream.Collectors;
 @Service
 public class MajorServiceImpl extends ServiceImpl<MajorMapper, Major> implements IMajorService {
 
+    @Autowired
+    private IMajorProjectService majorProjectService;
+
     @Override
     public MajorVo queryById(Long id){
         Major db = this.baseMapper.selectById(id);
@@ -74,8 +79,8 @@ public class MajorServiceImpl extends ServiceImpl<MajorMapper, Major> implements
             List<Integer> status = new ArrayList<>();
             status.add(1);
             courseProjectTypeQueryBo.setStatus(status);
-            List<MajorProjectVo> courseProjectTypeVos = baseMapper.selectProject(courseProjectTypeQueryBo);
-            majorVo.setMajorProjectVos(courseProjectTypeVos);
+            List<CourseProjectTypeVo> courseProjectTypeVos = baseMapper.selectProject(courseProjectTypeQueryBo);
+            majorVo.setCourseProjectTypeVo(courseProjectTypeVos);
         }
         return voList;
     }
@@ -86,7 +91,14 @@ public class MajorServiceImpl extends ServiceImpl<MajorMapper, Major> implements
         validEntityBeforeSave(add);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
-        return this.save(add);
+        boolean save = this.save(add);
+        for (Long schoolProject : bo.getMajorProjects()) {
+            MajorProjectAddBo majorProjectAddBo = new MajorProjectAddBo();
+            majorProjectAddBo.setProjectId(schoolProject);
+            majorProjectAddBo.setSubjectId(add.getId());
+            majorProjectService.insertByAddBo(majorProjectAddBo);
+        }
+        return save;
     }
 
     @Override
@@ -94,6 +106,15 @@ public class MajorServiceImpl extends ServiceImpl<MajorMapper, Major> implements
         Major update = BeanUtil.toBean(bo, Major.class);
         validEntityBeforeSave(update);
         update.setUpdateTime(DateUtils.getNowTime());
+        LambdaQueryWrapper<MajorProject> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getId()!=null,MajorProject::getSubjectId, bo.getId());
+        majorProjectService.remove(lqw);
+        for (Long schoolProject : bo.getMajorProjects()) {
+            MajorProjectAddBo majorProjectAddBo = new MajorProjectAddBo();
+            majorProjectAddBo.setProjectId(schoolProject);
+            majorProjectAddBo.setSubjectId(update.getId());
+            majorProjectService.insertByAddBo(majorProjectAddBo);
+        }
         return this.updateById(update);
     }
 

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/vo/MajorVo.java

@@ -52,5 +52,5 @@ public class MajorVo {
 	/** 专业项目 */
 	@Excel(name = "专业项目")
 	@ApiModelProperty("专业项目")
-	private List<MajorProjectVo> majorProjectVos;
+	private List<CourseProjectTypeVo> courseProjectTypeVo;
 }

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/course/CourseBusinessMapper.xml

@@ -37,6 +37,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             course_business b
                 LEFT JOIN course_project_type p on b.project_id =p.id
                 LEFT JOIN course_education_type e ON p.education_id = e.id
+        where 1=1
         and p.status != -1
         and e.status != -1
         <if test="status != null and status.size()!=0 ">

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/course/CourseProjectTypeMapper.xml

@@ -32,6 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         FROM
             course_project_type p
                 LEFT JOIN course_education_type e ON p.education_id = e.id
+        where 1=1
         <if test="status != null and status.size()!=0 ">
             AND p.status in
             <foreach collection="status" item="item" index="index" open="(" close=")" separator=",">

+ 2 - 1
zhongzheng-system/src/main/resources/mapper/modules/course/MajorMapper.xml

@@ -31,9 +31,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         p.*,
         e.education_name
         FROM
-        school_project j
+        major_project j
         LEFT JOIN course_project_type p on p.id=j.project_id
         LEFT JOIN course_education_type e ON p.education_id = e.id
+        where 1=1
         <if test="status != null and status.size()!=0 ">
             AND p.status in
             <foreach collection="status" item="item" index="index" open="(" close=")" separator=",">

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/SchoolMapper.xml

@@ -35,6 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         school_project j
         LEFT JOIN course_project_type p on p.id=j.project_id
         LEFT JOIN course_education_type e ON p.education_id = e.id
+        where 1=1
         <if test="status != null and status.size()!=0 ">
             AND p.status in
             <foreach collection="status" item="item" index="index" open="(" close=")" separator=",">