Ver Fonte

fix 小程序课程

he2802 há 3 anos atrás
pai
commit
e58b7eb475
33 ficheiros alterados com 595 adições e 82 exclusões
  1. 10 0
      zhongzheng-admin/src/main/java/com/zhongzheng/controller/polyv/PolyvVideoController.java
  2. 70 10
      zhongzheng-api/src/main/java/com/zhongzheng/controller/exam/ExamApplyController.java
  3. 57 0
      zhongzheng-api/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java
  4. 1 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/mapper/CourseMenuMapper.java
  5. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseBusinessServiceImpl.java
  6. 1 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseEducationTypeServiceImpl.java
  7. 15 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/mapper/ExamApplyMapper.java
  8. 5 4
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/IExamApplyService.java
  9. 44 4
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamApplyServiceImpl.java
  10. 4 6
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamBeforeServiceImpl.java
  11. 21 18
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamNumberServiceImpl.java
  12. 8 2
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/vo/ExamApplySiteTimeTwoVo.java
  13. 44 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/vo/ExamUserApplySiteTimeVo.java
  14. 1 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/vo/ExamUserApplySiteVo.java
  15. 7 5
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java
  16. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/polyv/service/IPolyvVideoService.java
  17. 11 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/polyv/service/impl/PolyvVideoServiceImpl.java
  18. 32 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/polyv/vo/PolyvVo.java
  19. 33 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserSubscribeAddBo.java
  20. 32 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserSubscribeEditBo.java
  21. 16 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserSubscribe.java
  22. 3 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserSubscribeService.java
  23. 13 16
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserSubscribeServiceImpl.java
  24. 41 6
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserSubscribeVo.java
  25. 1 0
      zhongzheng-system/src/main/resources/mapper/modules/base/ProfileTpMapper.xml
  26. 1 0
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseChapterMapper.xml
  27. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseChapterSectionMapper.xml
  28. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseMenuMapper.xml
  29. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseModuleChapterMapper.xml
  30. 102 1
      zhongzheng-system/src/main/resources/mapper/modules/exam/ExamApplyMapper.xml
  31. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/exam/ExamBeforeMapper.xml
  32. 1 1
      zhongzheng-system/src/main/resources/mapper/modules/exam/ExamNumberGoodsMapper.xml
  33. 12 0
      zhongzheng-system/src/main/resources/mapper/modules/user/UserSubscribeMapper.xml

+ 10 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/polyv/PolyvVideoController.java

@@ -4,6 +4,7 @@ import com.zhongzheng.common.core.domain.model.LoginUser;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.framework.web.service.TokenService;
 import com.zhongzheng.modules.polyv.vo.PolyvVideoQuerVo;
+import com.zhongzheng.modules.polyv.vo.PolyvVo;
 import lombok.RequiredArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -52,6 +53,15 @@ public class PolyvVideoController extends BaseController {
         return AjaxResult.success("成功",token);
     }
 
+    /**
+     * 获取保利威视频信息详细信息
+     */
+    @ApiOperation("获取保利威视频上传签名")
+    @GetMapping("/getPolyvUpload")
+    public AjaxResult<PolyvVo> getPolyvUpload() throws Exception {
+        return AjaxResult.success(iPolyvVideoService.getPolyvUpload());
+    }
+
 
    /* *//**
      * 查询保利威视频信息列表

+ 70 - 10
zhongzheng-api/src/main/java/com/zhongzheng/controller/exam/ExamApplyController.java

@@ -5,14 +5,19 @@ import com.zhongzheng.common.core.controller.BaseController;
 import com.zhongzheng.common.core.domain.AjaxResult;
 import com.zhongzheng.common.core.page.TableDataInfo;
 import com.zhongzheng.common.enums.BusinessType;
+import com.zhongzheng.common.utils.ServletUtils;
+import com.zhongzheng.framework.web.service.WxTokenService;
 import com.zhongzheng.modules.exam.bo.*;
 import com.zhongzheng.modules.exam.service.IExamApplyGoodsService;
 import com.zhongzheng.modules.exam.service.IExamApplyService;
 import com.zhongzheng.modules.exam.service.IExamApplySiteService;
-import com.zhongzheng.modules.exam.vo.ExamApplySiteVo;
-import com.zhongzheng.modules.exam.vo.ExamApplyVo;
-import com.zhongzheng.modules.exam.vo.ExamNumberGoodsVo;
-import com.zhongzheng.modules.exam.vo.ExamUserApplyVo;
+import com.zhongzheng.modules.exam.vo.*;
+import com.zhongzheng.modules.user.bo.UserSubscribeAddBo;
+import com.zhongzheng.modules.user.bo.UserSubscribeEditBo;
+import com.zhongzheng.modules.user.bo.UserSubscribeQueryBo;
+import com.zhongzheng.modules.user.entity.ClientLoginUser;
+import com.zhongzheng.modules.user.service.IUserSubscribeService;
+import com.zhongzheng.modules.user.vo.UserSubscribeVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
@@ -40,12 +45,18 @@ public class ExamApplyController extends BaseController {
 
     private final IExamApplyGoodsService iExamApplyGoodsService;
 
+    private final WxTokenService wxTokenService;
+
+    private final IUserSubscribeService iUserSubscribeService;
+
     /**
      * 获取考试安排详细信息
      */
     @ApiOperation("点击预约报考按钮")
     @GetMapping("/subscribe")
     public AjaxResult<ExamUserApplyVo> subscribe(ExamApplyQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
         ExamUserApplyVo examUserApplyVo = iExamApplyService.subscribe(bo);
         return AjaxResult.success(examUserApplyVo);
     }
@@ -53,9 +64,11 @@ public class ExamApplyController extends BaseController {
     /**
      * 获取考试安排详细信息
      */
-    @ApiOperation("预约报考下一步按钮 1 进入有前陪有考试地点得预约考试  2进入无前陪有考试地点预约考试 3无考试次数购买商品")
+    @ApiOperation("预约报考下一步按钮 1 进入有考陪有考试地点得预约考试  2进入无考陪有考试地点预约考试 3无考试次数购买商品")
     @GetMapping("/subscribeNext")
     public AjaxResult<Long> subscribeNext(ExamApplyQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
         Long count = iExamApplyService.subscribeNext(bo);
         return AjaxResult.success(count);
     }
@@ -64,12 +77,59 @@ public class ExamApplyController extends BaseController {
     /**
      * 获取考试安排详细信息
      */
-/*    @ApiOperation("预约报考下一步按钮 1 进入有前陪有考试地点得预约考试  2进入无前陪有考试地点预约考试 3无考试次数购买商品")
-    @GetMapping("/subscribeNext")
-    public AjaxResult<Long> subscribeNext(ExamApplyQueryBo bo) {
-        Long count = iExamApplyService.subscribeNext(bo);
+    @ApiOperation("获得考试的考试地点")
+    @GetMapping("/subscribeApplySite")
+    public AjaxResult<List<ExamUserApplySiteVo>> subscribeApplySite(ExamApplyQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        List<ExamUserApplySiteVo> count = iExamApplyService.subscribeApplySite(bo);
+        return AjaxResult.success(count);
+    }
+
+    /**
+     * 获取考试安排详细信息
+     */
+    @ApiOperation("获得考试的考培地点")
+    @GetMapping("/subscribeApplySiteTrain")
+    public AjaxResult<List<ExamUserApplySiteVo>> subscribeApplySiteTrain(ExamApplyQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        List<ExamUserApplySiteVo> count = iExamApplyService.subscribeApplySiteTrain(bo);
         return AjaxResult.success(count);
-    }*/
+    }
 
+    /**
+     * 新增用户预约考试
+     */
+    @ApiOperation("新增用户预约考试")
+    @Log(title = "用户预约考试", businessType = BusinessType.INSERT)
+    @PostMapping()
+    public AjaxResult<Long> add(@RequestBody UserSubscribeAddBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        return AjaxResult.success(iUserSubscribeService.insertByAddBo(bo));
+    }
 
+    /**
+     * 查询用户预约考试列表
+     */
+    @ApiOperation("查询报考数据列表")
+    @GetMapping("/list")
+    public TableDataInfo<UserSubscribeVo> listSubscribe(UserSubscribeQueryBo bo) {
+        startPage();
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        List<UserSubscribeVo> list = iUserSubscribeService.listSubscribe(bo);
+        return getDataTable(list);
+    }
+
+    /**
+     * 修改用户预约考试
+     */
+    @ApiOperation("修改用户预约考试")
+    @Log(title = "用户预约考试", businessType = BusinessType.UPDATE)
+    @PostMapping("edit")
+    public AjaxResult<Void> edit(@RequestBody UserSubscribeEditBo bo) {
+        return toAjax(iUserSubscribeService.updateByEditSingleBo(bo) ? 1 : 0);
+    }
 }

+ 57 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java

@@ -0,0 +1,57 @@
+package com.zhongzheng.controller.grade;
+
+import com.zhongzheng.common.annotation.Log;
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import com.zhongzheng.common.enums.BusinessType;
+import com.zhongzheng.common.utils.ServletUtils;
+import com.zhongzheng.modules.grade.bo.*;
+import com.zhongzheng.modules.grade.service.*;
+import com.zhongzheng.modules.grade.vo.*;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 班级Controller
+ *
+ * @author ruoyi
+ * @date 2021-11-10
+ */
+@Api(value = "班级控制器", tags = {"班级管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/grade/grade")
+public class ClassGradeController extends BaseController {
+
+    private final IClassGradeService iClassGradeService;
+
+    private final IClassGradeInterfaceService iClassGradeInterfaceService;
+
+    private final IClassGradeSysService iClassGradeSysService;
+
+    private final IClassGradeUserService iClassGradeUserService;
+
+    private final IUserPeriodService iUserPeriodService;
+
+    private final IUserPeriodStatusService userPeriodStatusService;
+
+    /**
+     * 查询班级列表
+     */
+    @ApiOperation("查询班级列表")
+    @GetMapping("/list")
+    public TableDataInfo<ClassGradeVo> list(ClassGradeQueryBo bo) {
+        startPage();
+        List<ClassGradeVo> list = iClassGradeService.queryList(bo);
+        return getDataTable(list);
+    }
+
+}

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

@@ -11,7 +11,7 @@ import org.apache.ibatis.annotations.Param;
 import java.util.List;
 
 /**
- * 课程目录结构Mapper接口
+ * .modules.user结构Mapper接口
  *
  * @author hjl
  * @date 2021-10-12

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

@@ -90,6 +90,7 @@ public class CourseBusinessServiceImpl extends ServiceImpl<CourseBusinessMapper,
             courseBusinessQueryBo.setProjectId(bo.getProjectId());
             List<Integer> longs = new ArrayList<>();
             longs.add(1);
+            longs.add(0);
             courseBusinessQueryBo.setStatus(longs);
             courseBusinessQueryBo.setId(update.getId());
             Collection<CourseBusinessVo> courseBusinessVos = baseMapper.queryList(courseBusinessQueryBo);
@@ -112,6 +113,7 @@ public class CourseBusinessServiceImpl extends ServiceImpl<CourseBusinessMapper,
         courseBusinessQueryBo.setProjectId(entity.getProjectId());
         List<Integer> longs = new ArrayList<>();
         longs.add(1);
+        longs.add(0);
         courseBusinessQueryBo.setStatus(longs);
         Collection<CourseBusinessVo> courseBusinessVos = baseMapper.queryList(courseBusinessQueryBo);
         if (!CollectionUtils.isEmpty(courseBusinessVos)){

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseEducationTypeServiceImpl.java

@@ -120,7 +120,7 @@ public class CourseEducationTypeServiceImpl extends ServiceImpl<CourseEducationT
         List<CourseEducationType> list = this.list(lqw);
         if (CollectionUtils.isEmpty(list)){
             lqw.clear();
-            lqw.like(StrUtil.isNotBlank(bo.getEducationName()), CourseEducationType::getEducationName, bo.getEducationName());
+            lqw.eq(StrUtil.isNotBlank(bo.getEducationName()), CourseEducationType::getEducationName, bo.getEducationName());
             List<Integer> status = new ArrayList<>();
             status.add(1);
             status.add(0);

+ 15 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/mapper/ExamApplyMapper.java

@@ -46,4 +46,19 @@ public interface ExamApplyMapper extends BaseMapper<ExamApply> {
     Integer residueSubscribeNext(ExamApplyQueryBo bo);
 
     Integer beforeSubscribeNext(ExamApplyQueryBo bo);
+
+    List<ExamUserApplySiteVo> subscribeApplySite(ExamApplyQueryBo bo);
+
+    List<ExamUserApplySiteTimeVo> subscribeApplySiteTime(Long id);
+
+    Long registration(@Param("applyId")Long applyId,@Param("examTime") Long examTime,@Param("siteAddress") String siteAddress,@Param("startTime") String startTime,@Param("endTime") String endTime);
+
+    Long userStatus(@Param("userId") Long userId,@Param("examTime") Long examTime,@Param("startTime") String startTime,@Param("endTime") String endTime);
+
+    List<ExamUserApplySiteVo> subscribeApplySiteTrain(ExamApplyQueryBo bo);
+
+    Long registrationTrain(@Param("applyId")Long applyId,@Param("examTime") Long examTime,@Param("siteAddress") String siteAddress,@Param("startTime") String startTime,@Param("endTime") String endTime);
+
+    Long userStatusTrain(@Param("userId") Long userId,@Param("examTime") Long examTime,@Param("startTime") String startTime,@Param("endTime") String endTime);
+
 }

+ 5 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/IExamApplyService.java

@@ -2,14 +2,11 @@ package com.zhongzheng.modules.exam.service;
 
 import com.zhongzheng.modules.exam.bo.ExamNumberGoodsQueryBo;
 import com.zhongzheng.modules.exam.domain.ExamApply;
-import com.zhongzheng.modules.exam.vo.ExamApplySiteVo;
-import com.zhongzheng.modules.exam.vo.ExamApplyVo;
+import com.zhongzheng.modules.exam.vo.*;
 import com.zhongzheng.modules.exam.bo.ExamApplyQueryBo;
 import com.zhongzheng.modules.exam.bo.ExamApplyAddBo;
 import com.zhongzheng.modules.exam.bo.ExamApplyEditBo;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.zhongzheng.modules.exam.vo.ExamNumberGoodsVo;
-import com.zhongzheng.modules.exam.vo.ExamUserApplyVo;
 
 import java.util.Collection;
 import java.util.List;
@@ -63,4 +60,8 @@ public interface IExamApplyService extends IService<ExamApply> {
 	ExamUserApplyVo subscribe(ExamApplyQueryBo bo);
 
     Long subscribeNext(ExamApplyQueryBo bo);
+
+    List<ExamUserApplySiteVo> subscribeApplySite(ExamApplyQueryBo bo);
+
+	List<ExamUserApplySiteVo> subscribeApplySiteTrain(ExamApplyQueryBo bo);
 }

+ 44 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamApplyServiceImpl.java

@@ -2,20 +2,20 @@ package com.zhongzheng.modules.exam.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
-import com.zhongzheng.modules.exam.bo.ExamNumberGoodsQueryBo;
+import com.zhongzheng.modules.exam.bo.*;
 import com.zhongzheng.modules.exam.vo.*;
+import com.zhongzheng.modules.user.vo.CalendarStudyVo;
 import io.swagger.annotations.ApiModelProperty;
 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.exam.bo.ExamApplyAddBo;
-import com.zhongzheng.modules.exam.bo.ExamApplyQueryBo;
-import com.zhongzheng.modules.exam.bo.ExamApplyEditBo;
 import com.zhongzheng.modules.exam.domain.ExamApply;
 import com.zhongzheng.modules.exam.mapper.ExamApplyMapper;
 import com.zhongzheng.modules.exam.service.IExamApplyService;
@@ -207,4 +207,44 @@ public class ExamApplyServiceImpl extends ServiceImpl<ExamApplyMapper, ExamApply
         }
         return 2L;
     }
+
+    @Override
+    public List<ExamUserApplySiteVo> subscribeApplySite(ExamApplyQueryBo bo) {
+        List<ExamUserApplySiteVo> examUserApplySiteVos= baseMapper.subscribeApplySite(bo);
+        //获得详细地址查看是否满员
+        for (ExamUserApplySiteVo examUserApplySiteVo : examUserApplySiteVos) {
+            List<ExamUserApplySiteTimeVo> examApplySiteTime = baseMapper.subscribeApplySiteTime(examUserApplySiteVo.getId());
+            for (ExamUserApplySiteTimeVo examUserApplySiteTimeVo : examApplySiteTime) {
+                List<ExamApplySiteTimeTwoVo> examApplySiteTimeTwoVos = JSONObject.parseArray(examUserApplySiteTimeVo.getSiteTime(), ExamApplySiteTimeTwoVo.class);
+                for (ExamApplySiteTimeTwoVo examApplySiteTimeTwoVo : examApplySiteTimeTwoVos) {
+                    examApplySiteTimeTwoVo.setRegistration(baseMapper.registration(examUserApplySiteVo.getApplyId(), examUserApplySiteTimeVo.getExamTime()
+                            ,examUserApplySiteVo.getSiteAddress(),examApplySiteTimeTwoVo.getStartTime(),examApplySiteTimeTwoVo.getEndTime()));
+                    examApplySiteTimeTwoVo.setStatus(baseMapper.userStatus(bo.getUserId(),examUserApplySiteTimeVo.getExamTime(),examApplySiteTimeTwoVo.getStartTime(),examApplySiteTimeTwoVo.getEndTime()));
+                }
+                examUserApplySiteTimeVo.setExamApplySiteTimeTwoVo(examApplySiteTimeTwoVos);
+            }
+            examUserApplySiteVo.setExamUserApplySiteTime(examApplySiteTime);
+        }
+        return examUserApplySiteVos;
+    }
+
+    @Override
+    public List<ExamUserApplySiteVo> subscribeApplySiteTrain(ExamApplyQueryBo bo) {
+        List<ExamUserApplySiteVo> examUserApplySiteVos= baseMapper.subscribeApplySiteTrain(bo);
+        //获得详细地址查看是否满员
+        for (ExamUserApplySiteVo examUserApplySiteVo : examUserApplySiteVos) {
+            List<ExamUserApplySiteTimeVo> examApplySiteTime = baseMapper.subscribeApplySiteTime(examUserApplySiteVo.getId());
+            for (ExamUserApplySiteTimeVo examUserApplySiteTimeVo : examApplySiteTime) {
+                List<ExamApplySiteTimeTwoVo> examApplySiteTimeTwoVos = JSONObject.parseArray(examUserApplySiteTimeVo.getSiteTime(), ExamApplySiteTimeTwoVo.class);
+                for (ExamApplySiteTimeTwoVo examApplySiteTimeTwoVo : examApplySiteTimeTwoVos) {
+                    examApplySiteTimeTwoVo.setRegistration(baseMapper.registrationTrain(examUserApplySiteVo.getApplyId(), examUserApplySiteTimeVo.getExamTime()
+                            ,examUserApplySiteVo.getSiteAddress(),examApplySiteTimeTwoVo.getStartTime(),examApplySiteTimeTwoVo.getEndTime()));
+                    examApplySiteTimeTwoVo.setStatus(baseMapper.userStatusTrain(bo.getUserId(),examUserApplySiteTimeVo.getExamTime(),examApplySiteTimeTwoVo.getStartTime(),examApplySiteTimeTwoVo.getEndTime()));
+                }
+                examUserApplySiteTimeVo.setExamApplySiteTimeTwoVo(examApplySiteTimeTwoVos);
+            }
+            examUserApplySiteVo.setExamUserApplySiteTime(examApplySiteTime);
+        }
+        return examUserApplySiteVos;
+    }
 }

+ 4 - 6
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamBeforeServiceImpl.java

@@ -18,9 +18,7 @@ import com.zhongzheng.modules.exam.mapper.ExamBeforeMapper;
 import com.zhongzheng.modules.exam.vo.ExamBeforeVo;
 import com.zhongzheng.modules.exam.service.IExamBeforeService;
 
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -70,7 +68,7 @@ public class ExamBeforeServiceImpl extends ServiceImpl<ExamBeforeMapper, ExamBef
         ExamBefore add = BeanUtil.toBean(bo, ExamBefore.class);
         List<ExamBefore> list = this.list(new LambdaQueryWrapper<ExamBefore>()
                 .eq(ExamBefore::getBeforeName, add.getBeforeName())
-                .eq(ExamBefore::getStatus, 1));
+                .in(ExamBefore::getStatus, 1,0));
         if (CollectionUtils.isNotEmpty(list)){
             throw new IllegalArgumentException("前培标题不可重复");
         }
@@ -99,8 +97,8 @@ public class ExamBeforeServiceImpl extends ServiceImpl<ExamBeforeMapper, ExamBef
             if (CollectionUtils.isEmpty(list)){
                 List<ExamBefore> examBefore = this.list(new LambdaQueryWrapper<ExamBefore>()
                         .eq(ExamBefore::getBeforeName, update.getBeforeName())
-                        .eq(ExamBefore::getStatus, 1));
-                if (CollectionUtils.isNotEmpty(list)){
+                        .in(ExamBefore::getStatus,new ArrayList<Integer>(Arrays.asList(1,0)) ));
+                if (CollectionUtils.isNotEmpty(examBefore)){
                     throw new IllegalArgumentException("前培标题不可重复");
                 }
             }

+ 21 - 18
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamNumberServiceImpl.java

@@ -123,6 +123,7 @@ public class ExamNumberServiceImpl extends ServiceImpl<ExamNumberMapper, ExamNum
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean updateByEditBo(ExamNumberEditBo bo) {
         ExamNumber update = BeanUtil.toBean(bo, ExamNumber.class);
         validEntityBeforeSave(update);
@@ -138,29 +139,31 @@ public class ExamNumberServiceImpl extends ServiceImpl<ExamNumberMapper, ExamNum
             throw new IllegalArgumentException("前培次数不能小于更改前");
         }
         if (bo.getGoodsId() != null){
-            for (Long goodsId : bo.getGoodsId()) {
-                Integer integer = baseMapper.selectExam(goodsId,update.getExamNumberId());
+            LambdaQueryWrapper<ExamNumberGoods> lqw = Wrappers.lambdaQuery();
+            lqw.eq(ExamNumberGoods::getExamNumberId, bo.getExamNumberId());
+            List<ExamNumberGoods> list = examNumberGoodsService.list(lqw);
+            for (ExamNumberGoods examNumberGoods : list) {
+                if (bo.getStatus() == -1) {
+                    Integer apply = baseMapper.selectApply(examNumberGoods.getGoodsId());
+                    if (apply > 0) {
+                        throw new IllegalArgumentException("当前商品已启用考试安排,不可删除");
+                    }
+                }
+                Integer integer = baseMapper.selectExam(examNumberGoods.getGoodsId(),update.getExamNumberId());
                 if (bo.getStatus() == 1 && integer > 0) {
                     throw new IllegalArgumentException("当前商品已启用考次配置,不可开启,请重新创建新的配置考试次数和前培次数商品");
                 }
                 if (bo.getStatus()==0){
-                    Integer apply = baseMapper.selectApply(goodsId);
+                    Integer apply = baseMapper.selectApply(examNumberGoods.getGoodsId());
                     if (apply > 0) {
                         throw new IllegalArgumentException("当前商品已启用考试安排,不可关闭");
                     }
                 }
-                LambdaQueryWrapper<ExamNumberGoods> lqw = Wrappers.lambdaQuery();
-                lqw.eq(ExamNumberGoods::getExamNumberId, bo.getExamNumberId());
-                List<ExamNumberGoods> list = examNumberGoodsService.list(lqw);
-                if (bo.getStatus() == -1) {
-                    for (ExamNumberGoods examNumberGoods : list) {
-                        Integer apply = baseMapper.selectApply(goodsId);
-                        if (apply > 0) {
-                            throw new IllegalArgumentException("当前商品已启用考试安排,不可删除");
-                        }
-                    }
-                }
-                examNumberGoodsService.remove(lqw);
+            }
+            LambdaQueryWrapper<ExamNumberGoods> example = Wrappers.lambdaQuery();
+            example.eq(ExamNumberGoods::getExamNumberId, bo.getExamNumberId());
+            examNumberGoodsService.remove(example);
+            for (Long goodsId : bo.getGoodsId()) {
                 ExamNumberGoodsAddBo examNumberGoodsAddBo = new ExamNumberGoodsAddBo();
                 examNumberGoodsAddBo.setGoodsId(goodsId);
                 examNumberGoodsAddBo.setExamNumberId(update.getExamNumberId());
@@ -169,9 +172,9 @@ public class ExamNumberServiceImpl extends ServiceImpl<ExamNumberMapper, ExamNum
                 examNumberGoodsService.insertByAddBo(examNumberGoodsAddBo);
             }
         }
-        LambdaQueryWrapper<ExamNumberGoods> lqw = Wrappers.lambdaQuery();
-        lqw.eq(ExamNumberGoods::getExamNumberId, bo.getExamNumberId());
-        List<ExamNumberGoods> list = examNumberGoodsService.list(lqw);
+        LambdaQueryWrapper<ExamNumberGoods> example = Wrappers.lambdaQuery();
+        example.eq(ExamNumberGoods::getExamNumberId, bo.getExamNumberId());
+        List<ExamNumberGoods> list = examNumberGoodsService.list(example);
         if (bo.getStatus() == -1) {
             for (ExamNumberGoods examNumberGoods : list) {
                 Integer apply = baseMapper.selectApply(examNumberGoods.getGoodsId());

+ 8 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/vo/ExamApplySiteTimeTwoVo.java

@@ -17,11 +17,17 @@ public class ExamApplySiteTimeTwoVo {
 
 
     @ApiModelProperty("开始时间")
-    private Long startTime;
+    private String startTime;
     /** 更新时间 */
     @ApiModelProperty("结束时间")
-    private Long endTime;
+    private String endTime;
 
     @ApiModelProperty("人数上限")
     private Long num;
+
+    @ApiModelProperty("报名人数")
+    private Long registration;
+
+    @ApiModelProperty("1 当前时间该用户已有考试时间")
+    private Long status;
 }

+ 44 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/vo/ExamUserApplySiteTimeVo.java

@@ -0,0 +1,44 @@
+package com.zhongzheng.modules.exam.vo;
+
+import com.zhongzheng.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 考试安排地点绑定时间视图对象 mall_package
+ *
+ * @author ruoyi
+ * @date 2021-12-07
+ */
+@Data
+@ApiModel("考试安排地点绑定时间视图对象")
+public class ExamUserApplySiteTimeVo {
+	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 applySiteId;
+	/** 时间的json */
+	@Excel(name = "时间的json")
+	@ApiModelProperty("时间的json")
+	private String siteTime;
+	/** 考试日期 */
+	@Excel(name = "考试日期")
+	@ApiModelProperty("考试日期")
+	private Long examTime;
+
+	/** 考试日期 */
+	@Excel(name = "选择考试时间段")
+	@ApiModelProperty("选择考试时间段")
+	private List<ExamApplySiteTimeTwoVo> examApplySiteTimeTwoVo;
+
+}

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/vo/ExamUserApplySiteVo.java

@@ -46,5 +46,5 @@ public class ExamUserApplySiteVo {
 	private Long people;
 
 	@ApiModelProperty("考试地点时间")
-	private List<ExamApplySiteTimeVo> examApplySiteTime;
+	private List<ExamUserApplySiteTimeVo> examUserApplySiteTime;
 }

+ 7 - 5
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java

@@ -282,11 +282,13 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
      */
     private void validEntityBeforeSave(Goods entity){
         //TODO 做一些数据校验,如唯一约束
-        if(entity.getStatus()==0&&entity.getGoodsStatus()==1){
-            throw new CustomException("无效商品不允许上架");
-        }
-        if((entity.getValidityEndTime()<DateUtils.getNowTime())&&entity.getGoodsStatus()==1){
-            throw new CustomException("过期商品不允许上架");
+        if (entity.getStatus() !=-1) {
+            if (entity.getStatus() == 0 && entity.getGoodsStatus() == 1) {
+                throw new CustomException("无效商品不允许上架");
+            }
+            if ((entity.getValidityEndTime() < DateUtils.getNowTime()) && entity.getGoodsStatus() == 1) {
+                throw new CustomException("过期商品不允许上架");
+            }
         }
     }
 

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/polyv/service/IPolyvVideoService.java

@@ -7,6 +7,7 @@ import com.zhongzheng.modules.polyv.bo.PolyvVideoQueryBo;
 import com.zhongzheng.modules.polyv.bo.PolyvVideoAddBo;
 import com.zhongzheng.modules.polyv.bo.PolyvVideoEditBo;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhongzheng.modules.polyv.vo.PolyvVo;
 
 import java.util.Collection;
 import java.util.List;
@@ -55,4 +56,6 @@ public interface IPolyvVideoService extends IService<PolyvVideo> {
 	String polyvbPcSignRequest(String VId,String viewerId) throws Exception;
 
 	Map<String,Object> polyvbMobileSignRequest(String VId, String viewerId) throws Exception;
+
+	PolyvVo getPolyvUpload();
 }

+ 11 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/polyv/service/impl/PolyvVideoServiceImpl.java

@@ -14,6 +14,7 @@ import com.zhongzheng.common.utils.polyv.PolyvUtils;
 import com.zhongzheng.modules.polyv.domain.PolyvVideDo;
 import com.zhongzheng.modules.polyv.vo.PolyvVideoQuerVo;
 import com.zhongzheng.modules.polyv.domain.TokenResponse;
+import com.zhongzheng.modules.polyv.vo.PolyvVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
@@ -196,6 +197,16 @@ public class PolyvVideoServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVi
         return null;*/
     }
 
+    @Override
+    public PolyvVo getPolyvUpload() {
+        PolyvVo polyvVo = new PolyvVo();
+        Long ptime = System.currentTimeMillis();
+        polyvVo.setPtime(ptime);
+        polyvVo.setHash(md5Hex(ptime+poliv_token_writetoken));
+        polyvVo.setSign(md5Hex(poliv_token_secretkey+ptime));
+        return polyvVo;
+    }
+
 
     public void polyvbRequest(String VId) throws Exception {
         //获得保利威sign

+ 32 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/polyv/vo/PolyvVo.java

@@ -0,0 +1,32 @@
+package com.zhongzheng.modules.polyv.vo;
+
+import com.zhongzheng.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+
+/**
+ * 保利威视频信息视图对象 mall_package
+ *
+ * @author change
+ * @date 2021-06-11
+ */
+@Data
+@ApiModel("保利威信息对象")
+public class PolyvVo {
+	private static final long serialVersionUID = 1L;
+
+	/** 时间戳毫秒级 */
+	@ApiModelProperty("时间戳毫秒级")
+	private Long ptime;
+
+	/** 签名 */
+	@ApiModelProperty("签名")
+	private String sign;
+
+	/** hash签名 */
+	@ApiModelProperty("hash签名")
+	private String hash;
+
+}

+ 33 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserSubscribeAddBo.java

@@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
+
+import javax.validation.constraints.NotNull;
 import java.util.Date;
 
 
@@ -17,9 +19,9 @@ import java.util.Date;
 @Data
 @ApiModel("用户预约考试添加对象")
 public class UserSubscribeAddBo {
-
     /** 绑定的商品 */
     @ApiModelProperty("绑定的商品")
+    @NotNull(message = "商品不能为空")
     private Long goodsId;
     /** 学员ID */
     @ApiModelProperty("学员ID")
@@ -47,9 +49,11 @@ public class UserSubscribeAddBo {
     private String remark;
     /** $column.columnComment */
     @ApiModelProperty("$column.columnComment")
+    @NotNull(message = "计划不能为空")
     private Long applyId;
     /** 1非补考学员 2补考学员 */
     @ApiModelProperty("1非补考学员 2补考学员")
+    @NotNull(message = "学员类型不能为空")
     private Integer studentType;
     /** 1 消耗次数 */
     @ApiModelProperty("1 消耗次数")
@@ -63,4 +67,32 @@ public class UserSubscribeAddBo {
     /** 更新时间 */
     @ApiModelProperty("更新时间")
     private Long updateTime;
+    /** 前培Id */
+    @ApiModelProperty("前培Id")
+    private Long beforeId;
+    /** 考试地点 */
+    @ApiModelProperty("考试地点")
+    @NotNull(message = "考试地点不能为空")
+    private String applySiteAddress;
+    /** 考试开始时间段 */
+    @ApiModelProperty("考试开始时间段")
+    private String applySiteStartTime;
+    /** 考试结束时间段 */
+    @ApiModelProperty("考试结束时间段")
+    private String applySiteEndTime;
+    /** 考试日期 */
+    @ApiModelProperty("考试日期")
+    private Long applySiteExamTime;
+    /** 考培地点 */
+    @ApiModelProperty("考培地点")
+    private String applySiteAddressTrain;
+    /** 考培开始时间段 */
+    @ApiModelProperty("考培开始时间段")
+    private String applySiteStartTrainTime;
+    /** 考培结束时间段 */
+    @ApiModelProperty("考培结束时间段")
+    private String applySiteEndTrainTime;
+    /** 考培日期 */
+    @ApiModelProperty("考培日期")
+    private Long applySiteExamTrainTime;
 }

+ 32 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserSubscribeEditBo.java

@@ -81,5 +81,37 @@ public class UserSubscribeEditBo {
     @ApiModelProperty("前培Id")
     private Long beforeId;
 
+    /** 考试地点 */
+    @ApiModelProperty("考试地点")
+    private String applySiteAddress;
+
+    /** 考试开始时间段 */
+    @ApiModelProperty("考试开始时间段")
+    private String applySiteStartTime;
+
+    /** 考试结束时间段 */
+    @ApiModelProperty("考试结束时间段")
+    private String applySiteEndTime;
+
+    /** 考试日期 */
+    @ApiModelProperty("考试日期")
+    private Long applySiteExamTime;
+
+    /** 考培地点 */
+    @ApiModelProperty("考培地点")
+    private String applySiteAddressTrain;
+
+    /** 考培开始时间段 */
+    @ApiModelProperty("考培开始时间段")
+    private String applySiteStartTrainTime;
+
+    /** 考培结束时间段 */
+    @ApiModelProperty("考培结束时间段")
+    private String applySiteEndTrainTime;
+
+    /** 考培日期 */
+    @ApiModelProperty("考培日期")
+    private Long applySiteExamTrainTime;
+
 
 }

+ 16 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserSubscribe.java

@@ -61,4 +61,20 @@ private static final long serialVersionUID=1L;
     /** 前培Id */
     @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long beforeId;
+    /** 考试地点 */
+    private String applySiteAddress;
+    /** 考试开始时间段 */
+    private String applySiteStartTime;
+    /** 考试结束时间段 */
+    private String applySiteEndTime;
+    /** 考试日期 */
+    private Long applySiteExamTime;
+    /** 考培地点 */
+    private String applySiteAddressTrain;
+    /** 考培开始时间段 */
+    private String applySiteStartTrainTime;
+    /** 考培结束时间段 */
+    private String applySiteEndTrainTime;
+    /** 考培日期 */
+    private Long applySiteExamTrainTime;
 }

+ 3 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserSubscribeService.java

@@ -34,7 +34,7 @@ public interface IUserSubscribeService extends IService<UserSubscribe> {
 	 * @param bo 用户预约考试新增业务对象
 	 * @return
 	 */
-	Boolean insertByAddBo(UserSubscribeAddBo bo);
+	Long insertByAddBo(UserSubscribeAddBo bo);
 
 	/**
 	 * 根据编辑业务对象修改用户预约考试
@@ -43,6 +43,8 @@ public interface IUserSubscribeService extends IService<UserSubscribe> {
 	 */
 	Boolean updateByEditBo(UserSubscribeEditBo bo);
 
+	Boolean updateByEditSingleBo(UserSubscribeEditBo bo);
+
 	/**
 	 * 校验并删除数据
 	 * @param ids 主键集合

+ 13 - 16
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserSubscribeServiceImpl.java

@@ -84,12 +84,15 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
     }
 
     @Override
-    public Boolean insertByAddBo(UserSubscribeAddBo bo) {
+    public Long insertByAddBo(UserSubscribeAddBo bo) {
         UserSubscribe add = BeanUtil.toBean(bo, UserSubscribe.class);
         validEntityBeforeSave(add);
+        add.setSubscribeStatus(1);
+        add.setExamStatus(0);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
-        return this.save(add);
+        this.save(add);
+        return add.getSubscribeId();
     }
 
     @Override
@@ -109,6 +112,14 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         return true;
     }
 
+    @Override
+    public Boolean updateByEditSingleBo(UserSubscribeEditBo bo) {
+        UserSubscribe update = BeanUtil.toBean(bo, UserSubscribe.class);
+        validEntityBeforeSave(update);
+        update.setUpdateTime(DateUtils.getNowTime());
+        return this.updateById(update);
+    }
+
     /**
      * 保存前的数据校验
      *
@@ -129,20 +140,6 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
     @Override
     public List<UserSubscribeVo> listSubscribe(UserSubscribeQueryBo bo) {
         List<UserSubscribeVo> userSubscribeVos = baseMapper.listSubscribe(bo);
-        for (UserSubscribeVo userSubscribeVo : userSubscribeVos) {
-            List<ExamApplySiteVo> examApplySite = examApplyMapper.addressExam(userSubscribeVo.getApplyId(),1L);
-            for (ExamApplySiteVo examApplySiteVo : examApplySite) {
-                List<ExamApplySiteTimeVo> examApplySiteTime = examApplyMapper.addressTimeExam(examApplySiteVo.getId());
-                examApplySiteVo.setExamApplySiteTime(examApplySiteTime);
-            }
-            List<ExamApplySiteVo> examApplySiteTrain = examApplyMapper.addressExam(userSubscribeVo.getApplyId(),2L);
-            for (ExamApplySiteVo examApplySiteVo : examApplySiteTrain) {
-                List<ExamApplySiteTimeVo> examApplySiteTime = examApplyMapper.addressTimeExam(examApplySiteVo.getId());
-                examApplySiteVo.setExamApplySiteTime(examApplySiteTime);
-            }
-            userSubscribeVo.setExamApplySite(examApplySite);
-            userSubscribeVo.setExamApplySiteTrain(examApplySiteTrain);
-        }
         return userSubscribeVos;
     }
 

+ 41 - 6
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserSubscribeVo.java

@@ -45,6 +45,15 @@ public class UserSubscribeVo {
 	@ApiModelProperty("编码")
 	private String goodsCode;
 
+	/** 开始日期 */
+	@Excel(name = "报考开始日期")
+	@ApiModelProperty("报考开始日期")
+	private Long applyStartTime;
+	/** 结束日期 */
+	@Excel(name = "报考结束日期")
+	@ApiModelProperty("报考结束日期")
+	private Long applyEndTime;
+
 	/** 标准价格 */
 	@Excel(name = "标准价格")
 	@ApiModelProperty("标准价格")
@@ -127,10 +136,36 @@ public class UserSubscribeVo {
 	@ApiModelProperty("前培标题")
 	private String beforeName;
 
-	@ApiModelProperty("考试地点时间")
-	private List<ExamApplySiteVo> examApplySite;
-
-
-	@ApiModelProperty("考陪地点")
-	private List<ExamApplySiteVo> examApplySiteTrain;
+	/** 考试地点 */
+	@Excel(name = "考试地点")
+	@ApiModelProperty("考试地点")
+	private String applySiteAddress;
+	/** 考试开始时间段 */
+	@Excel(name = "考试开始时间段")
+	@ApiModelProperty("考试开始时间段")
+	private String applySiteStartTime;
+	/** 考试结束时间段 */
+	@Excel(name = "考试结束时间段")
+	@ApiModelProperty("考试结束时间段")
+	private String applySiteEndTime;
+	/** 考试日期 */
+	@Excel(name = "考试日期")
+	@ApiModelProperty("考试日期")
+	private Long applySiteExamTime;
+	/** 考培地点 */
+	@Excel(name = "考培地点")
+	@ApiModelProperty("考培地点")
+	private String applySiteAddressTrain;
+	/** 考培开始时间段 */
+	@Excel(name = "考培开始时间段")
+	@ApiModelProperty("考培开始时间段")
+	private String applySiteStartTrainTime;
+	/** 考培结束时间段 */
+	@Excel(name = "考培结束时间段")
+	@ApiModelProperty("考培结束时间段")
+	private String applySiteEndTrainTime;
+	/** 考培日期 */
+	@Excel(name = "考培日期")
+	@ApiModelProperty("考培日期")
+	private Long applySiteExamTrainTime;
 }

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/base/ProfileTpMapper.xml

@@ -87,5 +87,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 #{item}
             </foreach>
         </if>
+        order by p.create_time desc
     </select>
 </mapper>

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

@@ -76,6 +76,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             LEFT JOIN course_module cm ON cmc.module_id = cm.module_id
         WHERE
             cmc.chapter_id=#{chapter_id}
+            and cm.status =1
     </select>
 
     <select id="findBusinessList" resultMap="CourseChapterBusiness">

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

@@ -59,7 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             cs.`status` !=- 1
 	        AND ccs.chapter_id = #{id}
         ORDER BY
-            c_sort DESC
+            c_sort asc
     </select>
 
     <select id="getInformById" parameterType="Long"  resultMap="CourseChapterSectionResultVo">

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

@@ -75,7 +75,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 AND m.type = 3
         WHERE
             m.course_id = #{courseId}
-        ORDER BY m.sort
+        ORDER BY m.sort asc
     </select>
 
     <select id="menuList" parameterType="com.zhongzheng.modules.course.bo.CourseMenuQueryBo"  resultMap="CourseUserMenuVo">

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

@@ -51,7 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             cc.`status` !=- 1
 	AND cmc.module_id = #{id}
         ORDER BY
-            c_sort DESC
+            c_sort asc
     </select>
     <select id="chapterList" parameterType="com.zhongzheng.modules.course.bo.CourseMenuQueryBo"  resultMap="CourseUserModuleChapterVo">
         SELECT

+ 102 - 1
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamApplyMapper.xml

@@ -64,6 +64,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="siteAddress" column="site_address"/>
         <result property="people" column="people"/>
     </resultMap>
+    <resultMap type="com.zhongzheng.modules.exam.vo.ExamUserApplySiteVo" id="ExamUserApplySiteVo">
+        <result property="id" column="id"/>
+        <result property="siteId" column="site_id"/>
+        <result property="applyId" column="apply_id"/>
+        <result property="status" column="status"/>
+        <result property="siteAddress" column="site_address"/>
+        <result property="people" column="people"/>
+    </resultMap>
 
     <resultMap type="com.zhongzheng.modules.exam.vo.ExamApplySiteTimeVo" id="ExamApplySiteTimeVo">
         <result property="id" column="id"/>
@@ -72,13 +80,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="examTime" column="exam_time"/>
     </resultMap>
 
+    <resultMap type="com.zhongzheng.modules.exam.vo.ExamUserApplySiteTimeVo" id="ExamUserApplySiteTimeVo">
+        <result property="id" column="id"/>
+        <result property="applySiteId" column="apply_site_id"/>
+        <result property="siteTime" column="site_time"/>
+        <result property="examTime" column="exam_time"/>
+    </resultMap>
+
     <select id="listGoods" parameterType="com.zhongzheng.modules.exam.bo.ExamNumberGoodsQueryBo" resultMap="ExamNumberGoodsVoResult">
         SELECT
         goods_id,
         goods_name,
         CODE,
         stand_price,
-        (case WHEN (SELECT COUNT(ea.apply_id) FROM exam_apply ea LEFT JOIN exam_apply_goods eag on ea.apply_id =eag.apply_id where 1=1 and eag.goods_id = g.goods_id and ea.status =1) >0 then 0 ELSE 1 end) as goods_status
+        (case WHEN (SELECT COUNT(ea.apply_id) FROM exam_apply ea LEFT JOIN exam_apply_goods eag on ea.apply_id =eag.apply_id where 1=1 and eag.goods_id = g.goods_id and ea.status in (0,1)) >0 then 0 ELSE 1 end) as goods_status
         FROM
         goods g
         WHERE
@@ -286,4 +301,90 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             ebg.goods_id =3
           and eb.`status`=1
     </select>
+
+    <select id="subscribeApplySite" parameterType="com.zhongzheng.modules.exam.bo.ExamApplyQueryBo" resultMap="ExamUserApplySiteVo">
+        SELECT
+            eas.apply_id,
+            eas.id,
+            es.*
+        FROM
+            exam_apply_site eas
+                LEFT JOIN exam_site es ON es.site_id = eas.site_id
+        WHERE
+            eas.apply_id = #{applyId}
+            and eas.status = 1
+    </select>
+
+    <select id="subscribeApplySiteTime" parameterType="Long" resultMap="ExamUserApplySiteTimeVo">
+        SELECT * FROM exam_apply_site_time east where east.apply_site_id = #{id}
+    </select>
+
+    <select id="registration" parameterType="map" resultType="long">
+        SELECT
+            COUNT( 1 )
+        FROM
+            user_subscribe us
+        WHERE
+            subscribe_status = 1
+          AND us.apply_id = #{applyId}
+          AND us.apply_site_exam_time = #{examTime}
+          AND us.apply_site_address = #{siteAddress}
+          AND us.apply_site_start_time =#{startTime}
+          AND us.apply_site_end_time =#{endTime}
+    </select>
+
+
+    <select id="userStatus" parameterType="map" resultType="long">
+        SELECT
+            COUNT( 1 )
+        FROM
+            user_subscribe us
+        WHERE
+            subscribe_status = 1
+          AND us.apply_site_exam_time = #{examTime}
+          AND us.user_id = #{userId}
+          AND us.apply_site_start_time =#{startTime}
+          AND us.apply_site_end_time =#{endTime}
+    </select>
+
+    <select id="subscribeApplySiteTrain" parameterType="com.zhongzheng.modules.exam.bo.ExamApplyQueryBo" resultMap="ExamUserApplySiteVo">
+        SELECT
+            eas.apply_id,
+            eas.id,
+            es.*
+        FROM
+            exam_apply_site eas
+                LEFT JOIN exam_site es ON es.site_id = eas.site_id
+        WHERE
+            eas.apply_id = #{applyId}
+          and eas.status = 2
+    </select>
+
+    <select id="registrationTrain" parameterType="map" resultType="long">
+        SELECT
+            COUNT( 1 )
+        FROM
+            user_subscribe us
+        WHERE
+            subscribe_status = 1
+          AND us.apply_id = #{applyId}
+          AND us.apply_site_exam_train_time = #{examTime}
+          AND us.apply_site_address_train = #{siteAddress}
+          AND us.apply_site_start_train_time =#{startTime}
+          AND us.apply_site_end_train_time =#{endTime}
+    </select>
+
+
+    <select id="userStatusTrain" parameterType="map" resultType="long">
+        SELECT
+            COUNT( 1 )
+        FROM
+            user_subscribe us
+        WHERE
+            subscribe_status = 1
+          AND us.apply_site_exam_train_time = #{examTime}
+          AND us.user_id = #{userId}
+          AND us.apply_site_start_train_time =#{startTime}
+          AND us.apply_site_end_train_time =#{endTime}
+    </select>
 </mapper>

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

@@ -51,7 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         goods_name,
         CODE,
         stand_price,
-        (case WHEN (SELECT COUNT(eb.before_id) FROM exam_before eb LEFT JOIN exam_before_goods ebg on eb.before_id =ebg.before_id where 1=1 and ebg.goods_id = g.goods_id and eb.status =1) >0 then 0 ELSE 1 end) as goods_status
+        (case WHEN (SELECT COUNT(eb.before_id) FROM exam_before eb LEFT JOIN exam_before_goods ebg on eb.before_id =ebg.before_id where 1=1 and ebg.goods_id = g.goods_id and eb.status in (0,1)) >0 then 0 ELSE 1 end) as goods_status
         FROM
         goods g
         WHERE

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

@@ -45,7 +45,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         goods_name,
         CODE,
         stand_price,
-        (case WHEN (SELECT COUNT(en.exam_number_id) FROM exam_number en LEFT JOIN exam_number_goods eng on en.exam_number_id =eng.exam_number_id where 1=1 and eng.goods_id = g.goods_id and en.status =1) >0 then 0 ELSE 1 end) as goods_status
+        (case WHEN (SELECT COUNT(en.exam_number_id) FROM exam_number en LEFT JOIN exam_number_goods eng on en.exam_number_id =eng.exam_number_id where 1=1 and eng.goods_id = g.goods_id and en.status in (0,1)) >0 then 0 ELSE 1 end) as goods_status
         FROM
         goods g
         WHERE

+ 12 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserSubscribeMapper.xml

@@ -47,6 +47,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="applyName" column="apply_name"/>
         <result property="beforeId" column="before_id"/>
         <result property="beforeName" column="before_name"/>
+        <result property="applySiteAddress" column="apply_site_address"/>
+        <result property="applySiteStartTime" column="apply_site_start_time"/>
+        <result property="applySiteEndTime" column="apply_site_end_time"/>
+        <result property="applySiteExamTime" column="apply_site_exam_time"/>
+        <result property="applySiteAddressTrain" column="apply_site_address_train"/>
+        <result property="applySiteStartTrainTime" column="apply_site_start_train_time"/>
+        <result property="applySiteEndTrainTime" column="apply_site_end_train_time"/>
+        <result property="applySiteExamTrainTime" column="apply_site_exam_train_time"/>
+        <result property="applyStartTime" column="apply_start_time"/>
+        <result property="applyEndTime" column="apply_end_time"/>
     </resultMap>
 
     <select id="listSubscribe" parameterType="com.zhongzheng.modules.user.bo.UserSubscribeQueryBo" resultMap="UserSubscribeVo">
@@ -59,6 +69,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             (SELECT u.realname FROM `user` u where us.user_id = u.user_id) as realname,
             (SELECT u.id_card FROM `user` u where us.user_id = u.user_id) as id_card,
             (SELECT ea.apply_name FROM exam_apply ea where ea.apply_id = us.apply_id) as apply_name,
+            (SELECT ea.apply_start_time FROM exam_apply ea where ea.apply_id = us.apply_id) as apply_start_time,
+            (SELECT ea.applyEndTime FROM exam_apply ea where ea.apply_id = us.apply_id) as apply_end_time,
             (SELECT eb.before_name FROM exam_before eb where eb.before_id = us.before_id) as before_name
         FROM
             user_subscribe us