he2802 3 роки тому
батько
коміт
bd1f90a4bd
21 змінених файлів з 236 додано та 23 видалено
  1. 103 0
      zhongzheng-api/src/main/java/com/zhongzheng/controller/course/MajorController.java
  2. 39 18
      zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/ConsoleServiceImpl.java
  3. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/bo/MockApplyAddBo.java
  4. 4 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/bo/MockApplyEditBo.java
  5. 4 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/bo/MockApplyQueryBo.java
  6. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/domain/MockApply.java
  7. 1 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/service/impl/MockApplyServiceImpl.java
  8. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/vo/MockApplyVo.java
  9. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderInputVo.java
  10. 17 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/impl/ScheduleServiceImpl.java
  11. 7 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeAddBo.java
  12. 6 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeEditBo.java
  13. 7 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeQueryBo.java
  14. 5 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserMockSubscribe.java
  15. 3 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserMockSubscribeServiceImpl.java
  16. 9 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserMockSubscribeVo.java
  17. 1 0
      zhongzheng-system/src/main/resources/mapper/modules/exam/ExamApplyGoodsMapper.xml
  18. 3 0
      zhongzheng-system/src/main/resources/mapper/modules/mock/MockApplyMapper.xml
  19. 5 1
      zhongzheng-system/src/main/resources/mapper/modules/order/OrderInputMapper.xml
  20. 3 3
      zhongzheng-system/src/main/resources/mapper/modules/order/OrderMapper.xml
  21. 5 0
      zhongzheng-system/src/main/resources/mapper/modules/user/UserMockSubscribeMapper.xml

+ 103 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/course/MajorController.java

@@ -0,0 +1,103 @@
+package com.zhongzheng.controller.course;
+
+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.modules.course.bo.MajorAddBo;
+import com.zhongzheng.modules.course.bo.MajorEditBo;
+import com.zhongzheng.modules.course.bo.MajorQueryBo;
+import com.zhongzheng.modules.course.service.IMajorService;
+import com.zhongzheng.modules.course.vo.MajorVo;
+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.List;
+
+/**
+ * 专业Controller
+ * 
+ * @author ruoyi
+ * @date 2021-10-09
+ */
+@Api(value = "专业控制器", tags = {"专业管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/course/major")
+public class MajorController extends BaseController {
+
+    private final IMajorService iMajorService;
+
+    /**
+     * 查询专业列表
+     */
+    @ApiOperation("查询专业列表")
+    @PreAuthorize("@ss.hasPermi('course:major:list')")
+    @GetMapping("/list")
+    public TableDataInfo<MajorVo> list(MajorQueryBo bo) {
+        startPage();
+        List<MajorVo> list = iMajorService.queryList(bo);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出专业列表
+     */
+ /*   @ApiOperation("导出专业列表")
+    @PreAuthorize("@ss.hasPermi('course:major:export')")
+    @Log(title = "专业", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult<MajorVo> export(MajorQueryBo bo) {
+        List<MajorVo> list = iMajorService.queryList(bo);
+        ExcelUtil<MajorVo> util = new ExcelUtil<MajorVo>(MajorVo.class);
+        return util.exportExcel(list, "专业");
+    }*/
+
+    /**
+     * 获取专业详细信息
+     */
+    @ApiOperation("获取专业详细信息")
+    @PreAuthorize("@ss.hasPermi('course:major:query')")
+    @GetMapping("/{id}")
+    public AjaxResult<MajorVo> getInfo(@PathVariable("id" ) Long id) {
+        return AjaxResult.success(iMajorService.queryById(id));
+    }
+
+    /**
+     * 新增专业
+     */
+    @ApiOperation("新增专业")
+    @PreAuthorize("@ss.hasPermi('course:major:add')")
+    @Log(title = "专业", businessType = BusinessType.INSERT)
+    @PostMapping()
+    public AjaxResult<Void> add(@RequestBody MajorAddBo bo) {
+        return toAjax(iMajorService.insertByAddBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改专业
+     */
+    @ApiOperation("修改专业")
+    @PreAuthorize("@ss.hasPermi('course:major:edit')")
+    @Log(title = "专业", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    public AjaxResult<Void> edit(@RequestBody MajorEditBo bo) {
+        return toAjax(iMajorService.updateByEditBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除专业
+     */
+/*    @ApiOperation("删除专业")
+    @PreAuthorize("@ss.hasPermi('course:major:remove')")
+    @Log(title = "专业" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult<Void> remove(@PathVariable Long[] ids) {
+        return toAjax(iMajorService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
+    }*/
+}

+ 39 - 18
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/ConsoleServiceImpl.java

@@ -11,7 +11,10 @@ import com.zhongzheng.modules.base.service.IUserProfileService;
 import com.zhongzheng.modules.grade.service.IClassGradeService;
 import com.zhongzheng.modules.grade.service.IClassGradeUserService;
 import com.zhongzheng.modules.grade.vo.ClassGradeVo;
+import com.zhongzheng.modules.order.bo.OrderInputQueryBo;
+import com.zhongzheng.modules.order.service.IOrderInputService;
 import com.zhongzheng.modules.order.service.IOrderService;
+import com.zhongzheng.modules.order.vo.OrderInputVo;
 import com.zhongzheng.modules.order.vo.OrderListVo;
 import com.zhongzheng.modules.user.domain.UserMockRecord;
 import com.zhongzheng.modules.user.domain.UserMockSubscribe;
@@ -29,6 +32,9 @@ public class ConsoleServiceImpl implements IConsoleService {
     @Autowired
     private IOrderService iOrderService;
 
+    @Autowired
+    private IOrderInputService iOrderInputService;
+
     @Autowired
     private IUserUpdateService iUserUpdateService;
 
@@ -90,8 +96,15 @@ public class ConsoleServiceImpl implements IConsoleService {
     @Override
     public Map<String, Object> getOrderData(ConsoleQueryBo bo) {
         Map<String, Object> map = new HashMap<>();
-        List<OrderListVo> allList = iOrderService.getConsoleOrder(bo);
-        countNum(map,"all",allList); //总的
+        List<OrderListVo> allList = iOrderService.getConsoleOrder(bo); //线上
+        OrderInputQueryBo bo1 = new OrderInputQueryBo();
+        bo1.setBusinessId(bo.getBusinessId());
+        bo1.setGoodsType(1);
+        Integer offVideoNum = iOrderInputService.selectList(bo1).size();
+        bo1.setGoodsType(2);
+        List<OrderInputVo> allOffBankList = iOrderInputService.selectList(bo1);
+        Integer alloffBankNum = allOffBankList.size();
+        countOnNum(map,"all",allList); //线上总的
         Integer allRebuyNum = iOrderService.getConsoleRebuyNum(bo); //冲突总数
         Calendar cal = Calendar.getInstance();
         cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
@@ -106,13 +119,25 @@ public class ConsoleServiceImpl implements IConsoleService {
         bo.setStartTime(todZero);
         bo.setEndTime(DateUtils.getNowTime());
         List<OrderListVo> todList = iOrderService.getConsoleOrder(bo);
-        countNum(map,"tod",todList); //今天
+        bo1.setStartTime(todZero);
+        bo1.setEndTime(DateUtils.getNowTime());
+        bo1.setGoodsType(1);
+        Integer todoffVideoNum = iOrderInputService.selectList(bo1).size();
+        bo1.setGoodsType(2);
+        Integer todOffBankNum = iOrderInputService.selectList(bo1).size();
+        countOnNum(map,"tod",todList); //今天
         Integer todRebuyNum = iOrderService.getConsoleRebuyNum(bo); //今天冲突
 
         bo.setStartTime(ytdZero);
         bo.setEndTime(todZero);
         List<OrderListVo> ytdList = iOrderService.getConsoleOrder(bo);
-        countNum(map,"ytd",ytdList); //昨天
+        bo1.setStartTime(ytdZero);
+        bo1.setEndTime(todZero);
+        bo1.setGoodsType(1);
+        Integer ytdOffVideoNum = iOrderInputService.selectList(bo1).size();
+        bo1.setGoodsType(2);
+        Integer ytdOffBankNum = iOrderInputService.selectList(bo1).size();
+        countOnNum(map,"ytd",ytdList); //昨天
         Integer ytdRebuyNum = iOrderService.getConsoleRebuyNum(bo); //昨天冲突
 
         bo.setEndTime(DateUtils.getNowTime());
@@ -122,6 +147,14 @@ public class ConsoleServiceImpl implements IConsoleService {
         map.put("todRebuyNum",todRebuyNum);
         map.put("ytdRebuyNum",ytdRebuyNum);
         map.put("sevenRebuyNum",sevenRebuyNum);
+
+        map.put("offVideoNum", offVideoNum);
+        map.put("alloffBankNum", alloffBankNum);
+        map.put("todoffBankNum", alloffBankNum);
+        map.put("todoffVideoNum", todoffVideoNum);
+        map.put("todOffBankNum", todOffBankNum);
+        map.put("ytdOffVideoNum", ytdOffVideoNum);
+        map.put("ytdOffBankNum", ytdOffBankNum);
         return map;
     }
 
@@ -393,22 +426,13 @@ public class ConsoleServiceImpl implements IConsoleService {
         return map;
     }
 
-    private void countNum(Map<String, Object> map,String tag,List<OrderListVo> allList){
+    private void countOnNum(Map<String, Object> map,String tag,List<OrderListVo> allList){
         Integer allNum = allList.size();
         map.put(tag+"Num",allNum);
         Integer onVideoNum = 0;
         Integer onBankNum = 0;
-        Integer offVideoNum = 0;
-        Integer offBankNum = 0;
         for(OrderListVo vo : allList){
-            if(vo.getOrderFrom()==1||vo.getOrderFrom()==5){
-                if(vo.getGoodsType()==1){
-                    offVideoNum++;
-                }
-                if(vo.getGoodsType()==2){
-                    offBankNum++;
-                }
-            }else{
+            if(vo.getOrderFrom()!=1 && vo.getOrderFrom()!=5){
                 if(vo.getGoodsType()==1){
                     onVideoNum++;
                 }
@@ -419,9 +443,6 @@ public class ConsoleServiceImpl implements IConsoleService {
         }
         map.put(tag+"OnVideoNum",onVideoNum);
         map.put(tag+"OnBankNum",onBankNum);
-        map.put(tag+"OffVideoNum",offVideoNum);
-        map.put(tag+"OffBankNum",offBankNum);
-
     }
 
     private void countGradeNum(Map<String, Object> map,String tag,List<ClassGradeVo> allList){

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/bo/MockApplyAddBo.java

@@ -58,6 +58,9 @@ public class MockApplyAddBo {
     /** 开考限制时间 */
     @ApiModelProperty("开考限制时间")
     private Long timeLimit;
+    /** 模考通知状态 0未通知 1已通知 */
+    @ApiModelProperty("模考通知状态 0未通知 1已通知")
+    private Integer mockRemind;
 
     /** 关联专业列表 */
     @ApiModelProperty("关联专业列表")

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/bo/MockApplyEditBo.java

@@ -72,6 +72,10 @@ public class MockApplyEditBo {
     @ApiModelProperty("开考限制时间")
     private Long timeLimit;
 
+    /** 模考通知状态 0未通知 1已通知 */
+    @ApiModelProperty("模考通知状态 0未通知 1已通知")
+    private Integer mockRemind;
+
     /** 关联专业列表 */
     @ApiModelProperty("关联专业列表")
     private List<MockMajorEditBo> mockMajorList;

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/bo/MockApplyQueryBo.java

@@ -95,4 +95,8 @@ public class MockApplyQueryBo extends BaseEntity {
 	/** 开考限制时间(毫秒) */
 	@ApiModelProperty("开考限制时间(毫秒)")
 	private Long timeLimitMillisecond ;
+
+	/** 模考通知状态 0未通知 1已通知 */
+	@ApiModelProperty("模考通知状态 0未通知 1已通知")
+	private Integer mockRemind;
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/domain/MockApply.java

@@ -1,6 +1,7 @@
 package com.zhongzheng.modules.mock.domain;
 
 import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.experimental.Accessors;
@@ -54,4 +55,6 @@ private static final long serialVersionUID=1L;
     private String code;
     /** 开考限制时间 */
     private String timeLimit;
+    /** 模考通知状态 0未通知 1已通知 */
+    private Integer mockRemind;
 }

+ 1 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/service/impl/MockApplyServiceImpl.java

@@ -97,6 +97,7 @@ public class MockApplyServiceImpl extends ServiceImpl<MockApplyMapper, MockApply
         lqw.eq(bo.getEducationTypeId() != null, MockApply::getEducationTypeId, bo.getEducationTypeId());
         lqw.eq(bo.getBusinessId() != null, MockApply::getBusinessId, bo.getBusinessId());
         lqw.eq(bo.getTimeLimit() != null, MockApply::getTimeLimit, bo.getTimeLimit());
+        lqw.eq(bo.getMockRemind() != null, MockApply::getMockRemind, bo.getMockRemind());
         lqw.eq(StrUtil.isNotBlank(bo.getCode()), MockApply::getCode, bo.getCode());
         return entity2Vo(this.list(lqw));
     }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/vo/MockApplyVo.java

@@ -194,4 +194,9 @@ public class MockApplyVo {
 	@ApiModelProperty("封面地址")
 	private String coverUrl;
 
+	/** 模考通知状态 0未通知 1已通知 */
+	@Excel(name = "模考通知状态 0未通知 1已通知")
+	@ApiModelProperty("模考通知状态 0未通知 1已通知")
+	private Integer mockRemind;
+
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderInputVo.java

@@ -100,4 +100,7 @@ public class OrderInputVo {
 	private Long orderGoodsId;
 	@ApiModelProperty("已退费金额")
 	private BigDecimal goodsRefund;
+
+	@ApiModelProperty("商品类型 1视频2题库 3补考 4前培 5虚拟赠送题库 6直播")
+	private Integer goodsType;
 }

+ 17 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/impl/ScheduleServiceImpl.java

@@ -68,6 +68,7 @@ import com.zhongzheng.modules.inform.service.IInformService;
 import com.zhongzheng.modules.inform.service.IInformUserService;
 import com.zhongzheng.modules.inform.vo.InformRemindVo;
 import com.zhongzheng.modules.inform.vo.InformVo;
+import com.zhongzheng.modules.mock.bo.MockApplyEditBo;
 import com.zhongzheng.modules.mock.domain.MockApply;
 import com.zhongzheng.modules.mock.domain.MockMajorSubject;
 import com.zhongzheng.modules.mock.domain.MockMajorSubjectTime;
@@ -1396,6 +1397,12 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
                 }
             }
         }
+        mockApplyVos.forEach(mockApplyVo -> {
+            MockApplyEditBo bo1 = new MockApplyEditBo();
+            bo1.setApplyId(mockApplyVo.getApplyId());
+            bo1.setMockRemind(1);
+            iMockApplyService.updateByEditBo(bo1);
+        });
     }
 
     @Override
@@ -1403,6 +1410,7 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
         //提醒考试
         LambdaQueryWrapper<UserMockSubscribe> lqw = Wrappers.lambdaQuery();
         lqw.eq(UserMockSubscribe::getMockRemind,1);
+        lqw.eq(UserMockSubscribe::getHasMockRemind,0);
         List<UserMockSubscribe> userMockSubscribeList = iUserMockSubscribeService.list(lqw);
         userMockSubscribeList.removeIf(userMockSubscribe -> {
             try {
@@ -1459,6 +1467,10 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
                         iInformUserService.insertByAddBo(informUserAddBo);
                     }
                 }
+                UserMockSubscribeEditBo bo1 = new UserMockSubscribeEditBo();
+                bo1.setSubscribeId(subscribeVo.getSubscribeId());
+                bo1.setHasMockRemind(1);
+                iUserMockSubscribeService.updateByEditBo(bo1);
             }
         }
     }
@@ -1501,7 +1513,12 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
                     iInformUserService.insertByAddBo(informUserAddBo);
                 }
             }
+            UserMockSubscribeEditBo bo1 = new UserMockSubscribeEditBo();
+            bo1.setSubscribeId(userMockSubscribeVo.getSubscribeId());
+            bo1.setHasLiveSubscribe(1);
+            iUserMockSubscribeService.updateByEditBo(bo1);
         }
+
     }
 
     private Long formatTime(Long startTime, String addTime) throws ParseException{

+ 7 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeAddBo.java

@@ -73,4 +73,11 @@ public class UserMockSubscribeAddBo {
     /** 预约直播 0不预约 1预约 */
     @ApiModelProperty("预约直播 0不预约 1预约")
     private Integer liveSubscribe;
+
+    /** 是否已发送开考通知 0否 1是 */
+    @ApiModelProperty("是否已发送开考通知 0否 1是")
+    private Integer hasMockRemind;
+    /** 是否已发送开播通知 0不预约 1预约 */
+    @ApiModelProperty("是否已发送开播通知 0不预约 1预约")
+    private Integer hasLiveSubscribe;
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeEditBo.java

@@ -91,4 +91,10 @@ public class UserMockSubscribeEditBo {
     @ApiModelProperty("预约直播 0不预约 1预约")
     private Integer liveSubscribe;
 
+    /** 是否已发送开考通知 0否 1是 */
+    @ApiModelProperty("是否已发送开考通知 0否 1是")
+    private Integer hasMockRemind;
+    /** 是否已发送开播通知 0不预约 1预约 */
+    @ApiModelProperty("是否已发送开播通知 0不预约 1预约")
+    private Integer hasLiveSubscribe;
 }

+ 7 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserMockSubscribeQueryBo.java

@@ -120,4 +120,11 @@ public class UserMockSubscribeQueryBo extends BaseEntity {
 	/** 预约直播 0不预约 1预约 */
 	@ApiModelProperty("预约直播 0不预约 1预约")
 	private Integer liveSubscribe;
+
+	/** 是否已发送开考通知 0否 1是 */
+	@ApiModelProperty("是否已发送开考通知 0否 1是")
+	private Integer hasMockRemind;
+	/** 是否已发送开播通知 0不预约 1预约 */
+	@ApiModelProperty("是否已发送开播通知 0不预约 1预约")
+	private Integer hasLiveSubscribe;
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserMockSubscribe.java

@@ -65,4 +65,9 @@ private static final long serialVersionUID=1L;
     private Integer mockRemind;
     /** 预约直播 0不预约 1预约 */
     private Integer liveSubscribe;
+
+    /** 是否已发送开考通知 0否 1是 */
+    private Integer hasMockRemind;
+    /** 是否已发送开播通知 0不预约 1预约 */
+    private Integer hasLiveSubscribe;
 }

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

@@ -89,6 +89,8 @@ public class UserMockSubscribeServiceImpl extends ServiceImpl<UserMockSubscribeM
         lqw.eq(bo.getFirstHandTime() != null, UserMockSubscribe::getFirstHandTime, bo.getFirstHandTime());
         lqw.eq(bo.getMockRemind() != null, UserMockSubscribe::getMockRemind, bo.getMockRemind());
         lqw.eq(bo.getLiveSubscribe() != null, UserMockSubscribe::getLiveSubscribe, bo.getLiveSubscribe());
+        lqw.eq(bo.getHasMockRemind() != null, UserMockSubscribe::getHasMockRemind, bo.getHasMockRemind());
+        lqw.eq(bo.getHasLiveSubscribe() != null, UserMockSubscribe::getHasLiveSubscribe, bo.getHasLiveSubscribe());
         return entity2Vo(this.list(lqw));
     }
 
@@ -242,7 +244,7 @@ public class UserMockSubscribeServiceImpl extends ServiceImpl<UserMockSubscribeM
             if (Validator.isNotEmpty(bo.getMockStatus()) && bo.getMockStatus() == 0) {
                 userMockSubscribeVoList.stream().forEach(userMockSubscribeVo -> {
                     try {
-                        if (System.currentTimeMillis()/1000 < formatTime(userMockSubscribeVo.getApplySiteExamTime(), userMockSubscribeVo.getApplySiteStartTime())) {
+                        if (System.currentTimeMillis()/1000 < formatTime(userMockSubscribeVo.getApplySiteExamTime(), userMockSubscribeVo.getApplySiteStartTime())+Integer.parseInt(userMockSubscribeVo.getTimeLimit()) * 60000L) {
                             userMockSubscribeVos.add(userMockSubscribeVo);
                         }
                     } catch (ParseException e) {

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserMockSubscribeVo.java

@@ -215,4 +215,13 @@ public class UserMockSubscribeVo {
 	@Excel(name = "前缀名称")
 	@ApiModelProperty("前缀名称")
 	private String prefixName;
+
+	/** 是否已发送开考通知 0否 1是 */
+	@Excel(name = "是否已发送开考通知 0否 1是")
+	@ApiModelProperty("是否已发送开考通知 0否 1是")
+	private Integer hasMockRemind;
+	/** 预约直播 0不预约 1预约 */
+	@Excel(name = "是否已发送直播通知 0否 1是")
+	@ApiModelProperty("是否已发送直播通知 0否 1是")
+	private Integer hasLiveSubscribe;
 }

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

@@ -58,6 +58,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE
             eag.goods_id = #{goodsId}
             and unix_timestamp(now()) &lt; ea.apply_end_time
+            and ea.`status` = 1
         ORDER BY ea.apply_start_time
     </select>
 </mapper>

+ 3 - 0
zhongzheng-system/src/main/resources/mapper/modules/mock/MockApplyMapper.xml

@@ -18,6 +18,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="businessId" column="business_id"/>
         <result property="projectId" column="project_id"/>
         <result property="code" column="code"/>
+        <result property="mockRemind" column="mockRemind"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.mock.vo.MockApplyVo" id="MockApplyVoResult">
@@ -52,6 +53,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="liveEndTime" column="live_end_time"/>
         <result property="recordingUrl" column="recording_url"/>
         <result property="coverUrl" column="cover_url"/>
+        <result property="mockRemind" column="mockRemind"/>
     </resultMap>
     <select id="getMockSubjectInfo" parameterType="java.lang.Long" resultMap="MockApplyVoResult">
         SELECT ma.*,
@@ -219,6 +221,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE
             unix_timestamp(now()) &lt; ma.apply_end_time
             AND unix_timestamp(now()) &gt; ma.apply_start_time
+            AND ma.mock_remind = 0
     </select>
     <select id="mockLiving" parameterType="java.lang.Long" resultType="java.lang.String">
         SELECT

+ 5 - 1
zhongzheng-system/src/main/resources/mapper/modules/order/OrderInputMapper.xml

@@ -44,10 +44,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="orderFrom" column="order_from"/>
         <result property="orderGoodsId" column="order_goods_id"/>
         <result property="goodsRefund" column="goods_refund"/>
+        <result property="goodsType" column="goods_type"/>
     </resultMap>
 
     <select id="selectList" parameterType="com.zhongzheng.modules.order.bo.OrderInputQueryBo" resultMap="OrderInputVoResult">
         SELECT  u.input_order_sn,
+        u.order_from,
+        any_value(g.goods_type) goods_type,
         count( DISTINCT u.user_id ) user_num,
         count( DISTINCT og.goods_id ) goods_num,
         any_value ( cet.education_name ) education_name,
@@ -63,7 +66,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         o.user_id,
         sum( o.order_price ) order_price,
         sum( o.pay_price ) pay_price,
-        o.order_sn
+        o.order_sn,
+        any_value(o.order_from) order_from
         FROM
         order_input oi
         LEFT JOIN `order` o ON oi.input_order_sn = o.input_order_sn

+ 3 - 3
zhongzheng-system/src/main/resources/mapper/modules/order/OrderMapper.xml

@@ -400,9 +400,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         `order` o
         LEFT JOIN order_goods og ON o.order_sn = og.order_sn
         LEFT JOIN goods g ON og.goods_id = g.goods_id
-        WHERE
-        og.pay_status IN ( 2, 3, 4 )
-        AND og.refund_status != 2
+        WHERE 1 = 1
+        <!-- og.pay_status IN ( 2, 3, 4 )
+        AND og.refund_status != 2 -->
         <if test="businessId != null">
             AND g.business_id = #{businessId}
         </if>

+ 5 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserMockSubscribeMapper.xml

@@ -24,6 +24,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="firstHandTime" column="first_hand_time"/>
         <result property="mockRemind" column="mock_remind"/>
         <result property="liveSubscribe" column="live_subscribe"/>
+        <result property="hasMockRemind" column="has_mock_remind"/>
+        <result property="hasLiveSubscribe" column="has_live_subscribe"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.user.vo.UserMockSubscribeVo" id="UserMockSubscribeVoResult">
@@ -63,6 +65,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="liveStartTime" column="live_start_time"/>
         <result property="liveEndTime" column="live_end_time"/>
         <result property="prefixName" column="prefix_name"/>
+        <result property="hasMockRemind" column="has_mock_remind"/>
+        <result property="hasLiveSubscribe" column="has_live_subscribe"/>
     </resultMap>
     <select id="getInfo" parameterType="java.lang.Long" resultMap="UserMockSubscribeVoResult">
         SELECT 	ums.*,
@@ -197,6 +201,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         LEFT JOIN course_subject css ON mms.subject_id = css.id
         WHERE
             ums.live_subscribe = 1
+          and ums.has_live_subscribe = 0
           and cs.live_start_time is not null
     </select>