Browse Source

fix 章卷

he2802 3 years ago
parent
commit
80ea26804a
67 changed files with 2948 additions and 18 deletions
  1. 1 1
      zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java
  2. 90 0
      zhongzheng-admin/src/main/java/com/zhongzheng/controller/inform/InformClassifyController.java
  3. 89 0
      zhongzheng-admin/src/main/java/com/zhongzheng/controller/inform/InformController.java
  4. 53 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeUserAddQueryBo.java
  5. 1 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeService.java
  6. 36 8
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java
  7. 8 2
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java
  8. 9 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassGradeStudentVo.java
  9. 69 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformAddBo.java
  10. 36 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformClassifyAddBo.java
  11. 41 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformClassifyEditBo.java
  12. 49 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformClassifyQueryBo.java
  13. 45 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformCourseAddBo.java
  14. 49 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformCourseEditBo.java
  15. 54 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformCourseQueryBo.java
  16. 65 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformEditBo.java
  17. 45 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformExamAddBo.java
  18. 49 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformExamEditBo.java
  19. 54 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformExamQueryBo.java
  20. 66 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformQueryBo.java
  21. 42 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformUserAddBo.java
  22. 49 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformUserEditBo.java
  23. 55 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformUserQueryBo.java
  24. 57 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/Inform.java
  25. 41 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformClassify.java
  26. 47 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformCourse.java
  27. 47 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformExam.java
  28. 45 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformUser.java
  29. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformClassifyMapper.java
  30. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformCourseMapper.java
  31. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformExamMapper.java
  32. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformMapper.java
  33. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformUserMapper.java
  34. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformClassifyService.java
  35. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformCourseService.java
  36. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformExamService.java
  37. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformService.java
  38. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformUserService.java
  39. 101 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformClassifyServiceImpl.java
  40. 103 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformCourseServiceImpl.java
  41. 103 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformExamServiceImpl.java
  42. 138 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformServiceImpl.java
  43. 102 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformUserServiceImpl.java
  44. 39 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformClassifyVo.java
  45. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformCourseVo.java
  46. 51 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformExamVo.java
  47. 47 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformUserVo.java
  48. 70 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformVo.java
  49. 39 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserUpdateAddBo.java
  50. 45 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserUpdateEditBo.java
  51. 51 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserUpdateQueryBo.java
  52. 43 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserUpdate.java
  53. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserUpdateMapper.java
  54. 52 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserUpdateService.java
  55. 103 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserUpdateServiceImpl.java
  56. 43 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserUpdateVo.java
  57. 3 3
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserVo.java
  58. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseHandoutsMapper.xml
  59. 1 0
      zhongzheng-system/src/main/resources/mapper/modules/exam/ExamKnowledgeMapper.xml
  60. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml
  61. 10 1
      zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeUserMapper.xml
  62. 17 0
      zhongzheng-system/src/main/resources/mapper/modules/inform/InformClassifyMapper.xml
  63. 19 0
      zhongzheng-system/src/main/resources/mapper/modules/inform/InformCourseMapper.xml
  64. 19 0
      zhongzheng-system/src/main/resources/mapper/modules/inform/InformExamMapper.xml
  65. 23 0
      zhongzheng-system/src/main/resources/mapper/modules/inform/InformMapper.xml
  66. 18 0
      zhongzheng-system/src/main/resources/mapper/modules/inform/InformUserMapper.xml
  67. 18 0
      zhongzheng-system/src/main/resources/mapper/modules/user/UserUpdateMapper.xml

+ 1 - 1
zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java

@@ -102,7 +102,7 @@ public class ClassGradeController extends BaseController {
     @PreAuthorize("@ss.hasPermi('grade:grade:edit')")
     @Log(title = "班级", businessType = BusinessType.INSERT)
     @PostMapping("/addUserGrade")
-    public AjaxResult<Void> editUserGrade(@RequestBody ClassGradeUserAddBo bo) {
+    public AjaxResult<Void> editUserGrade(@RequestBody ClassGradeUserAddQueryBo bo) {
         return toAjax(iClassGradeService.editUserGrade(bo) ? 1 : 0);
     }
 

+ 90 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/inform/InformClassifyController.java

@@ -0,0 +1,90 @@
+package com.zhongzheng.controller.inform;
+
+import java.util.List;
+import java.util.Arrays;
+
+import lombok.RequiredArgsConstructor;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.zhongzheng.common.annotation.Log;
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.enums.BusinessType;
+import com.zhongzheng.modules.inform.vo.InformClassifyVo;
+import com.zhongzheng.modules.inform.bo.InformClassifyQueryBo;
+import com.zhongzheng.modules.inform.bo.InformClassifyAddBo;
+import com.zhongzheng.modules.inform.bo.InformClassifyEditBo;
+import com.zhongzheng.modules.inform.service.IInformClassifyService;
+import com.zhongzheng.common.utils.poi.ExcelUtil;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 【请填写功能名称】Controller
+ * 
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Api(value = "【请填写功能名称】控制器", tags = {"【请填写功能名称】管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/system/classify")
+public class InformClassifyController extends BaseController {
+
+    private final IInformClassifyService iInformClassifyService;
+
+    /**
+     * 查询【请填写功能名称】列表
+     */
+    @ApiOperation("查询【请填写功能名称】列表")
+    @PreAuthorize("@ss.hasPermi('system:classify:list')")
+    @GetMapping("/list")
+    public TableDataInfo<InformClassifyVo> list(InformClassifyQueryBo bo) {
+        startPage();
+        List<InformClassifyVo> list = iInformClassifyService.queryList(bo);
+        return getDataTable(list);
+    }
+
+
+    /**
+     * 获取【请填写功能名称】详细信息
+     */
+    @ApiOperation("获取【请填写功能名称】详细信息")
+    @PreAuthorize("@ss.hasPermi('system:classify:query')")
+    @GetMapping("/{classifyId}")
+    public AjaxResult<InformClassifyVo> getInfo(@PathVariable("classifyId" ) Long classifyId) {
+        return AjaxResult.success(iInformClassifyService.queryById(classifyId));
+    }
+
+    /**
+     * 新增【请填写功能名称】
+     */
+    @ApiOperation("新增【请填写功能名称】")
+    @PreAuthorize("@ss.hasPermi('system:classify:add')")
+    @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT)
+    @PostMapping()
+    public AjaxResult<Void> add(@RequestBody InformClassifyAddBo bo) {
+        return toAjax(iInformClassifyService.insertByAddBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改【请填写功能名称】
+     */
+    @ApiOperation("修改【请填写功能名称】")
+    @PreAuthorize("@ss.hasPermi('system:classify:edit')")
+    @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    public AjaxResult<Void> edit(@RequestBody InformClassifyEditBo bo) {
+        return toAjax(iInformClassifyService.updateByEditBo(bo) ? 1 : 0);
+    }
+
+}

+ 89 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/inform/InformController.java

@@ -0,0 +1,89 @@
+package com.zhongzheng.controller.inform;
+
+import java.util.List;
+import java.util.Arrays;
+
+import lombok.RequiredArgsConstructor;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.zhongzheng.common.annotation.Log;
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.enums.BusinessType;
+import com.zhongzheng.modules.inform.vo.InformVo;
+import com.zhongzheng.modules.inform.bo.InformQueryBo;
+import com.zhongzheng.modules.inform.bo.InformAddBo;
+import com.zhongzheng.modules.inform.bo.InformEditBo;
+import com.zhongzheng.modules.inform.service.IInformService;
+import com.zhongzheng.common.utils.poi.ExcelUtil;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 【通知】Controller
+ * 
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Api(value = "【通知】控制器", tags = {"【通知】管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/system/inform")
+public class InformController extends BaseController {
+
+    private final IInformService iInformService;
+
+    /**
+     * 查询【通知】列表
+     */
+    @ApiOperation("查询【通知】列表")
+    @PreAuthorize("@ss.hasPermi('system:inform:list')")
+    @GetMapping("/list")
+    public TableDataInfo<InformVo> list(InformQueryBo bo) {
+        startPage();
+        List<InformVo> list = iInformService.queryList(bo);
+        return getDataTable(list);
+    }
+
+    /**
+     * 获取【通知】详细信息
+     */
+    @ApiOperation("获取【通知】详细信息")
+    @PreAuthorize("@ss.hasPermi('system:inform:query')")
+    @GetMapping("/{informId}")
+    public AjaxResult<InformVo> getInfo(@PathVariable("informId" ) Long informId) {
+        return AjaxResult.success(iInformService.queryById(informId));
+    }
+
+    /**
+     * 新增【通知】
+     */
+    @ApiOperation("新增【通知】")
+    @PreAuthorize("@ss.hasPermi('system:inform:add')")
+    @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT)
+    @PostMapping()
+    public AjaxResult<Void> add(@RequestBody InformAddBo bo) {
+        return toAjax(iInformService.insertByAddBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改【通知】
+     */
+    @ApiOperation("修改【通知】")
+    @PreAuthorize("@ss.hasPermi('system:inform:edit')")
+    @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE)
+    @PostMapping("edit")
+    public AjaxResult<Void> edit(@RequestBody InformEditBo bo) {
+        return toAjax(iInformService.updateByEditBo(bo) ? 1 : 0);
+    }
+
+}

+ 53 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeUserAddQueryBo.java

@@ -0,0 +1,53 @@
+package com.zhongzheng.modules.grade.bo;
+
+import com.zhongzheng.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.List;
+
+/**
+ * 学员记录分页查询对象 class_grade_user
+ *
+ * @author ruoyi
+ * @date 2021-11-10
+ */
+@Data
+@ApiModel("学员记录分页查询对象")
+public class ClassGradeUserAddQueryBo {
+
+
+	/** 学员ID */
+	@ApiModelProperty("学员ID")
+	private Long[] userId;
+
+	/** 商品id */
+	@ApiModelProperty("商品id")
+	private Long goodsId;
+	/** 班级id */
+	@ApiModelProperty("班级id")
+	private Long gradeId;
+	/** 1 进入 0移除 */
+	@ApiModelProperty("1 进入 0移除")
+	private List<Integer> status;
+
+	@ApiModelProperty("来源 1订单购买")
+	private Integer fromType;
+	/** 学时审批状态 0 未通过 1通过 2待审核 */
+	@ApiModelProperty("学时审批状态 0 未通过 1通过 2待审核")
+	private Integer periodStatus;
+	/** 订单商品id */
+	@ApiModelProperty("订单商品id")
+	private Long orderGoodsId;
+	/** 结业状态 0 未结业 1结业 */
+	@ApiModelProperty("结业状态 0 未结业 1结业")
+	private Integer finishStatus;
+	/** 官方推送状态 1是 0否 */
+	@ApiModelProperty("官方推送状态 1是 0否")
+	private Integer officialStatus;
+	/** 官方学习账号推送状态 0否 1是 */
+	@ApiModelProperty("官方学习账号推送状态 0否 1是")
+	private Integer learnStatus;
+}

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeService.java

@@ -51,5 +51,5 @@ public interface IClassGradeService extends IService<ClassGrade> {
 
     List<ClassGradeStudentVo> listGrade(ClassGradeUserQueryBo bo);
 
-    boolean editUserGrade(ClassGradeUserAddBo bo);
+    boolean editUserGrade(ClassGradeUserAddQueryBo bo);
 }

+ 36 - 8
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java

@@ -16,9 +16,13 @@ import com.zhongzheng.modules.grade.service.IClassGradeGoodsService;
 import com.zhongzheng.modules.grade.service.IClassGradeSysService;
 import com.zhongzheng.modules.grade.service.IClassGradeUserService;
 import com.zhongzheng.modules.grade.vo.ClassGradeStudentVo;
+import com.zhongzheng.modules.grade.vo.ClassGradeUserVo;
 import com.zhongzheng.modules.system.domain.SysConfig;
 import com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo;
+import com.zhongzheng.modules.user.bo.UserUpdateQueryBo;
+import com.zhongzheng.modules.user.domain.UserUpdate;
 import com.zhongzheng.modules.user.service.IUserStudyRecordService;
+import com.zhongzheng.modules.user.service.IUserUpdateService;
 import com.zhongzheng.modules.user.vo.SubjectStudyRecordVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -32,6 +36,7 @@ import com.zhongzheng.modules.grade.vo.ClassGradeVo;
 import com.zhongzheng.modules.grade.service.IClassGradeService;
 
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
@@ -61,6 +66,9 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
     @Autowired
     private IClassGradeUserService iClassGradeUserService;
 
+    @Autowired
+    private IUserUpdateService iUserUpdateService;
+
     @Override
     public ClassGradeVo queryById(Long gradeId){
         ClassGradeQueryBo classGradeQueryBo = new ClassGradeQueryBo();
@@ -190,7 +198,7 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
 
             SubjectStudyRecordQueryBo subjectStudyRecordQueryBo = new SubjectStudyRecordQueryBo();
             subjectStudyRecordQueryBo.setGoodsId(classGradeStudentVo.getGoodsId());
-            subjectStudyRecordQueryBo.setUserId(bo.getUserId());
+            subjectStudyRecordQueryBo.setUserId(classGradeStudentVo.getUserId());
             List<SubjectStudyRecordVo> subjectStudyRecordVos = iUserStudyRecordService.listSubject(subjectStudyRecordQueryBo);
             for (SubjectStudyRecordVo subjectStudyRecordVo : subjectStudyRecordVos) {
                 secLong = new BigDecimal(secLong.toString()).add(new BigDecimal(subjectStudyRecordVo.getSectionNum().toString())).longValue();
@@ -201,17 +209,37 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
             //classGradeStudentVo.setStudyNum(divide.multiply(new BigDecimal("100")).longValue());
             classGradeStudentVo.setSecAllNum(secLong);
             classGradeStudentVo.setStuAllNum(studyLong);
+            UserUpdateQueryBo userUpdateQueryBo = new UserUpdateQueryBo();
+            userUpdateQueryBo.setUserId(classGradeStudentVo.getUserId());
+            classGradeStudentVo.setUserUpdates(iUserUpdateService.queryList(userUpdateQueryBo));
         }
         return classGradeStudentVos;
     }
 
     @Override
-    public boolean editUserGrade(ClassGradeUserAddBo bo) {
-        bo.setCreateBy(SecurityUtils.getUsername());
-        bo.setStatus(1);
-        bo.setCreateTime(DateUtils.getNowTime());
-        bo.setUpdateTime(DateUtils.getNowTime());
-        bo.setFromType(2);
-        return iClassGradeUserService.insertByAddBo(bo);
+    public boolean editUserGrade(ClassGradeUserAddQueryBo bo) {
+        for (Long aLong : bo.getUserId()) {
+            ClassGradeUserQueryBo classGradeUserQueryBo = new ClassGradeUserQueryBo();
+            classGradeUserQueryBo.setUserId(aLong);
+            classGradeUserQueryBo.setGradeId(bo.getGradeId());
+            List<Integer> status = new ArrayList<>();
+            status.add(1);
+            classGradeUserQueryBo.setStatus(status);
+            List<ClassGradeUserVo> classGradeUserVos = iClassGradeUserService.queryList(classGradeUserQueryBo);
+            if (CollectionUtils.isNotEmpty(classGradeUserVos)){
+                continue;
+            }
+            ClassGradeUserAddBo classGradeUserAddBo = new ClassGradeUserAddBo();
+            classGradeUserAddBo.setUserId(aLong);
+            classGradeUserAddBo.setGradeId(bo.getGradeId());
+            classGradeUserAddBo.setCreateBy(SecurityUtils.getUsername());
+            classGradeUserAddBo.setStatus(1);
+            classGradeUserAddBo.setCreateTime(DateUtils.getNowTime());
+            classGradeUserAddBo.setUpdateTime(DateUtils.getNowTime());
+            classGradeUserAddBo.setFromType(2);
+            iClassGradeUserService.insertByAddBo(classGradeUserAddBo);
+        }
+
+        return true;
     }
 }

+ 8 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -85,15 +85,21 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
     @Override
     public Boolean updateByEditBo(ClassGradeUserEditBo bo) {
         for (Long aLong : bo.getId()) {
-            ClassGradeUser update = BeanUtil.toBean(bo, ClassGradeUser.class);
+            ClassGradeUser update = new ClassGradeUser();
             update.setUpdateTime(DateUtils.getNowTime());
             update.setId(aLong);
             if (bo.getStatus() != null) {
                 update.setStatus(bo.getStatus());
             }
-            if (bo.getStatus() != null) {
+            if (bo.getFinishStatus() != null) {
                 update.setFinishStatus(bo.getFinishStatus());
             }
+            if (bo.getPeriodStatus() != null) {
+                update.setPeriodStatus(bo.getPeriodStatus());
+            }
+            if (bo.getLearnStatus() != null) {
+                update.setLearnStatus(bo.getLearnStatus());
+            }
             this.updateById(update);
         }
 

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassGradeStudentVo.java

@@ -1,10 +1,14 @@
 package com.zhongzheng.modules.grade.vo;
 
 import com.zhongzheng.common.annotation.Excel;
+import com.zhongzheng.modules.user.domain.UserUpdate;
+import com.zhongzheng.modules.user.vo.UserUpdateVo;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 
 /**
  * 学员记录视图对象 mall_package
@@ -104,4 +108,9 @@ public class ClassGradeStudentVo {
 	/** 已做试卷 */
 	@ApiModelProperty("已做试卷")
 	private Long recordNum;
+
+
+	/** 用户修改记录 */
+	@ApiModelProperty("用户修改记录")
+	private List<UserUpdateVo> userUpdates;
 }

+ 69 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformAddBo.java

@@ -0,0 +1,69 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 【请填写功能名称】添加对象 inform
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】添加对象")
+public class InformAddBo {
+
+    /** 1 学员通知 */
+    @ApiModelProperty("1 学员通知")
+    private Integer informType;
+    /** 通知标题 */
+    @ApiModelProperty("通知标题")
+    private String informName;
+    /** 1站内信 */
+    @ApiModelProperty("1站内信")
+    private Integer informWay;
+    /** 分类id */
+    @ApiModelProperty("分类id")
+    private Long classifyId;
+    /** 发布状态 1立即发布 2定时发布 */
+    @ApiModelProperty("发布状态 1立即发布 2定时发布")
+    private Integer issueStatus;
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long issueTime;
+    /** 添加时间 */
+    @ApiModelProperty("添加时间")
+    private Long createTime;
+    /** 修改时间 */
+    @ApiModelProperty("修改时间")
+    private Long updateTime;
+    /** 1需要已读回执 0否 */
+    @ApiModelProperty("1需要已读回执 0否")
+    private Integer receiptStatus;
+    /** 公告 */
+    @ApiModelProperty("公告")
+    private String affiche;
+    /** 1已发布 0未发布 -1删除 */
+    @ApiModelProperty("1已发布 0未发布 -1删除")
+    private Integer status;
+    /** 指派操作者 */
+    @ApiModelProperty("指派操作者")
+    private String createBy;
+
+    /** 添加题库 */
+    @ApiModelProperty("添加课程节")
+    private InformCourseAddBo informCourseAddBo;
+
+    /** 添加试卷 */
+    @ApiModelProperty("添加试卷")
+    private InformExamAddBo informExamAddBo;
+
+    /** 用户id */
+    @ApiModelProperty("用户id")
+    private Long[] userId;
+}

+ 36 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformClassifyAddBo.java

@@ -0,0 +1,36 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 【请填写功能名称】添加对象 inform_classify
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】添加对象")
+public class InformClassifyAddBo {
+
+    /** 0为顶级父类 */
+    @ApiModelProperty("0为顶级父类")
+    private Long parentId;
+    /** 分类名称 */
+    @ApiModelProperty("分类名称")
+    private String classifyName;
+    /** 1使用 0未使用 */
+    @ApiModelProperty("1使用 0未使用")
+    private Integer status;
+    /** 添加时间 */
+    @ApiModelProperty("添加时间")
+    private Long createTime;
+    /** 修改时间 */
+    @ApiModelProperty("修改时间")
+    private Long updateTime;
+}

+ 41 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformClassifyEditBo.java

@@ -0,0 +1,41 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 【请填写功能名称】编辑对象 inform_classify
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】编辑对象")
+public class InformClassifyEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long classifyId;
+
+    /** 0为顶级父类 */
+    @ApiModelProperty("0为顶级父类")
+    private Long parentId;
+
+    /** 分类名称 */
+    @ApiModelProperty("分类名称")
+    private String classifyName;
+
+    /** 1使用 0未使用 */
+    @ApiModelProperty("1使用 0未使用")
+    private Integer status;
+
+    /** 修改时间 */
+    @ApiModelProperty("修改时间")
+    private Long updateTime;
+
+
+}

+ 49 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformClassifyQueryBo.java

@@ -0,0 +1,49 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.HashMap;
+
+import com.zhongzheng.common.core.domain.BaseEntity;
+
+/**
+ * 【请填写功能名称】分页查询对象 inform_classify
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("【请填写功能名称】分页查询对象")
+public class InformClassifyQueryBo extends BaseEntity {
+
+	/** 分页大小 */
+	@ApiModelProperty("分页大小")
+	private Integer pageSize;
+	/** 当前页数 */
+	@ApiModelProperty("当前页数")
+	private Integer pageNum;
+	/** 排序列 */
+	@ApiModelProperty("排序列")
+	private String orderByColumn;
+	/** 排序的方向desc或者asc */
+	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
+	private String isAsc;
+
+
+	/** 0为顶级父类 */
+	@ApiModelProperty("0为顶级父类")
+	private Long parentId;
+	/** 分类名称 */
+	@ApiModelProperty("分类名称")
+	private String classifyName;
+	/** 1使用 0未使用 */
+	@ApiModelProperty("1使用 0未使用")
+	private List<Integer> status;
+}

+ 45 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformCourseAddBo.java

@@ -0,0 +1,45 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 【请填写功能名称】添加对象 inform_course
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】添加对象")
+public class InformCourseAddBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+    /** 课程ID */
+    @ApiModelProperty("课程ID")
+    private Long courseId;
+    /** 节ID */
+    @ApiModelProperty("节ID")
+    private Long sectionId;
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    private Long createTime;
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long updateTime;
+    /** 模块ID */
+    @ApiModelProperty("模块ID")
+    private Long moduleId;
+    /** 章ID */
+    @ApiModelProperty("章ID")
+    private Long chapterId;
+    /** 题目位置 */
+    @ApiModelProperty("题目位置")
+    private Long topicNum;
+}

+ 49 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformCourseEditBo.java

@@ -0,0 +1,49 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 【请填写功能名称】编辑对象 inform_course
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】编辑对象")
+public class InformCourseEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long id;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+
+    /** 课程ID */
+    @ApiModelProperty("课程ID")
+    private Long courseId;
+
+    /** 节ID */
+    @ApiModelProperty("节ID")
+    private Long sectionId;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long updateTime;
+
+
+    /** 模块ID */
+    @ApiModelProperty("模块ID")
+    private Long moduleId;
+
+    /** 章ID */
+    @ApiModelProperty("章ID")
+    private Long chapterId;
+
+}

+ 54 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformCourseQueryBo.java

@@ -0,0 +1,54 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】分页查询对象 inform_course
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("【请填写功能名称】分页查询对象")
+public class InformCourseQueryBo extends BaseEntity {
+
+	/** 分页大小 */
+	@ApiModelProperty("分页大小")
+	private Integer pageSize;
+	/** 当前页数 */
+	@ApiModelProperty("当前页数")
+	private Integer pageNum;
+	/** 排序列 */
+	@ApiModelProperty("排序列")
+	private String orderByColumn;
+	/** 排序的方向desc或者asc */
+	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
+	private String isAsc;
+
+
+	/** $column.columnComment */
+	@ApiModelProperty("$column.columnComment")
+	private Long informId;
+	/** 课程ID */
+	@ApiModelProperty("课程ID")
+	private Long courseId;
+	/** 节ID */
+	@ApiModelProperty("节ID")
+	private Long sectionId;
+	/** 模块ID */
+	@ApiModelProperty("模块ID")
+	private Long moduleId;
+	/** 章ID */
+	@ApiModelProperty("章ID")
+	private Long chapterId;
+}

+ 65 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformEditBo.java

@@ -0,0 +1,65 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 【请填写功能名称】编辑对象 inform
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】编辑对象")
+public class InformEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+
+    /** 1 学员通知 */
+    @ApiModelProperty("1 学员通知")
+    private Integer informType;
+
+    /** 通知标题 */
+    @ApiModelProperty("通知标题")
+    private String informName;
+
+    /** 1站内信 */
+    @ApiModelProperty("1站内信")
+    private Integer informWay;
+
+    /** 分类id */
+    @ApiModelProperty("分类id")
+    private Long classifyId;
+
+    /** 发布状态 1立即发布 2定时发布 */
+    @ApiModelProperty("发布状态 1立即发布 2定时发布")
+    private Integer issueStatus;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long issueTime;
+
+    /** 修改时间 */
+    @ApiModelProperty("修改时间")
+    private Long updateTime;
+
+
+    /** 1需要已读回执 0否 */
+    @ApiModelProperty("1需要已读回执 0否")
+    private Integer receiptStatus;
+
+    /** 公告 */
+    @ApiModelProperty("公告")
+    private String affiche;
+
+    /** 1已发布 0未发布 -1删除 */
+    @ApiModelProperty("1已发布 0未发布 -1删除")
+    private Integer status;
+
+}

+ 45 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformExamAddBo.java

@@ -0,0 +1,45 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 【请填写功能名称】添加对象 inform_exam
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】添加对象")
+public class InformExamAddBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+    /** 课程ID */
+    @ApiModelProperty("课程ID")
+    private Long courseId;
+    /** 试卷id */
+    @ApiModelProperty("试卷id")
+    private Long examId;
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    private Long createTime;
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long updateTime;
+    /** 模块ID */
+    @ApiModelProperty("模块ID")
+    private Long moduleId;
+    /** 章ID */
+    @ApiModelProperty("章ID")
+    private Long chapterId;
+    /** 题目位置 */
+    @ApiModelProperty("题目位置")
+    private Long topicNum;
+}

+ 49 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformExamEditBo.java

@@ -0,0 +1,49 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 【请填写功能名称】编辑对象 inform_exam
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】编辑对象")
+public class InformExamEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long id;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+
+    /** 课程ID */
+    @ApiModelProperty("课程ID")
+    private Long courseId;
+
+    /** 试卷id */
+    @ApiModelProperty("试卷id")
+    private Long examId;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long updateTime;
+
+
+    /** 模块ID */
+    @ApiModelProperty("模块ID")
+    private Long moduleId;
+
+    /** 章ID */
+    @ApiModelProperty("章ID")
+    private Long chapterId;
+
+}

+ 54 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformExamQueryBo.java

@@ -0,0 +1,54 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】分页查询对象 inform_exam
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("【请填写功能名称】分页查询对象")
+public class InformExamQueryBo extends BaseEntity {
+
+	/** 分页大小 */
+	@ApiModelProperty("分页大小")
+	private Integer pageSize;
+	/** 当前页数 */
+	@ApiModelProperty("当前页数")
+	private Integer pageNum;
+	/** 排序列 */
+	@ApiModelProperty("排序列")
+	private String orderByColumn;
+	/** 排序的方向desc或者asc */
+	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
+	private String isAsc;
+
+
+	/** $column.columnComment */
+	@ApiModelProperty("$column.columnComment")
+	private Long informId;
+	/** 课程ID */
+	@ApiModelProperty("课程ID")
+	private Long courseId;
+	/** 试卷id */
+	@ApiModelProperty("试卷id")
+	private Long examId;
+	/** 模块ID */
+	@ApiModelProperty("模块ID")
+	private Long moduleId;
+	/** 章ID */
+	@ApiModelProperty("章ID")
+	private Long chapterId;
+}

+ 66 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformQueryBo.java

@@ -0,0 +1,66 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】分页查询对象 inform
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("【请填写功能名称】分页查询对象")
+public class InformQueryBo extends BaseEntity {
+
+	/** 分页大小 */
+	@ApiModelProperty("分页大小")
+	private Integer pageSize;
+	/** 当前页数 */
+	@ApiModelProperty("当前页数")
+	private Integer pageNum;
+	/** 排序列 */
+	@ApiModelProperty("排序列")
+	private String orderByColumn;
+	/** 排序的方向desc或者asc */
+	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
+	private String isAsc;
+
+
+	/** 1 学员通知 */
+	@ApiModelProperty("1 学员通知")
+	private Integer informType;
+	/** 通知标题 */
+	@ApiModelProperty("通知标题")
+	private String informName;
+	/** 1站内信 */
+	@ApiModelProperty("1站内信")
+	private Integer informWay;
+	/** 分类id */
+	@ApiModelProperty("分类id")
+	private Long classifyId;
+	/** 发布状态 1立即发布 2定时发布 */
+	@ApiModelProperty("发布状态 1立即发布 2定时发布")
+	private Integer issueStatus;
+	/** $column.columnComment */
+	@ApiModelProperty("$column.columnComment")
+	private Long issueTime;
+	/** 1需要已读回执 0否 */
+	@ApiModelProperty("1需要已读回执 0否")
+	private Integer receiptStatus;
+	/** 公告 */
+	@ApiModelProperty("公告")
+	private String affiche;
+	/** 1已发布 0未发布 -1删除 */
+	@ApiModelProperty("1已发布 0未发布 -1删除")
+	private Integer status;
+}

+ 42 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformUserAddBo.java

@@ -0,0 +1,42 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 通知绑定学员添加对象 inform_user
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("通知绑定学员添加对象")
+public class InformUserAddBo {
+
+    /** 用户id */
+    @ApiModelProperty("用户id")
+    private Long userId;
+    /** 发送时间 */
+    @ApiModelProperty("发送时间")
+    private Long sendTime;
+    /** 发送状态 1成功 0失败 */
+    @ApiModelProperty("发送状态 1成功 0失败")
+    private Integer sendStatus;
+    /** 已读回执 1已读 0未读 */
+    @ApiModelProperty("已读回执 1已读 0未读")
+    private Integer receiptStatus;
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    private Long createTime;
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long updateTime;
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+}

+ 49 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformUserEditBo.java

@@ -0,0 +1,49 @@
+package com.zhongzheng.modules.inform.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 通知绑定学员编辑对象 inform_user
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("通知绑定学员编辑对象")
+public class InformUserEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long id;
+
+    /** 用户id */
+    @ApiModelProperty("用户id")
+    private Long userId;
+
+    /** 发送时间 */
+    @ApiModelProperty("发送时间")
+    private Long sendTime;
+
+    /** 发送状态 1成功 0失败 */
+    @ApiModelProperty("发送状态 1成功 0失败")
+    private Integer sendStatus;
+
+    /** 已读回执 1已读 0未读 */
+    @ApiModelProperty("已读回执 1已读 0未读")
+    private Integer receiptStatus;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long updateTime;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long informId;
+
+
+}

+ 55 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/bo/InformUserQueryBo.java

@@ -0,0 +1,55 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 通知绑定学员分页查询对象 inform_user
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("通知绑定学员分页查询对象")
+public class InformUserQueryBo 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 userId;
+	/** 发送时间 */
+	@ApiModelProperty("发送时间")
+	private Long sendTime;
+	/** 发送状态 1成功 0失败 */
+	@ApiModelProperty("发送状态 1成功 0失败")
+	private Integer sendStatus;
+	/** 已读回执 1已读 0未读 */
+	@ApiModelProperty("已读回执 1已读 0未读")
+	private Integer receiptStatus;
+
+	/** $column.columnComment */
+	@ApiModelProperty("$column.columnComment")
+	private Long informId;
+}

+ 57 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/Inform.java

@@ -0,0 +1,57 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】对象 inform
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("inform")
+public class Inform implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "inform_id")
+    private Long informId;
+    /** 1 学员通知 */
+    private Integer informType;
+    /** 通知标题 */
+    private String informName;
+    /** 1站内信 */
+    private Integer informWay;
+    /** 分类id */
+    private Long classifyId;
+    /** 发布状态 1立即发布 2定时发布 */
+    private Integer issueStatus;
+    /** $column.columnComment */
+    private Long issueTime;
+    /** 添加时间 */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+    /** 修改时间 */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+    /** 1需要已读回执 0否 */
+    private Integer receiptStatus;
+    /** 公告 */
+    private String affiche;
+    /** 1已发布 0未发布 -1删除 */
+    private Integer status;
+
+    /** 指派操作者 */
+    @TableField(fill = FieldFill.INSERT)
+    private String createBy;
+}

+ 41 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformClassify.java

@@ -0,0 +1,41 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】对象 inform_classify
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("inform_classify")
+public class InformClassify implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "classify_id")
+    private Long classifyId;
+    /** 0为顶级父类 */
+    private Long parentId;
+    /** 分类名称 */
+    private String classifyName;
+    /** 1使用 0未使用 */
+    private Integer status;
+    /** 添加时间 */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+    /** 修改时间 */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+}

+ 47 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformCourse.java

@@ -0,0 +1,47 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】对象 inform_course
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("inform_course")
+public class InformCourse implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "id")
+    private Long id;
+    /** $column.columnComment */
+    private Long informId;
+    /** 课程ID */
+    private Long courseId;
+    /** 节ID */
+    private Long sectionId;
+    /** 创建时间 */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+    /** $column.columnComment */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+    /** 模块ID */
+    private Long moduleId;
+    /** 章ID */
+    private Long chapterId;
+    /** 题目位置 */
+    private Long topicNum;
+}

+ 47 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformExam.java

@@ -0,0 +1,47 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 【请填写功能名称】对象 inform_exam
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("inform_exam")
+public class InformExam implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "id")
+    private Long id;
+    /** $column.columnComment */
+    private Long informId;
+    /** 课程ID */
+    private Long courseId;
+    /** 试卷id */
+    private Long examId;
+    /** 创建时间 */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+    /** $column.columnComment */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+    /** 模块ID */
+    private Long moduleId;
+    /** 章ID */
+    private Long chapterId;
+    /** 题目位置 */
+    private Long topicNum;
+}

+ 45 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/domain/InformUser.java

@@ -0,0 +1,45 @@
+package com.zhongzheng.modules.inform.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;
+
+/**
+ * 通知绑定学员对象 inform_user
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("inform_user")
+public class InformUser implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "id")
+    private Long id;
+    /** 用户id */
+    private Long userId;
+    /** 发送时间 */
+    private Long sendTime;
+    /** 发送状态 1成功 0失败 */
+    private Integer sendStatus;
+    /** 已读回执 1已读 0未读 */
+    private Integer receiptStatus;
+    /** 创建时间 */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+    /** $column.columnComment */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+    /** $column.columnComment */
+    private Long informId;
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformClassifyMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.inform.mapper;
+
+import com.zhongzheng.modules.inform.domain.InformClassify;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 【请填写功能名称】Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface InformClassifyMapper extends BaseMapper<InformClassify> {
+
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformCourseMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.inform.mapper;
+
+import com.zhongzheng.modules.inform.domain.InformCourse;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 【请填写功能名称】Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface InformCourseMapper extends BaseMapper<InformCourse> {
+
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformExamMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.inform.mapper;
+
+import com.zhongzheng.modules.inform.domain.InformExam;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 【请填写功能名称】Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface InformExamMapper extends BaseMapper<InformExam> {
+
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.inform.mapper;
+
+import com.zhongzheng.modules.inform.domain.Inform;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 【请填写功能名称】Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface InformMapper extends BaseMapper<Inform> {
+
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/mapper/InformUserMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.inform.mapper;
+
+import com.zhongzheng.modules.inform.domain.InformUser;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 通知绑定学员Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface InformUserMapper extends BaseMapper<InformUser> {
+
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformClassifyService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.inform.service;
+
+import com.zhongzheng.modules.inform.domain.InformClassify;
+import com.zhongzheng.modules.inform.vo.InformClassifyVo;
+import com.zhongzheng.modules.inform.bo.InformClassifyQueryBo;
+import com.zhongzheng.modules.inform.bo.InformClassifyAddBo;
+import com.zhongzheng.modules.inform.bo.InformClassifyEditBo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 【请填写功能名称】Service接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface IInformClassifyService extends IService<InformClassify> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	InformClassifyVo queryById(Long classifyId);
+
+	/**
+	 * 查询列表
+	 */
+	List<InformClassifyVo> queryList(InformClassifyQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入【请填写功能名称】
+	 * @param bo 【请填写功能名称】新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(InformClassifyAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改【请填写功能名称】
+	 * @param bo 【请填写功能名称】编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(InformClassifyEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformCourseService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.inform.service;
+
+import com.zhongzheng.modules.inform.domain.InformCourse;
+import com.zhongzheng.modules.inform.vo.InformCourseVo;
+import com.zhongzheng.modules.inform.bo.InformCourseQueryBo;
+import com.zhongzheng.modules.inform.bo.InformCourseAddBo;
+import com.zhongzheng.modules.inform.bo.InformCourseEditBo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 【请填写功能名称】Service接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface IInformCourseService extends IService<InformCourse> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	InformCourseVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+	List<InformCourseVo> queryList(InformCourseQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入【请填写功能名称】
+	 * @param bo 【请填写功能名称】新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(InformCourseAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改【请填写功能名称】
+	 * @param bo 【请填写功能名称】编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(InformCourseEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformExamService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.inform.service;
+
+import com.zhongzheng.modules.inform.domain.InformExam;
+import com.zhongzheng.modules.inform.vo.InformExamVo;
+import com.zhongzheng.modules.inform.bo.InformExamQueryBo;
+import com.zhongzheng.modules.inform.bo.InformExamAddBo;
+import com.zhongzheng.modules.inform.bo.InformExamEditBo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 【请填写功能名称】Service接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface IInformExamService extends IService<InformExam> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	InformExamVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+	List<InformExamVo> queryList(InformExamQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入【请填写功能名称】
+	 * @param bo 【请填写功能名称】新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(InformExamAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改【请填写功能名称】
+	 * @param bo 【请填写功能名称】编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(InformExamEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.inform.service;
+
+import com.zhongzheng.modules.inform.domain.Inform;
+import com.zhongzheng.modules.inform.vo.InformVo;
+import com.zhongzheng.modules.inform.bo.InformQueryBo;
+import com.zhongzheng.modules.inform.bo.InformAddBo;
+import com.zhongzheng.modules.inform.bo.InformEditBo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 【请填写功能名称】Service接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface IInformService extends IService<Inform> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	InformVo queryById(Long informId);
+
+	/**
+	 * 查询列表
+	 */
+	List<InformVo> queryList(InformQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入【请填写功能名称】
+	 * @param bo 【请填写功能名称】新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(InformAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改【请填写功能名称】
+	 * @param bo 【请填写功能名称】编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(InformEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/IInformUserService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.inform.service;
+
+import com.zhongzheng.modules.inform.domain.InformUser;
+import com.zhongzheng.modules.inform.vo.InformUserVo;
+import com.zhongzheng.modules.inform.bo.InformUserQueryBo;
+import com.zhongzheng.modules.inform.bo.InformUserAddBo;
+import com.zhongzheng.modules.inform.bo.InformUserEditBo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 通知绑定学员Service接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface IInformUserService extends IService<InformUser> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	InformUserVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+	List<InformUserVo> queryList(InformUserQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入通知绑定学员
+	 * @param bo 通知绑定学员新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(InformUserAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改通知绑定学员
+	 * @param bo 通知绑定学员编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(InformUserEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 101 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformClassifyServiceImpl.java

@@ -0,0 +1,101 @@
+package com.zhongzheng.modules.inform.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.utils.DateUtils;
+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.inform.bo.InformClassifyAddBo;
+import com.zhongzheng.modules.inform.bo.InformClassifyQueryBo;
+import com.zhongzheng.modules.inform.bo.InformClassifyEditBo;
+import com.zhongzheng.modules.inform.domain.InformClassify;
+import com.zhongzheng.modules.inform.mapper.InformClassifyMapper;
+import com.zhongzheng.modules.inform.vo.InformClassifyVo;
+import com.zhongzheng.modules.inform.service.IInformClassifyService;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 【请填写功能名称】Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Service
+public class InformClassifyServiceImpl extends ServiceImpl<InformClassifyMapper, InformClassify> implements IInformClassifyService {
+
+    @Override
+    public InformClassifyVo queryById(Long classifyId){
+        InformClassify db = this.baseMapper.selectById(classifyId);
+        return BeanUtil.toBean(db, InformClassifyVo.class);
+    }
+
+    @Override
+    public List<InformClassifyVo> queryList(InformClassifyQueryBo bo) {
+        LambdaQueryWrapper<InformClassify> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getParentId() != null, InformClassify::getParentId, bo.getParentId());
+        lqw.like(StrUtil.isNotBlank(bo.getClassifyName()), InformClassify::getClassifyName, bo.getClassifyName());
+        lqw.in(bo.getStatus() != null, InformClassify::getStatus, bo.getStatus());
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<InformClassifyVo> entity2Vo(Collection<InformClassify> collection) {
+        List<InformClassifyVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, InformClassifyVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<InformClassify> page = (Page<InformClassify>)collection;
+            Page<InformClassifyVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    public Boolean insertByAddBo(InformClassifyAddBo bo) {
+        InformClassify add = BeanUtil.toBean(bo, InformClassify.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+        return this.save(add);
+    }
+
+    @Override
+    public Boolean updateByEditBo(InformClassifyEditBo bo) {
+        InformClassify update = BeanUtil.toBean(bo, InformClassify.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(InformClassify entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 103 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformCourseServiceImpl.java

@@ -0,0 +1,103 @@
+package com.zhongzheng.modules.inform.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.utils.DateUtils;
+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.inform.bo.InformCourseAddBo;
+import com.zhongzheng.modules.inform.bo.InformCourseQueryBo;
+import com.zhongzheng.modules.inform.bo.InformCourseEditBo;
+import com.zhongzheng.modules.inform.domain.InformCourse;
+import com.zhongzheng.modules.inform.mapper.InformCourseMapper;
+import com.zhongzheng.modules.inform.vo.InformCourseVo;
+import com.zhongzheng.modules.inform.service.IInformCourseService;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 【请填写功能名称】Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Service
+public class InformCourseServiceImpl extends ServiceImpl<InformCourseMapper, InformCourse> implements IInformCourseService {
+
+    @Override
+    public InformCourseVo queryById(Long id){
+        InformCourse db = this.baseMapper.selectById(id);
+        return BeanUtil.toBean(db, InformCourseVo.class);
+    }
+
+    @Override
+    public List<InformCourseVo> queryList(InformCourseQueryBo bo) {
+        LambdaQueryWrapper<InformCourse> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getInformId() != null, InformCourse::getInformId, bo.getInformId());
+        lqw.eq(bo.getCourseId() != null, InformCourse::getCourseId, bo.getCourseId());
+        lqw.eq(bo.getSectionId() != null, InformCourse::getSectionId, bo.getSectionId());
+        lqw.eq(bo.getModuleId() != null, InformCourse::getModuleId, bo.getModuleId());
+        lqw.eq(bo.getChapterId() != null, InformCourse::getChapterId, bo.getChapterId());
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<InformCourseVo> entity2Vo(Collection<InformCourse> collection) {
+        List<InformCourseVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, InformCourseVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<InformCourse> page = (Page<InformCourse>)collection;
+            Page<InformCourseVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    public Boolean insertByAddBo(InformCourseAddBo bo) {
+        InformCourse add = BeanUtil.toBean(bo, InformCourse.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+        return this.save(add);
+    }
+
+    @Override
+    public Boolean updateByEditBo(InformCourseEditBo bo) {
+        InformCourse update = BeanUtil.toBean(bo, InformCourse.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(InformCourse entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 103 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformExamServiceImpl.java

@@ -0,0 +1,103 @@
+package com.zhongzheng.modules.inform.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.utils.DateUtils;
+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.inform.bo.InformExamAddBo;
+import com.zhongzheng.modules.inform.bo.InformExamQueryBo;
+import com.zhongzheng.modules.inform.bo.InformExamEditBo;
+import com.zhongzheng.modules.inform.domain.InformExam;
+import com.zhongzheng.modules.inform.mapper.InformExamMapper;
+import com.zhongzheng.modules.inform.vo.InformExamVo;
+import com.zhongzheng.modules.inform.service.IInformExamService;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 【请填写功能名称】Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Service
+public class InformExamServiceImpl extends ServiceImpl<InformExamMapper, InformExam> implements IInformExamService {
+
+    @Override
+    public InformExamVo queryById(Long id){
+        InformExam db = this.baseMapper.selectById(id);
+        return BeanUtil.toBean(db, InformExamVo.class);
+    }
+
+    @Override
+    public List<InformExamVo> queryList(InformExamQueryBo bo) {
+        LambdaQueryWrapper<InformExam> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getInformId() != null, InformExam::getInformId, bo.getInformId());
+        lqw.eq(bo.getCourseId() != null, InformExam::getCourseId, bo.getCourseId());
+        lqw.eq(bo.getExamId() != null, InformExam::getExamId, bo.getExamId());
+        lqw.eq(bo.getModuleId() != null, InformExam::getModuleId, bo.getModuleId());
+        lqw.eq(bo.getChapterId() != null, InformExam::getChapterId, bo.getChapterId());
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<InformExamVo> entity2Vo(Collection<InformExam> collection) {
+        List<InformExamVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, InformExamVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<InformExam> page = (Page<InformExam>)collection;
+            Page<InformExamVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    public Boolean insertByAddBo(InformExamAddBo bo) {
+        InformExam add = BeanUtil.toBean(bo, InformExam.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+        return this.save(add);
+    }
+
+    @Override
+    public Boolean updateByEditBo(InformExamEditBo bo) {
+        InformExam update = BeanUtil.toBean(bo, InformExam.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(InformExam entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 138 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformServiceImpl.java

@@ -0,0 +1,138 @@
+package com.zhongzheng.modules.inform.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.SecurityUtils;
+import com.zhongzheng.modules.inform.bo.InformUserAddBo;
+import com.zhongzheng.modules.inform.service.IInformCourseService;
+import com.zhongzheng.modules.inform.service.IInformExamService;
+import com.zhongzheng.modules.inform.service.IInformUserService;
+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.inform.bo.InformAddBo;
+import com.zhongzheng.modules.inform.bo.InformQueryBo;
+import com.zhongzheng.modules.inform.bo.InformEditBo;
+import com.zhongzheng.modules.inform.domain.Inform;
+import com.zhongzheng.modules.inform.mapper.InformMapper;
+import com.zhongzheng.modules.inform.vo.InformVo;
+import com.zhongzheng.modules.inform.service.IInformService;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 【请填写功能名称】Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Service
+public class InformServiceImpl extends ServiceImpl<InformMapper, Inform> implements IInformService {
+
+    @Autowired
+    private IInformCourseService iInformCourseService;
+
+    @Autowired
+    private IInformExamService iInformExamService;
+
+    @Autowired
+    private IInformUserService iInformUserService;
+
+    @Override
+    public InformVo queryById(Long informId){
+        Inform db = this.baseMapper.selectById(informId);
+        return BeanUtil.toBean(db, InformVo.class);
+    }
+
+    @Override
+    public List<InformVo> queryList(InformQueryBo bo) {
+        LambdaQueryWrapper<Inform> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getInformType() != null, Inform::getInformType, bo.getInformType());
+        lqw.like(StrUtil.isNotBlank(bo.getInformName()), Inform::getInformName, bo.getInformName());
+        lqw.eq(bo.getInformWay() != null, Inform::getInformWay, bo.getInformWay());
+        lqw.eq(bo.getClassifyId() != null, Inform::getClassifyId, bo.getClassifyId());
+        lqw.eq(bo.getIssueStatus() != null, Inform::getIssueStatus, bo.getIssueStatus());
+        lqw.eq(bo.getIssueTime() != null, Inform::getIssueTime, bo.getIssueTime());
+        lqw.eq(bo.getReceiptStatus() != null, Inform::getReceiptStatus, bo.getReceiptStatus());
+        lqw.eq(StrUtil.isNotBlank(bo.getAffiche()), Inform::getAffiche, bo.getAffiche());
+        lqw.eq(bo.getStatus() != null, Inform::getStatus, bo.getStatus());
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<InformVo> entity2Vo(Collection<Inform> collection) {
+        List<InformVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, InformVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<Inform> page = (Page<Inform>)collection;
+            Page<InformVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean insertByAddBo(InformAddBo bo) {
+        Inform add = BeanUtil.toBean(bo, Inform.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+        add.setCreateBy(SecurityUtils.getUsername());
+        boolean save = this.save(add);
+        bo.getInformCourseAddBo().setInformId(add.getInformId());
+        iInformCourseService.insertByAddBo(bo.getInformCourseAddBo());
+        bo.getInformExamAddBo().setInformId(add.getInformId());
+        iInformExamService.insertByAddBo(bo.getInformExamAddBo());
+        for (Long userId : bo.getUserId()) {
+            InformUserAddBo informUserAddBo = new InformUserAddBo();
+            informUserAddBo.setInformId(add.getInformId());
+            informUserAddBo.setUserId(userId);
+            informUserAddBo.setCreateTime(DateUtils.getNowTime());
+            informUserAddBo.setUpdateTime(DateUtils.getNowTime());
+            iInformUserService.insertByAddBo(informUserAddBo);
+        }
+        return save;
+    }
+
+    @Override
+    public Boolean updateByEditBo(InformEditBo bo) {
+        Inform update = BeanUtil.toBean(bo, Inform.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(Inform entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 102 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/service/impl/InformUserServiceImpl.java

@@ -0,0 +1,102 @@
+package com.zhongzheng.modules.inform.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.utils.DateUtils;
+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.inform.bo.InformUserAddBo;
+import com.zhongzheng.modules.inform.bo.InformUserQueryBo;
+import com.zhongzheng.modules.inform.bo.InformUserEditBo;
+import com.zhongzheng.modules.inform.domain.InformUser;
+import com.zhongzheng.modules.inform.mapper.InformUserMapper;
+import com.zhongzheng.modules.inform.vo.InformUserVo;
+import com.zhongzheng.modules.inform.service.IInformUserService;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 通知绑定学员Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Service
+public class InformUserServiceImpl extends ServiceImpl<InformUserMapper, InformUser> implements IInformUserService {
+
+    @Override
+    public InformUserVo queryById(Long id){
+        InformUser db = this.baseMapper.selectById(id);
+        return BeanUtil.toBean(db, InformUserVo.class);
+    }
+
+    @Override
+    public List<InformUserVo> queryList(InformUserQueryBo bo) {
+        LambdaQueryWrapper<InformUser> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getUserId() != null, InformUser::getUserId, bo.getUserId());
+        lqw.eq(bo.getSendTime() != null, InformUser::getSendTime, bo.getSendTime());
+        lqw.eq(bo.getSendStatus() != null, InformUser::getSendStatus, bo.getSendStatus());
+        lqw.eq(bo.getReceiptStatus() != null, InformUser::getReceiptStatus, bo.getReceiptStatus());
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<InformUserVo> entity2Vo(Collection<InformUser> collection) {
+        List<InformUserVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, InformUserVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<InformUser> page = (Page<InformUser>)collection;
+            Page<InformUserVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    public Boolean insertByAddBo(InformUserAddBo bo) {
+        InformUser add = BeanUtil.toBean(bo, InformUser.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+        return this.save(add);
+    }
+
+    @Override
+    public Boolean updateByEditBo(InformUserEditBo bo) {
+        InformUser update = BeanUtil.toBean(bo, InformUser.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(InformUser entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 39 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformClassifyVo.java

@@ -0,0 +1,39 @@
+package com.zhongzheng.modules.inform.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 ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】视图对象")
+public class InformClassifyVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long classifyId;
+
+	/** 0为顶级父类 */
+	@Excel(name = "0为顶级父类")
+	@ApiModelProperty("0为顶级父类")
+	private Long parentId;
+	/** 分类名称 */
+	@Excel(name = "分类名称")
+	@ApiModelProperty("分类名称")
+	private String classifyName;
+	/** 1使用 0未使用 */
+	@Excel(name = "1使用 0未使用")
+	@ApiModelProperty("1使用 0未使用")
+	private Integer status;
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformCourseVo.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.inform.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 ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】视图对象")
+public class InformCourseVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long id;
+
+	/** $column.columnComment */
+	@Excel(name = "${comment}" , readConverterExp = "$column.readConverterExp()")
+	@ApiModelProperty("$column.columnComment")
+	private Long informId;
+	/** 课程ID */
+	@Excel(name = "课程ID")
+	@ApiModelProperty("课程ID")
+	private Long courseId;
+	/** 节ID */
+	@Excel(name = "节ID")
+	@ApiModelProperty("节ID")
+	private Long sectionId;
+	/** 模块ID */
+	@Excel(name = "模块ID")
+	@ApiModelProperty("模块ID")
+	private Long moduleId;
+	/** 章ID */
+	@Excel(name = "章ID")
+	@ApiModelProperty("章ID")
+	private Long chapterId;
+
+	/** 题目位置 */
+	@Excel(name = "题目位置")
+	@ApiModelProperty("题目位置")
+	private Long topicNum;
+}

+ 51 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformExamVo.java

@@ -0,0 +1,51 @@
+package com.zhongzheng.modules.inform.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 ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】视图对象")
+public class InformExamVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long id;
+
+	/** $column.columnComment */
+	@Excel(name = "${comment}" , readConverterExp = "$column.readConverterExp()")
+	@ApiModelProperty("$column.columnComment")
+	private Long informId;
+	/** 课程ID */
+	@Excel(name = "课程ID")
+	@ApiModelProperty("课程ID")
+	private Long courseId;
+	/** 试卷id */
+	@Excel(name = "试卷id")
+	@ApiModelProperty("试卷id")
+	private Long examId;
+	/** 模块ID */
+	@Excel(name = "模块ID")
+	@ApiModelProperty("模块ID")
+	private Long moduleId;
+	/** 章ID */
+	@Excel(name = "章ID")
+	@ApiModelProperty("章ID")
+	private Long chapterId;
+	/** 题目位置 */
+	@Excel(name = "题目位置")
+	@ApiModelProperty("题目位置")
+	private Long topicNum;
+}

+ 47 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformUserVo.java

@@ -0,0 +1,47 @@
+package com.zhongzheng.modules.inform.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 ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("通知绑定学员视图对象")
+public class InformUserVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long id;
+
+	/** 用户id */
+	@Excel(name = "用户id")
+	@ApiModelProperty("用户id")
+	private Long userId;
+	/** 发送时间 */
+	@Excel(name = "发送时间")
+	@ApiModelProperty("发送时间")
+	private Long sendTime;
+	/** 发送状态 1成功 0失败 */
+	@Excel(name = "发送状态 1成功 0失败")
+	@ApiModelProperty("发送状态 1成功 0失败")
+	private Integer sendStatus;
+	/** 已读回执 1已读 0未读 */
+	@Excel(name = "已读回执 1已读 0未读")
+	@ApiModelProperty("已读回执 1已读 0未读")
+	private Integer receiptStatus;
+	/** $column.columnComment */
+	@Excel(name = "已读回执 1已读 0未读")
+	@ApiModelProperty("$column.columnComment")
+	private Long informId;
+}

+ 70 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/inform/vo/InformVo.java

@@ -0,0 +1,70 @@
+package com.zhongzheng.modules.inform.vo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+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 ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("【请填写功能名称】视图对象")
+public class InformVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long informId;
+
+	/** 1 学员通知 */
+	@Excel(name = "1 学员通知")
+	@ApiModelProperty("1 学员通知")
+	private Integer informType;
+	/** 通知标题 */
+	@Excel(name = "通知标题")
+	@ApiModelProperty("通知标题")
+	private String informName;
+	/** 1站内信 */
+	@Excel(name = "1站内信")
+	@ApiModelProperty("1站内信")
+	private Integer informWay;
+	/** 分类id */
+	@Excel(name = "分类id")
+	@ApiModelProperty("分类id")
+	private Long classifyId;
+	/** 发布状态 1立即发布 2定时发布 */
+	@Excel(name = "发布状态 1立即发布 2定时发布")
+	@ApiModelProperty("发布状态 1立即发布 2定时发布")
+	private Integer issueStatus;
+	/** $column.columnComment */
+	@Excel(name = "发布状态 1立即发布 2定时发布")
+	@ApiModelProperty("$column.columnComment")
+	private Long issueTime;
+	/** 1需要已读回执 0否 */
+	@Excel(name = "1需要已读回执 0否")
+	@ApiModelProperty("1需要已读回执 0否")
+	private Integer receiptStatus;
+	/** 公告 */
+	@Excel(name = "公告")
+	@ApiModelProperty("公告")
+	private String affiche;
+	/** 1已发布 0未发布 -1删除 */
+	@Excel(name = "1已发布 0未发布 -1删除")
+	@ApiModelProperty("1已发布 0未发布 -1删除")
+	private Integer status;
+
+	/** 发布者*/
+	@Excel(name = "发布者")
+	@ApiModelProperty("发布者")
+	private String createBy;
+}

+ 39 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserUpdateAddBo.java

@@ -0,0 +1,39 @@
+package com.zhongzheng.modules.user.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 用户修改记录添加对象 user_update
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("用户修改记录添加对象")
+public class UserUpdateAddBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long userId;
+    /** 真实姓名 */
+    @ApiModelProperty("真实姓名")
+    private String realname;
+    /** 身份证号 */
+    @ApiModelProperty("身份证号")
+    private String idCard;
+    /** 手机号码 */
+    @ApiModelProperty("手机号码")
+    private String telphone;
+    /** 添加时间 */
+    @ApiModelProperty("添加时间")
+    private Long createTime;
+    /** 修改时间 */
+    @ApiModelProperty("修改时间")
+    private Long updateTime;
+}

+ 45 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserUpdateEditBo.java

@@ -0,0 +1,45 @@
+package com.zhongzheng.modules.user.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.util.Date;
+
+
+/**
+ * 用户修改记录编辑对象 user_update
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("用户修改记录编辑对象")
+public class UserUpdateEditBo {
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long id;
+
+    /** $column.columnComment */
+    @ApiModelProperty("$column.columnComment")
+    private Long userId;
+
+    /** 真实姓名 */
+    @ApiModelProperty("真实姓名")
+    private String realname;
+
+    /** 身份证号 */
+    @ApiModelProperty("身份证号")
+    private String idCard;
+
+    /** 手机号码 */
+    @ApiModelProperty("手机号码")
+    private String telphone;
+
+    /** 修改时间 */
+    @ApiModelProperty("修改时间")
+    private Long updateTime;
+
+
+}

+ 51 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserUpdateQueryBo.java

@@ -0,0 +1,51 @@
+package com.zhongzheng.modules.user.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;
+
+/**
+ * 用户修改记录分页查询对象 user_update
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("用户修改记录分页查询对象")
+public class UserUpdateQueryBo extends BaseEntity {
+
+	/** 分页大小 */
+	@ApiModelProperty("分页大小")
+	private Integer pageSize;
+	/** 当前页数 */
+	@ApiModelProperty("当前页数")
+	private Integer pageNum;
+	/** 排序列 */
+	@ApiModelProperty("排序列")
+	private String orderByColumn;
+	/** 排序的方向desc或者asc */
+	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
+	private String isAsc;
+
+
+	/** $column.columnComment */
+	@ApiModelProperty("$column.columnComment")
+	private Long userId;
+	/** 真实姓名 */
+	@ApiModelProperty("真实姓名")
+	private String realname;
+	/** 身份证号 */
+	@ApiModelProperty("身份证号")
+	private String idCard;
+	/** 手机号码 */
+	@ApiModelProperty("手机号码")
+	private String telphone;
+}

+ 43 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserUpdate.java

@@ -0,0 +1,43 @@
+package com.zhongzheng.modules.user.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;
+
+/**
+ * 用户修改记录对象 user_update
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("user_update")
+public class UserUpdate implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    /** $column.columnComment */
+    @TableId(value = "id")
+    private Long id;
+    /** $column.columnComment */
+    private Long userId;
+    /** 真实姓名 */
+    private String realname;
+    /** 身份证号 */
+    private String idCard;
+    /** 手机号码 */
+    private String telphone;
+    /** 添加时间 */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+    /** 修改时间 */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserUpdateMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.user.mapper;
+
+import com.zhongzheng.modules.user.domain.UserUpdate;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 用户修改记录Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface UserUpdateMapper extends BaseMapper<UserUpdate> {
+
+}

+ 52 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserUpdateService.java

@@ -0,0 +1,52 @@
+package com.zhongzheng.modules.user.service;
+
+import com.zhongzheng.modules.user.domain.UserUpdate;
+import com.zhongzheng.modules.user.vo.UserUpdateVo;
+import com.zhongzheng.modules.user.bo.UserUpdateQueryBo;
+import com.zhongzheng.modules.user.bo.UserUpdateAddBo;
+import com.zhongzheng.modules.user.bo.UserUpdateEditBo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 用户修改记录Service接口
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+public interface IUserUpdateService extends IService<UserUpdate> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	UserUpdateVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+	List<UserUpdateVo> queryList(UserUpdateQueryBo bo);
+
+	/**
+	 * 根据新增业务对象插入用户修改记录
+	 * @param bo 用户修改记录新增业务对象
+	 * @return
+	 */
+	Boolean insertByAddBo(UserUpdateAddBo bo);
+
+	/**
+	 * 根据编辑业务对象修改用户修改记录
+	 * @param bo 用户修改记录编辑业务对象
+	 * @return
+	 */
+	Boolean updateByEditBo(UserUpdateEditBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 103 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserUpdateServiceImpl.java

@@ -0,0 +1,103 @@
+package com.zhongzheng.modules.user.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
+import com.zhongzheng.common.utils.DateUtils;
+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.user.bo.UserUpdateAddBo;
+import com.zhongzheng.modules.user.bo.UserUpdateQueryBo;
+import com.zhongzheng.modules.user.bo.UserUpdateEditBo;
+import com.zhongzheng.modules.user.domain.UserUpdate;
+import com.zhongzheng.modules.user.mapper.UserUpdateMapper;
+import com.zhongzheng.modules.user.vo.UserUpdateVo;
+import com.zhongzheng.modules.user.service.IUserUpdateService;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 用户修改记录Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-11-23
+ */
+@Service
+public class UserUpdateServiceImpl extends ServiceImpl<UserUpdateMapper, UserUpdate> implements IUserUpdateService {
+
+    @Override
+    public UserUpdateVo queryById(Long id){
+        UserUpdate db = this.baseMapper.selectById(id);
+        return BeanUtil.toBean(db, UserUpdateVo.class);
+    }
+
+    @Override
+    public List<UserUpdateVo> queryList(UserUpdateQueryBo bo) {
+        LambdaQueryWrapper<UserUpdate> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getUserId() != null, UserUpdate::getUserId, bo.getUserId());
+        lqw.like(StrUtil.isNotBlank(bo.getRealname()), UserUpdate::getRealname, bo.getRealname());
+        lqw.eq(StrUtil.isNotBlank(bo.getIdCard()), UserUpdate::getIdCard, bo.getIdCard());
+        lqw.eq(StrUtil.isNotBlank(bo.getTelphone()), UserUpdate::getTelphone, bo.getTelphone());
+        lqw.orderByDesc(UserUpdate::getCreateTime);
+        return entity2Vo(this.list(lqw));
+    }
+
+    /**
+    * 实体类转化成视图对象
+    *
+    * @param collection 实体类集合
+    * @return
+    */
+    private List<UserUpdateVo> entity2Vo(Collection<UserUpdate> collection) {
+        List<UserUpdateVo> voList = collection.stream()
+                .map(any -> BeanUtil.toBean(any, UserUpdateVo.class))
+                .collect(Collectors.toList());
+        if (collection instanceof Page) {
+            Page<UserUpdate> page = (Page<UserUpdate>)collection;
+            Page<UserUpdateVo> pageVo = new Page<>();
+            BeanUtil.copyProperties(page,pageVo);
+            pageVo.addAll(voList);
+            voList = pageVo;
+        }
+        return voList;
+    }
+
+    @Override
+    public Boolean insertByAddBo(UserUpdateAddBo bo) {
+        UserUpdate add = BeanUtil.toBean(bo, UserUpdate.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+        return this.save(add);
+    }
+
+    @Override
+    public Boolean updateByEditBo(UserUpdateEditBo bo) {
+        UserUpdate update = BeanUtil.toBean(bo, UserUpdate.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(UserUpdate entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return this.removeByIds(ids);
+    }
+}

+ 43 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserUpdateVo.java

@@ -0,0 +1,43 @@
+package com.zhongzheng.modules.user.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 ruoyi
+ * @date 2021-11-23
+ */
+@Data
+@ApiModel("用户修改记录视图对象")
+public class UserUpdateVo {
+	private static final long serialVersionUID = 1L;
+
+	/** $pkColumn.columnComment */
+	@ApiModelProperty("$pkColumn.columnComment")
+	private Long id;
+
+	/** $column.columnComment */
+	@Excel(name = "${comment}" , readConverterExp = "$column.readConverterExp()")
+	@ApiModelProperty("$column.columnComment")
+	private Long userId;
+	/** 真实姓名 */
+	@Excel(name = "真实姓名")
+	@ApiModelProperty("真实姓名")
+	private String realname;
+	/** 身份证号 */
+	@Excel(name = "身份证号")
+	@ApiModelProperty("身份证号")
+	private String idCard;
+	/** 手机号码 */
+	@Excel(name = "手机号码")
+	@ApiModelProperty("手机号码")
+	private String telphone;
+}

+ 3 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserVo.java

@@ -191,9 +191,9 @@ public class UserVo {
 	@Excel(name = "公司名称")
 	@ApiModelProperty("公司名称")
 	private String companyName;
-	/** 族 */
-	@Excel(name = "族")
-	@ApiModelProperty("族")
+	/** 族 */
+	@Excel(name = "族")
+	@ApiModelProperty("族")
 	private String nation;
 	/** 户口性质 */
 	@Excel(name = "户口性质 1農村 2城鎮")

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

@@ -88,7 +88,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             AND s.handouts_name like (concat('%', #{handoutsName}, '%'))
         </if>
         GROUP BY s.handouts_id
-        ORDER BY s.update_time
+        ORDER BY s.update_time desc
     </select>
 
 </mapper>

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamKnowledgeMapper.xml

@@ -96,6 +96,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="knowledgeName != null ">
             AND k.knowledge_name like concat('%', #{knowledgeName}, '%')
         </if>
+        order by k.create_time desc
     </select>
 
     <select id="queryCourseBusinessList" resultType="long" resultMap="CourseBusinessVoResult">

+ 1 - 1
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml

@@ -269,7 +269,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="gradeId != null and gradeId !='' ">
           and cgu.grade_id = #{gradeId}
         </if>
-        order by cgu.update_time
+        order by cgu.create_time desc
     </select>
 
 

+ 10 - 1
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeUserMapper.xml

@@ -142,6 +142,9 @@
         <if test="gradeId != null and gradeId != ''">
             AND g.grade_id = #{gradeId}
         </if>
+        <if test="userId != null and userId != ''">
+            AND g.user_id = #{userId}
+        </if>
         order by g.update_time desc
     </select>
 
@@ -215,7 +218,10 @@
         <if test="gradeId != null and gradeId !='' ">
             and cgu.grade_id = #{gradeId}
         </if>
-        order by cgu.update_time
+        <if test="periodStatus != null and periodStatus !='' ">
+            and cgu.period_status = #{periodStatus}
+        </if>
+        order by cgu.update_time desc
     </select>
 
     <select id="listPeriod" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
@@ -251,6 +257,9 @@
         <if test="gradeId != null and gradeId !='' ">
             and cgu.grade_id = #{gradeId}
         </if>
+        <if test="periodStatus != null and periodStatus !='' ">
+            and cgu.period_status = #{periodStatus}
+        </if>
     </select>
 
     <select id="listPeriodAudit" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"

+ 17 - 0
zhongzheng-system/src/main/resources/mapper/modules/inform/InformClassifyMapper.xml

@@ -0,0 +1,17 @@
+<?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.inform.mapper.InformClassifyMapper">
+
+    <resultMap type="com.zhongzheng.modules.inform.domain.InformClassify" id="InformClassifyResult">
+        <result property="classifyId" column="classify_id"/>
+        <result property="parentId" column="parent_id"/>
+        <result property="classifyName" column="classify_name"/>
+        <result property="status" column="status"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+
+
+</mapper>

+ 19 - 0
zhongzheng-system/src/main/resources/mapper/modules/inform/InformCourseMapper.xml

@@ -0,0 +1,19 @@
+<?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.inform.mapper.InformCourseMapper">
+
+    <resultMap type="com.zhongzheng.modules.inform.domain.InformCourse" id="InformCourseResult">
+        <result property="id" column="id"/>
+        <result property="informId" column="inform_id"/>
+        <result property="courseId" column="course_id"/>
+        <result property="sectionId" column="section_id"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="moduleId" column="module_id"/>
+        <result property="chapterId" column="chapter_id"/>
+    </resultMap>
+
+
+</mapper>

+ 19 - 0
zhongzheng-system/src/main/resources/mapper/modules/inform/InformExamMapper.xml

@@ -0,0 +1,19 @@
+<?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.inform.mapper.InformExamMapper">
+
+    <resultMap type="com.zhongzheng.modules.inform.domain.InformExam" id="InformExamResult">
+        <result property="id" column="id"/>
+        <result property="informId" column="inform_id"/>
+        <result property="courseId" column="course_id"/>
+        <result property="examId" column="exam_id"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="moduleId" column="module_id"/>
+        <result property="chapterId" column="chapter_id"/>
+    </resultMap>
+
+
+</mapper>

+ 23 - 0
zhongzheng-system/src/main/resources/mapper/modules/inform/InformMapper.xml

@@ -0,0 +1,23 @@
+<?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.inform.mapper.InformMapper">
+
+    <resultMap type="com.zhongzheng.modules.inform.domain.Inform" id="InformResult">
+        <result property="informId" column="inform_id"/>
+        <result property="informType" column="inform_type"/>
+        <result property="informName" column="inform_name"/>
+        <result property="informWay" column="inform_way"/>
+        <result property="classifyId" column="classify_id"/>
+        <result property="issueStatus" column="issue_status"/>
+        <result property="issueTime" column="issue_time"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="receiptStatus" column="receipt_status"/>
+        <result property="affiche" column="affiche"/>
+        <result property="status" column="status"/>
+    </resultMap>
+
+
+</mapper>

+ 18 - 0
zhongzheng-system/src/main/resources/mapper/modules/inform/InformUserMapper.xml

@@ -0,0 +1,18 @@
+<?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.inform.mapper.InformUserMapper">
+
+    <resultMap type="com.zhongzheng.modules.inform.domain.InformUser" id="InformUserResult">
+        <result property="id" column="id"/>
+        <result property="userId" column="user_id"/>
+        <result property="sendTime" column="send_time"/>
+        <result property="sendStatus" column="send_status"/>
+        <result property="receiptStatus" column="receipt_status"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+
+
+</mapper>

+ 18 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserUpdateMapper.xml

@@ -0,0 +1,18 @@
+<?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.user.mapper.UserUpdateMapper">
+
+    <resultMap type="com.zhongzheng.modules.user.domain.UserUpdate" id="UserUpdateResult">
+        <result property="id" column="id"/>
+        <result property="userId" column="user_id"/>
+        <result property="realname" column="realname"/>
+        <result property="idCard" column="id_card"/>
+        <result property="telphone" column="telphone"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+
+
+</mapper>