Эх сурвалжийг харах

fix 控制台考试数据

tanzh 3 жил өмнө
parent
commit
5f700509d5

+ 14 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/base/ConsoleController.java

@@ -58,4 +58,18 @@ public class ConsoleController extends BaseController {
         Map<String,Object> numMap = iConsoleService.getPeriodData(bo);
         Map<String,Object> numMap = iConsoleService.getPeriodData(bo);
         return AjaxResult.success(numMap);
         return AjaxResult.success(numMap);
     }
     }
+
+    @ApiOperation("控制台考试数据")
+    @GetMapping("/testData")
+    public AjaxResult<Map<String,Object>> testData(ConsoleQueryBo bo) {
+        Map<String,Object> numMap = iConsoleService.getTestData(bo);
+        return AjaxResult.success(numMap);
+    }
+
+    @ApiOperation("控制台模考数据")
+    @GetMapping("/examData")
+    public AjaxResult<Map<String,Object>> examData(ConsoleQueryBo bo) {
+        Map<String,Object> numMap = iConsoleService.getExamData(bo);
+        return AjaxResult.success(numMap);
+    }
 }
 }

+ 11 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/bo/ConsoleQueryBo.java

@@ -80,4 +80,15 @@ public class ConsoleQueryBo extends BaseEntity {
 
 
 	/** 是否学时推送 0未推送 1推送 */
 	/** 是否学时推送 0未推送 1推送 */
 	private Integer periodPlush;
 	private Integer periodPlush;
+
+	/** 考试预约状态 1正常 2取消 */
+	private Integer subscribeStatus;
+
+	@ApiModelProperty("预约开始时间")
+	private Long subStartTime;
+	@ApiModelProperty("预约结束时间")
+	private Long subEndTime;
+
+	/** 考试登记状态 0 待登记 1正常 2缺考 3作弊 4替考 */
+	private Integer examStatus;
 }
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/IConsoleService.java

@@ -18,4 +18,8 @@ public interface IConsoleService {
     Map<String,Object> getGradeData(ConsoleQueryBo bo);
     Map<String,Object> getGradeData(ConsoleQueryBo bo);
 
 
     Map<String,Object> getPeriodData(ConsoleQueryBo bo);
     Map<String,Object> getPeriodData(ConsoleQueryBo bo);
+
+    Map<String, Object> getTestData(ConsoleQueryBo bo);
+
+    Map<String, Object> getExamData(ConsoleQueryBo bo);
 }
 }

+ 66 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/ConsoleServiceImpl.java

@@ -10,6 +10,7 @@ import com.zhongzheng.modules.grade.vo.ClassGradeVo;
 import com.zhongzheng.modules.order.service.IOrderService;
 import com.zhongzheng.modules.order.service.IOrderService;
 import com.zhongzheng.modules.order.vo.OrderListVo;
 import com.zhongzheng.modules.order.vo.OrderListVo;
 import com.zhongzheng.modules.user.service.IUserService;
 import com.zhongzheng.modules.user.service.IUserService;
+import com.zhongzheng.modules.user.service.IUserSubscribeService;
 import com.zhongzheng.modules.user.service.IUserUpdateService;
 import com.zhongzheng.modules.user.service.IUserUpdateService;
 import com.zhongzheng.modules.user.vo.UserUpdateVo;
 import com.zhongzheng.modules.user.vo.UserUpdateVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -30,6 +31,9 @@ public class ConsoleServiceImpl implements IConsoleService {
     @Autowired
     @Autowired
     private IClassGradeService iClassGradeService;
     private IClassGradeService iClassGradeService;
 
 
+    @Autowired
+    private IUserSubscribeService iUserSubscribeService;
+
     @Override
     @Override
     public Map<String, Object> getStudentData(ConsoleQueryBo bo) {
     public Map<String, Object> getStudentData(ConsoleQueryBo bo) {
         Integer allNum = iOrderService.getConsoleStudentNum(bo); //总人数
         Integer allNum = iOrderService.getConsoleStudentNum(bo); //总人数
@@ -259,6 +263,68 @@ public class ConsoleServiceImpl implements IConsoleService {
         return map;
         return map;
     }
     }
 
 
+    @Override
+    public Map<String, Object> getTestData(ConsoleQueryBo bo) {
+        Map<String, Object> map = new HashMap<>();
+        Calendar cal = Calendar.getInstance();
+        cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
+        Long todZero = cal.getTimeInMillis() / 1000;  //今天凌晨
+        cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH)-1, 0, 0, 0);
+        Long ytdZero = cal.getTimeInMillis() / 1000;   //昨天凌晨
+        Calendar cal7 = new GregorianCalendar();
+        cal7.add(Calendar.DATE,-6); //7天内
+        cal7.set(cal7.get(Calendar.YEAR), cal7.get(Calendar.MONTH), cal7.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
+        Long sevenZero = cal7.getTimeInMillis() / 1000;   //7日内凌晨
+
+        bo.setSubscribeStatus(1);
+        Integer subscribeNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(0);
+        Integer waitRegisterNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(1);
+        Integer registerNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setSubStartTime(todZero);
+        bo.setEndTime(DateUtils.getNowTime());
+        Integer subTodNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(0);
+        Integer waitRegisterTodNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(1);
+        Integer registerTodNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setSubStartTime(ytdZero);
+        bo.setSubEndTime(todZero);
+        Integer subYtdNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(0);
+        Integer waitRegisterYtdNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(1);
+        Integer registerYtdNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setSubStartTime(sevenZero);
+        bo.setSubEndTime(DateUtils.getNowTime());
+        Integer subSevNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(0);
+        Integer waitRegisterSevNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+        bo.setExamStatus(1);
+        Integer registerSevNum = iUserSubscribeService.getConsoleTestSubscribeNum(bo);
+
+
+        map.put("subscribeNum", subscribeNum);
+        map.put("waitRegisterNum", waitRegisterNum);
+        map.put("registerNum", registerNum);
+        map.put("subTodNum", subTodNum);
+        map.put("waitRegisterTodNum", waitRegisterTodNum);
+        map.put("registerTodNum", registerTodNum);
+        map.put("subYtdNum", subYtdNum);
+        map.put("waitRegisterYtdNum", waitRegisterYtdNum);
+        map.put("registerYtdNum", registerYtdNum);
+        map.put("subSevNum", subSevNum);
+        map.put("waitRegisterSevNum", waitRegisterSevNum);
+        map.put("registerSevNum", registerSevNum);
+        return map;
+    }
+
+    @Override
+    public Map<String, Object> getExamData(ConsoleQueryBo bo) {
+        return null;
+    }
+
     private void countNum(Map<String, Object> map,String tag,List<OrderListVo> allList){
     private void countNum(Map<String, Object> map,String tag,List<OrderListVo> allList){
         Integer allNum = allList.size();
         Integer allNum = allList.size();
         map.put(tag+"Num",allNum);
         map.put(tag+"Num",allNum);

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserSubscribeMapper.java

@@ -1,5 +1,6 @@
 package com.zhongzheng.modules.user.mapper;
 package com.zhongzheng.modules.user.mapper;
 
 
+import com.zhongzheng.modules.base.bo.ConsoleQueryBo;
 import com.zhongzheng.modules.user.bo.UserSubscribeQueryBo;
 import com.zhongzheng.modules.user.bo.UserSubscribeQueryBo;
 import com.zhongzheng.modules.user.domain.UserSubscribe;
 import com.zhongzheng.modules.user.domain.UserSubscribe;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -45,4 +46,6 @@ public interface UserSubscribeMapper extends BaseMapper<UserSubscribe> {
     List<UserSubscribeVo> listSubscribeByUser(UserSubscribeQueryBo bo);
     List<UserSubscribeVo> listSubscribeByUser(UserSubscribeQueryBo bo);
 
 
     UserSubscribeVo getRecentExam(UserSubscribeQueryBo bo);
     UserSubscribeVo getRecentExam(UserSubscribeQueryBo bo);
+
+    Integer getConsoleTestSubscribeNum(ConsoleQueryBo bo);
 }
 }

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

@@ -1,5 +1,6 @@
 package com.zhongzheng.modules.user.service;
 package com.zhongzheng.modules.user.service;
 
 
+import com.zhongzheng.modules.base.bo.ConsoleQueryBo;
 import com.zhongzheng.modules.user.bo.*;
 import com.zhongzheng.modules.user.bo.*;
 import com.zhongzheng.modules.user.domain.UserSubscribe;
 import com.zhongzheng.modules.user.domain.UserSubscribe;
 import com.zhongzheng.modules.user.vo.UserSubscribeIdsImport;
 import com.zhongzheng.modules.user.vo.UserSubscribeIdsImport;
@@ -77,4 +78,6 @@ public interface IUserSubscribeService extends IService<UserSubscribe> {
 	List<UserSubscribeVo> timeSend();
 	List<UserSubscribeVo> timeSend();
 
 
 	List<UserSubscribeVo> listSubscribeByUser(UserSubscribeQueryBo bo);
 	List<UserSubscribeVo> listSubscribeByUser(UserSubscribeQueryBo bo);
+
+    Integer getConsoleTestSubscribeNum(ConsoleQueryBo bo);
 }
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserSubscribeServiceImpl.java

@@ -13,6 +13,7 @@ import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.modules.alisms.service.IAliSmsService;
 import com.zhongzheng.modules.alisms.service.IAliSmsService;
+import com.zhongzheng.modules.base.bo.ConsoleQueryBo;
 import com.zhongzheng.modules.course.domain.CourseBusiness;
 import com.zhongzheng.modules.course.domain.CourseBusiness;
 import com.zhongzheng.modules.course.mapper.CourseMapper;
 import com.zhongzheng.modules.course.mapper.CourseMapper;
 import com.zhongzheng.modules.course.service.ICourseService;
 import com.zhongzheng.modules.course.service.ICourseService;
@@ -1577,4 +1578,9 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
     public List<UserSubscribeVo> listSubscribeByUser(UserSubscribeQueryBo bo) {
     public List<UserSubscribeVo> listSubscribeByUser(UserSubscribeQueryBo bo) {
         return baseMapper.listSubscribeByUser(bo);
         return baseMapper.listSubscribeByUser(bo);
     }
     }
+
+    @Override
+    public Integer getConsoleTestSubscribeNum(ConsoleQueryBo bo) {
+        return baseMapper.getConsoleTestSubscribeNum(bo);
+    }
 }
 }

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

@@ -309,4 +309,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
           AND LEFT(us.apply_site_start_time,2)*3600+RIGHT(us.apply_site_start_time,2)*60+us.apply_site_exam_time >  unix_timestamp(now())
           AND LEFT(us.apply_site_start_time,2)*3600+RIGHT(us.apply_site_start_time,2)*60+us.apply_site_exam_time >  unix_timestamp(now())
         ORDER by us.apply_site_exam_time  limit 1
         ORDER by us.apply_site_exam_time  limit 1
     </select>
     </select>
+    <select id="getConsoleTestSubscribeNum" parameterType="com.zhongzheng.modules.base.bo.ConsoleQueryBo" resultType="Integer">
+        SELECT
+        COUNT(us.subscribe_id)
+        FROM
+        user_subscribe us
+        LEFT JOIN goods g ON us.goods_id = g.goods_id
+        WHERE
+        1=1
+        <if test="businessId != null">
+            AND g.business_id = #{businessId}
+        </if>
+        <if test="subscribeStatus != null">
+            AND us.subscribe_status = #{subscribeStatus}
+        </if>
+        <if test="examStatus != null">
+            AND us.exam_status = #{examStatus}
+        </if>
+        <if test="subStartTime != null">
+            AND us.create_time &gt; #{subStartTime}
+        </if>
+        <if test="subEndTime != null">
+            AND us.create_time &lt; #{subEndTime}
+        </if>
+    </select>
 </mapper>
 </mapper>