浏览代码

fix 控制台班级

he2802 3 年之前
父节点
当前提交
165455b94c

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

@@ -30,4 +30,21 @@ public class ConsoleQueryBo extends BaseEntity {
 	@ApiModelProperty("订单结束时间")
 	private Long endTime;
 
+	@ApiModelProperty("官方学习账号标记状态 0未开通 1已开通 2标记失败")
+	private Integer learnStatus;
+
+	/**
+	 * 官方账号开通(有接口)
+	 */
+	@ApiModelProperty("官方账号开通(有接口)")
+	private Long interfaceAccountId;
+
+	/**
+	 * 官方账号开通(无接口)
+	 */
+	@ApiModelProperty("官方账号开通(无接口)")
+	private Long noInterfaceAccountId;
+
+	@ApiModelProperty("学习完成状态 0 未学完 1学完")
+	private Integer finishStatus;
 }

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

@@ -134,6 +134,41 @@ public class ConsoleServiceImpl implements IConsoleService {
         bo.setStartTime(sevenZero);
         List<ClassGradeVo> sevenList = iClassGradeService.getConsoleGradeList(bo);
         countGradeNum(map,"sev",sevenList); //7天
+
+        ConsoleQueryBo bo1 = new ConsoleQueryBo();
+        bo1.setBusinessId(bo.getBusinessId());
+        bo1.setInterfaceAccountId(0L);
+        bo1.setNoInterfaceAccountId(0L);
+        Integer noConfigNum = iClassGradeService.getConsoleGradeAccountNum(bo1);
+        bo1.setInterfaceAccountId(1L);
+        bo1.setNoInterfaceAccountId(null);
+        Integer interfNum = iClassGradeService.getConsoleGradeAccountNum(bo1);
+        bo1.setInterfaceAccountId(null);
+        bo1.setNoInterfaceAccountId(1L);
+        Integer noInterfNum = iClassGradeService.getConsoleGradeAccountNum(bo1);
+        map.put("noConfigNum",noConfigNum);
+        map.put("interfNum",interfNum);
+        map.put("noInterfNum",noInterfNum);
+
+        ConsoleQueryBo bo2 = new ConsoleQueryBo();
+        bo2.setBusinessId(bo.getBusinessId());
+        bo2.setLearnStatus(0);
+        Integer noOpenNum = iClassGradeService.getConsoleGradeUserAccountNum(bo2);
+        bo2.setLearnStatus(1);
+        Integer openNum = iClassGradeService.getConsoleGradeUserAccountNum(bo2);
+        bo2.setLearnStatus(2);
+        Integer failNum = iClassGradeService.getConsoleGradeUserAccountNum(bo2);
+
+        bo2.setLearnStatus(null);
+        bo2.setFinishStatus(0);
+        Integer noFinishNum = iClassGradeService.getConsoleGradeUserAccountNum(bo2);
+        bo2.setFinishStatus(1);
+        Integer finishNum = iClassGradeService.getConsoleGradeUserAccountNum(bo2);
+        map.put("noOpenNum",noOpenNum);
+        map.put("openNum",openNum);
+        map.put("failNum",failNum);
+        map.put("noFinishNum",noFinishNum);
+        map.put("finishNum",finishNum);
         return map;
     }
 

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/mapper/ClassGradeMapper.java

@@ -44,4 +44,8 @@ public interface ClassGradeMapper extends BaseMapper<ClassGrade> {
 
     List<ClassGradeVo> selectByBusinessId(Long businessId);
 
+    Integer getConsoleGradeUserAccountNum(ConsoleQueryBo bo);
+
+    Integer getConsoleGradeAccountNum(ConsoleQueryBo bo);
+
 }

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

@@ -67,4 +67,8 @@ public interface IClassGradeService extends IService<ClassGrade> {
 
     List<ClassGradeVo> selectByBusinessId(Long businessId);
 
+	Integer getConsoleGradeUserAccountNum(ConsoleQueryBo bo);
+
+	Integer getConsoleGradeAccountNum(ConsoleQueryBo bo);
+
 }

+ 10 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java

@@ -486,6 +486,16 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
         return baseMapper.selectByBusinessId(businessId);
     }
 
+    @Override
+    public Integer getConsoleGradeUserAccountNum(ConsoleQueryBo bo) {
+        return baseMapper.getConsoleGradeUserAccountNum(bo);
+    }
+
+    @Override
+    public Integer getConsoleGradeAccountNum(ConsoleQueryBo bo) {
+        return baseMapper.getConsoleGradeAccountNum(bo);
+    }
+
     /**
      * 实体类转化成视图对象
      *

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

@@ -595,6 +595,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             AND #{endTime} >= cg.create_time
         </if>
     </select>
+
     <select id="selectByBusinessId" resultType="com.zhongzheng.modules.grade.vo.ClassGradeVo">
         SELECT
             cg.*
@@ -605,6 +606,61 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="businessId != null and businessId !=''">
             AND g.business_id = #{businessId}
         </if>
+    </select>
+
+    <select id="getConsoleGradeUserAccountNum" parameterType="com.zhongzheng.modules.base.bo.ConsoleQueryBo" resultType="Integer">
+        SELECT
+        count(cgu.id)
+        FROM
+        class_grade_user cgu  LEFT JOIN class_grade_goods cgg ON cgu.grade_id = cgg.grade_id
+        LEFT JOIN goods g ON cgg.goods_id = g.goods_id
+        WHERE
+        1 = 1
+        <if test="learnStatus != null">
+            AND cgu.learn_status = #{learnStatus}
+        </if>
+        <if test="finishStatus != null">
+            AND cgu.finish_status = #{finishStatus}
+        </if>
+        <if test="businessId != null">
+            AND g.business_id = #{businessId}
+        </if>
+        <if test="startTime != null">
+            AND cgu.create_time >= #{startTime}
+        </if>
+        <if test="endTime != null">
+            AND #{endTime} >= cgu.create_time
+        </if>
+    </select>
 
+    <select id="getConsoleGradeAccountNum" parameterType="com.zhongzheng.modules.base.bo.ConsoleQueryBo" resultType="Integer">
+        SELECT
+        count(cg.grade_id)
+        FROM
+        class_grade cg  LEFT JOIN class_grade_goods cgg ON cg.grade_id = cgg.grade_id
+        LEFT JOIN goods g ON cgg.goods_id = g.goods_id
+        WHERE
+        1 = 1
+        <if test="interfaceAccountId != null and interfaceAccountId== 1">
+            AND cg.interface_account_id > 0
+        </if>
+        <if test="interfaceAccountId != null and interfaceAccountId== 0">
+            AND cg.interface_account_id is NULL
+        </if>
+        <if test="noInterfaceAccountId != null and noInterfaceAccountId== 1">
+            AND cg.no_interface_account_id > 0
+        </if>
+        <if test="noInterfaceAccountId != null and noInterfaceAccountId== 0">
+            AND cg.no_interface_account_id is NULL
+        </if>
+        <if test="businessId != null">
+            AND g.business_id = #{businessId}
+        </if>
+        <if test="startTime != null">
+            AND cg.create_time >= #{startTime}
+        </if>
+        <if test="endTime != null">
+            AND #{endTime} >= cg.create_time
+        </if>
     </select>
 </mapper>