he2802 1 жил өмнө
parent
commit
5a877b232f

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

@@ -3538,7 +3538,8 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
             subjectStudyRecordQueryBo.setGoodsId(classPeriodStudentVo.getGoodsId());
             subjectStudyRecordQueryBo.setUserId(classPeriodStudentVo.getUserId());
             subjectStudyRecordQueryBo.setGradeId(classPeriodStudentVo.getGradeId());
-            List<SubjectStudyRecordVo> subjectStudyRecordVos = iUserStudyRecordService.listSubject(subjectStudyRecordQueryBo);
+            subjectStudyRecordQueryBo.setOrderGoodsId(classPeriodStudentVo.getOrderGoodsId());
+            List<SubjectStudyRecordVo> subjectStudyRecordVos = iUserStudyRecordService.listDangAnSubject(subjectStudyRecordQueryBo);
             for (SubjectStudyRecordVo subjectStudyRecordVo : subjectStudyRecordVos) {
                 secLong = new BigDecimal(secLong.toString()).add(new BigDecimal(subjectStudyRecordVo.getSectionNum().toString())).longValue();
                 studyLong = new BigDecimal(studyLong.toString()).add(new BigDecimal(subjectStudyRecordVo.getRecordNum().toString())).longValue();

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserStudyRecordMapper.java

@@ -40,6 +40,8 @@ public interface UserStudyRecordMapper extends BaseMapper<UserStudyRecord> {
 
     List<SubjectStudyRecordVo> listSubject(SubjectStudyRecordQueryBo bo);
 
+    List<SubjectStudyRecordVo> listDangAnSubject(SubjectStudyRecordQueryBo bo);
+
     @InterceptorIgnore(tenantLine = "true")
     List<SubjectStudyRecordVo> listSubjectTenant(SubjectStudyRecordQueryBo bo);
 

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserStudyRecordService.java

@@ -78,6 +78,8 @@ public interface IUserStudyRecordService extends IService<UserStudyRecord> {
 
 	List<GoodsStudyRecordVo> queryLiveGoods(UserQueryBo bo);
 
+	List<SubjectStudyRecordVo> listDangAnSubject(SubjectStudyRecordQueryBo bo);
+
 	List<SubjectStudyRecordVo> listSubject(SubjectStudyRecordQueryBo bo);
 
 	List<SubjectStudyRecordVo> listSubjectTenant(SubjectStudyRecordQueryBo bo);

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserStudyRecordServiceImpl.java

@@ -1899,6 +1899,11 @@ public class UserStudyRecordServiceImpl extends ServiceImpl<UserStudyRecordMappe
         return list;
     }
 
+    @Override
+    public List<SubjectStudyRecordVo> listDangAnSubject(SubjectStudyRecordQueryBo bo) {
+        return this.baseMapper.listDangAnSubject(bo);
+    }
+
     @Override
     public List<SubjectStudyRecordVo> listSubject(SubjectStudyRecordQueryBo bo) {
         String tenantId = ServletUtils.getRequest().getHeader("TenantId");

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

@@ -1804,6 +1804,7 @@
         g.goods_name,
         g.code as goods_code,
         g.stand_price,
+        g.goods_id,
         cgu.period_status,
         cg.class_start_time,
         cg.class_end_time,
@@ -1898,7 +1899,7 @@
             or cg.class_name like concat('%', #{searchKey}, '%'))
         </if>
         <if test="userId != null and userId !='' ">
-            AND u.user_id = #{userId}
+            AND cgu.user_id = #{userId}
         </if>
         <if test="idCard != null and idCard !='' ">
             AND u.id_card = #{idCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}

+ 63 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserStudyRecordMapper.xml

@@ -269,6 +269,69 @@
         ORDER BY o.create_time desc
     </select>
 
+    <select id="listDangAnSubject" parameterType="com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo"
+            resultMap="SubjectStudyRecordVoResult">
+        SELECT
+        #{userId} as user_id,
+        r.subject_id,
+        r.course_id,
+        r.course_name,
+        (SELECT COUNT(id)+(SELECT COUNT(n.id) FROM course_chapter_section n LEFT JOIN course_module_chapter p on
+        n.chapter_id = p.chapter_id
+        <if test="tenantId != null and tenantId !=''">
+            and p.tenant_id=#{tenantId}
+        </if>
+        LEFT JOIN course_menu m on m.menu_id = p.module_id
+        <if test="tenantId != null and tenantId !=''">
+            and m.tenant_id=#{tenantId}
+        </if>
+        where m.course_id = r.course_id
+        and m.type in (1)
+        <if test="tenantId != null and tenantId !=''">
+            and n.tenant_id=#{tenantId}
+        </if>
+        )+(SELECT COUNT(n.id) FROM course_chapter_section n LEFT JOIN course_menu m on m.menu_id =
+        n.chapter_id
+        <if test="tenantId != null and tenantId !=''">
+            and m.tenant_id=#{tenantId}
+        </if>
+        where m.course_id = r.course_id and m.type in (2)
+        <if test="tenantId != null and tenantId !=''">
+            and n.tenant_id=#{tenantId}
+        </if>) FROM course_menu m where m.course_id =
+        r.course_id and m.type in (3)
+        <if test="tenantId != null and tenantId !=''">
+            and m.tenant_id=#{tenantId}
+        </if>
+        ) as section_num,
+        (select COUNT(DISTINCT course_id,module_id,chapter_id,section_id) FROM user_study_record c where 1=1
+        AND c.course_id = r.course_id
+        and c.current_status=1
+        <if test="gradeId != null and gradeId !=''">
+            and c.grade_id=#{gradeId}
+        </if>
+        <if test="orderGoodsId != null and orderGoodsId !=''">
+            and c.order_goods_id=#{orderGoodsId}
+        </if>
+        <if test="tenantId != null and tenantId !=''">
+            and c.tenant_id=#{tenantId}
+        </if>
+        and c.user_id=#{userId} and c.status = 1 and c.goods_id = #{goodsId}) as record_num
+        FROM
+        course r
+        LEFT JOIN goods_course c ON c.course_id = r.course_id
+        <if test="tenantId != null and tenantId !=''">
+            and c.tenant_id=#{tenantId}
+        </if>
+        where 1=1
+        <if test="goodsId != null and goodsId !=''">
+            and c.goods_id =#{goodsId}
+        </if>
+        <if test="courseId != null and courseId !=''">
+            and c.course_id =#{courseId}
+        </if>
+    </select>
+
 
     <select id="listSubject" parameterType="com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo"
             resultMap="SubjectStudyRecordVoResult">