he2802 4 роки тому
батько
коміт
c02f2c8fbc
23 змінених файлів з 381 додано та 6 видалено
  1. 2 2
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseChapterEditBo.java
  2. 2 2
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseEditBo.java
  3. 2 2
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseModuleEditBo.java
  4. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseSectionAddBo.java
  5. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/domain/CourseSection.java
  6. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseSectionServiceImpl.java
  7. 4 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/vo/CourseSectionVo.java
  8. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsAddBo.java
  9. 27 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsCourseAddBo.java
  10. 32 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsCourseEditBo.java
  11. 45 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsCourseQueryBo.java
  12. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsEditBo.java
  13. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/domain/Goods.java
  14. 33 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/domain/GoodsCourse.java
  15. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/mapper/GoodsCourseMapper.java
  16. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/IGoodsCourseService.java
  17. 97 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsCourseServiceImpl.java
  18. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java
  19. 35 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsCourseVo.java
  20. 4 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsVo.java
  21. 1 0
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseSectionMapper.xml
  22. 14 0
      zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsCourseMapper.xml
  23. 1 0
      zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsMapper.xml

+ 2 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseChapterEditBo.java

@@ -53,8 +53,8 @@ public class CourseChapterEditBo {
 
 
     /** 编码 */
-    @ApiModelProperty("编码")
-    private String code;
+   /* @ApiModelProperty("编码")
+    private String code;*/
 
     /** 业务层级列表 */
     @ApiModelProperty("业务层级列表")

+ 2 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseEditBo.java

@@ -83,7 +83,7 @@ public class CourseEditBo {
     private Long majorId;
 
     /** 编码 */
-    @ApiModelProperty("编码")
-    private String code;
+   /* @ApiModelProperty("编码")
+    private String code;*/
 
 }

+ 2 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseModuleEditBo.java

@@ -47,8 +47,8 @@ public class CourseModuleEditBo {
     private Integer status;
 
     /** 编码 */
-    @ApiModelProperty("编码")
-    private String code;
+   /* @ApiModelProperty("编码")
+    private String code;*/
 
     /** 业务层级列表 */
     @ApiModelProperty("业务层级列表")

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseSectionAddBo.java

@@ -66,4 +66,7 @@ public class CourseSectionAddBo {
     /** 封面地址 */
     @ApiModelProperty("封面地址")
     private String coverUrl;
+    /** 编码 */
+    @ApiModelProperty("编码")
+    private String code;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/domain/CourseSection.java

@@ -58,4 +58,6 @@ private static final long serialVersionUID=1L;
     private Long recordingDuration;
     /** 封面地址 */
     private String coverUrl;
+    /** 编码 */
+    private String code;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseSectionServiceImpl.java

@@ -3,6 +3,7 @@ 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.common.utils.ServletUtils;
 import com.zhongzheng.modules.course.bo.CourseSectionAddBo;
 import com.zhongzheng.modules.course.bo.CourseSectionBusinessAddBo;
 import com.zhongzheng.modules.course.bo.CourseSectionEditBo;
@@ -86,6 +87,7 @@ public class CourseSectionServiceImpl extends ServiceImpl<CourseSectionMapper, C
     @Override
     public Boolean insertByAddBo(CourseSectionAddBo bo) {
         CourseSection add = BeanUtil.toBean(bo, CourseSection.class);
+        add.setCode(ServletUtils.getEncoded("J"));
         validEntityBeforeSave(add);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/vo/CourseSectionVo.java

@@ -76,4 +76,8 @@ public class CourseSectionVo {
 	@Excel(name = "封面地址")
 	@ApiModelProperty("封面地址")
 	private String coverUrl;
+	/** 编码 */
+	@Excel(name = "编码")
+	@ApiModelProperty("编码")
+	private String code;
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsAddBo.java

@@ -100,4 +100,7 @@ public class GoodsAddBo {
     /** 标准价格详情json */
     @ApiModelProperty("标准价格详情json")
     private String standPriceJson;
+    /** 编码 */
+    @ApiModelProperty("编码")
+    private String code;
 }

+ 27 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsCourseAddBo.java

@@ -0,0 +1,27 @@
+package com.zhongzheng.modules.goods.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 商品课程关系添加对象 goods_course
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+@Data
+@ApiModel("商品课程关系添加对象")
+public class GoodsCourseAddBo {
+
+    /** 商品id */
+    @ApiModelProperty("商品id")
+    private Long goodsId;
+    /** 课程ID */
+    @ApiModelProperty("课程ID")
+    private Long courseId;
+}

+ 32 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsCourseEditBo.java

@@ -0,0 +1,32 @@
+package com.zhongzheng.modules.goods.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 商品课程关系编辑对象 goods_course
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+@Data
+@ApiModel("商品课程关系编辑对象")
+public class GoodsCourseEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long id;
+
+    /** 商品id */
+    @ApiModelProperty("商品id")
+    private Long goodsId;
+
+    /** 课程ID */
+    @ApiModelProperty("课程ID")
+    private Long courseId;
+
+}

+ 45 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsCourseQueryBo.java

@@ -0,0 +1,45 @@
+package com.zhongzheng.modules.goods.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+import java.util.Map;
+import java.util.HashMap;
+
+import com.zhongzheng.common.core.domain.BaseEntity;
+
+/**
+ * 商品课程关系分页查询对象 goods_course
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("商品课程关系分页查询对象")
+public class GoodsCourseQueryBo extends BaseEntity {
+
+	/** 分页大小 */
+	@ApiModelProperty("分页大小")
+	private Integer pageSize;
+	/** 当前页数 */
+	@ApiModelProperty("当前页数")
+	private Integer pageNum;
+	/** 排序列 */
+	@ApiModelProperty("排序列")
+	private String orderByColumn;
+	/** 排序的方向desc或者asc */
+	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
+	private String isAsc;
+
+
+	/** 商品id */
+	@ApiModelProperty("商品id")
+	private Long goodsId;
+	/** 课程ID */
+	@ApiModelProperty("课程ID")
+	private Long courseId;
+}

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsEditBo.java

@@ -126,4 +126,6 @@ public class GoodsEditBo {
     @ApiModelProperty("标准价格详情json")
     private String standPriceJson;
 
+
+
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/domain/Goods.java

@@ -82,4 +82,6 @@ private static final long serialVersionUID=1L;
     private Integer classHours;
     /** 标准价格详情json */
     private String standPriceJson;
+    /** 编码 */
+    private String code;
 }

+ 33 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/domain/GoodsCourse.java

@@ -0,0 +1,33 @@
+package com.zhongzheng.modules.goods.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+import com.zhongzheng.common.annotation.Excel;
+
+/**
+ * 商品课程关系对象 goods_course
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("goods_course")
+public class GoodsCourse implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "id")
+    private Long id;
+    /** 商品id */
+    private Long goodsId;
+    /** 课程ID */
+    private Long courseId;
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/mapper/GoodsCourseMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.goods.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zhongzheng.modules.goods.domain.GoodsCourse;
+
+/**
+ * 商品课程关系Mapper接口
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+public interface GoodsCourseMapper extends BaseMapper<GoodsCourse> {
+
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/IGoodsCourseService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.goods.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhongzheng.modules.goods.bo.GoodsCourseAddBo;
+import com.zhongzheng.modules.goods.bo.GoodsCourseEditBo;
+import com.zhongzheng.modules.goods.bo.GoodsCourseQueryBo;
+import com.zhongzheng.modules.goods.domain.GoodsCourse;
+import com.zhongzheng.modules.goods.vo.GoodsCourseVo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 商品课程关系Service接口
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+public interface IGoodsCourseService extends IService<GoodsCourse> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	GoodsCourseVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+	List<GoodsCourseVo> queryList(GoodsCourseQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入商品课程关系
+	 * @param bo 商品课程关系新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(GoodsCourseAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改商品课程关系
+	 * @param bo 商品课程关系编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(GoodsCourseEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 97 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsCourseServiceImpl.java

@@ -0,0 +1,97 @@
+package com.zhongzheng.modules.goods.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.utils.DateUtils;
+import com.zhongzheng.modules.goods.bo.GoodsCourseAddBo;
+import com.zhongzheng.modules.goods.bo.GoodsCourseEditBo;
+import com.zhongzheng.modules.goods.bo.GoodsCourseQueryBo;
+import com.zhongzheng.modules.goods.domain.GoodsCourse;
+import com.zhongzheng.modules.goods.mapper.GoodsCourseMapper;
+import com.zhongzheng.modules.goods.service.IGoodsCourseService;
+import com.zhongzheng.modules.goods.vo.GoodsCourseVo;
+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 java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 商品课程关系Service业务层处理
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+@Service
+public class GoodsCourseServiceImpl extends ServiceImpl<GoodsCourseMapper, GoodsCourse> implements IGoodsCourseService {
+
+    @Override
+    public GoodsCourseVo queryById(Long id){
+        GoodsCourse db = this.baseMapper.selectById(id);
+        return BeanUtil.toBean(db, GoodsCourseVo.class);
+    }
+
+    @Override
+    public List<GoodsCourseVo> queryList(GoodsCourseQueryBo bo) {
+        LambdaQueryWrapper<GoodsCourse> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getGoodsId() != null, GoodsCourse::getGoodsId, bo.getGoodsId());
+        lqw.eq(bo.getCourseId() != null, GoodsCourse::getCourseId, bo.getCourseId());
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<GoodsCourseVo> entity2Vo(Collection<GoodsCourse> collection) {
+        List<GoodsCourseVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, GoodsCourseVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<GoodsCourse> page = (Page<GoodsCourse>)collection;
+            Page<GoodsCourseVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    public Boolean insertByAddBo(GoodsCourseAddBo bo) {
+        GoodsCourse add = BeanUtil.toBean(bo, GoodsCourse.class);
+        validEntityBeforeSave(add);
+        return this.save(add);
+    }
+
+    @Override
+    public Boolean updateByEditBo(GoodsCourseEditBo bo) {
+        GoodsCourse update = BeanUtil.toBean(bo, GoodsCourse.class);
+        validEntityBeforeSave(update);
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(GoodsCourse entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java

@@ -3,6 +3,7 @@ package com.zhongzheng.modules.goods.service.impl;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.StrUtil;
 import com.zhongzheng.common.utils.DateUtils;
+import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.modules.goods.bo.GoodsAddBo;
 import com.zhongzheng.modules.goods.bo.GoodsEditBo;
 import com.zhongzheng.modules.goods.bo.GoodsQueryBo;
@@ -90,6 +91,7 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
     @Override
     public Boolean insertByAddBo(GoodsAddBo bo) {
         Goods add = BeanUtil.toBean(bo, Goods.class);
+        add.setCode(ServletUtils.getEncoded("SP"));
         validEntityBeforeSave(add);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());

+ 35 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsCourseVo.java

@@ -0,0 +1,35 @@
+package com.zhongzheng.modules.goods.vo;
+
+import com.zhongzheng.common.annotation.Excel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 商品课程关系视图对象 mall_package
+ *
+ * @author hjl
+ * @date 2021-10-12
+ */
+@Data
+@ApiModel("商品课程关系视图对象")
+public class GoodsCourseVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long id;
+
+	/** 商品id */
+	@Excel(name = "商品id")
+	@ApiModelProperty("商品id")
+	private Long goodsId;
+	/** 课程ID */
+	@Excel(name = "课程ID")
+	@ApiModelProperty("课程ID")
+	private Long courseId;
+}

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsVo.java

@@ -125,4 +125,8 @@ public class GoodsVo {
 	@Excel(name = "标准价格详情json")
 	@ApiModelProperty("标准价格详情json")
 	private String standPriceJson;
+	/** 编码 */
+	@Excel(name = "编码")
+	@ApiModelProperty("编码")
+	private String code;
 }

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

@@ -21,6 +21,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="recordingUrl" column="recording_url"/>
         <result property="recordingDuration" column="recording_duration"/>
         <result property="coverUrl" column="cover_url"/>
+        <result property="code" column="code"/>
     </resultMap>
 
 

+ 14 - 0
zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsCourseMapper.xml

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zhongzheng.modules.goods.mapper.GoodsCourseMapper">
+
+    <resultMap type="com.zhongzheng.modules.goods.domain.GoodsCourse" id="GoodsCourseResult">
+        <result property="id" column="id"/>
+        <result property="goodsId" column="goods_id"/>
+        <result property="courseId" column="course_id"/>
+    </resultMap>
+
+
+</mapper>

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsMapper.xml

@@ -33,6 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="coverUrl" column="cover_url"/>
         <result property="classHours" column="class_hours"/>
         <result property="standPriceJson" column="stand_price_json"/>
+        <result property="code" column="code"/>
     </resultMap>