he2802 1 жил өмнө
parent
commit
d12b4e197f

+ 9 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/user/DangAnController.java

@@ -99,4 +99,13 @@ public class DangAnController extends BaseController {
         return getDataTable(list);
     }
 
+    @ApiOperation("查询档案资料列表")
+    @PreAuthorize("@ss.hasPermi('grade:student:list')")
+    @GetMapping("/listUserHandouts")
+    public TableDataInfo<ExamStudyRecordVo> listUserHandouts(UserQueryBo bo) {
+        startPage();
+        List<ExamStudyRecordVo> list = iUserStudyRecordService.querDangAnHandoutsStudy(bo);
+        return getDataTable(list);
+    }
+
 }

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

@@ -55,6 +55,8 @@ public interface UserStudyRecordMapper extends BaseMapper<UserStudyRecord> {
 
     List<ExamStudyRecordVo> querDangAnLiveStudy(UserQueryBo bo);
 
+    List<ExamStudyRecordVo> querDangAnHandoutsStudy(UserQueryBo bo);
+
     List<ExamSonStudyRecordVo> listExamSon(SubjectStudyRecordQueryBo bo);
 
     List<String> examTypes(Long id);

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

@@ -90,6 +90,8 @@ public interface IUserStudyRecordService extends IService<UserStudyRecord> {
 
 	List<ExamStudyRecordVo> querDangAnLiveStudy(UserQueryBo bo);
 
+	List<ExamStudyRecordVo> querDangAnHandoutsStudy(UserQueryBo bo);
+
     List<ExamSonStudyRecordVo> listExamSon(SubjectStudyRecordQueryBo bo);
 
 	SectionStudyRecordVo listExamRecord(SubjectStudyRecordQueryBo bo);

+ 7 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserStudyRecordServiceImpl.java

@@ -1959,7 +1959,13 @@ public class UserStudyRecordServiceImpl extends ServiceImpl<UserStudyRecordMappe
 
     @Override
     public List<ExamStudyRecordVo> querDangAnLiveStudy(UserQueryBo bo) {
-        List<ExamStudyRecordVo> list = baseMapper.querDangAnExamStudy(bo);
+        List<ExamStudyRecordVo> list = baseMapper.querDangAnLiveStudy(bo);
+        return list;
+    }
+
+    @Override
+    public List<ExamStudyRecordVo> querDangAnHandoutsStudy(UserQueryBo bo) {
+        List<ExamStudyRecordVo> list = baseMapper.querDangAnHandoutsStudy(bo);
         return list;
     }
 

+ 2 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/ExamStudyRecordVo.java

@@ -116,5 +116,6 @@ public class ExamStudyRecordVo {
     private Long sectionNum;
     @ApiModelProperty("状态")
     private Integer status;
-
+    @ApiModelProperty("文件数量")
+    private Long fileNum;
 }

+ 60 - 1
zhongzheng-system/src/main/resources/mapper/modules/user/UserStudyRecordMapper.xml

@@ -128,6 +128,7 @@
         <result property="chapterNum" column="chapter_num"/>
         <result property="status" column="status"/>
         <result property="sectionNum" column="section_num"/>
+        <result property="fileNum" column="file_num"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.user.vo.ExamSonStudyRecordVo" id="ExamSonStudyRecordVoResult">
@@ -733,10 +734,68 @@
         ORDER BY s.create_time DESC
     </select>
 
+    <select id="querDangAnHandoutsStudy" parameterType="com.zhongzheng.modules.user.bo.UserQueryBo"
+            resultMap="ExamStudyRecordVoResult">
+        SELECT
+        g.goods_id,
+        #{userId} as user_id,
+        s.create_time,
+        g.goods_name,
+        g.`year`,
+        g.`status`,
+        g.class_hours,
+        g.study_start_time,
+        g.study_end_time,
+        s.service_start_time,
+        s.service_end_time,
+        s.order_goods_id,
+        ( SELECT m.category_name FROM major m WHERE   m.id =g.major_id LIMIT 1) AS category_name,
+        ( SELECT i.business_name FROM course_business i WHERE i.id = g.business_id LIMIT 1) AS business_name,
+        ( SELECT p.project_name FROM course_project_type p WHERE p.id = g.project_id LIMIT 1) AS project_name,
+        s.service_start_time,
+        s.service_end_time,
+        ( SELECT count(*) FROM course_file cf WHERE  cf.handouts_id =g.handouts_id AND cf.type = 1 AND cf.`status` = 1 ) AS file_num,
+        FROM
+        goods g
+        LEFT JOIN order_goods s ON g.goods_id = s.goods_id
+        LEFT JOIN `order` o ON o.order_sn = s.order_sn
+        WHERE
+        where 1=1
+        AND s.refund_status in (0,1,3)
+        AND s.pay_status in (2,3,4)
+        AND o.`status` = 1
+        AND g.goods_type = 8
+        <if test="userId != null and userId !=''">
+            AND o.user_id = #{userId}
+        </if>
+        <if test="businessId != null and businessId != ''">
+            AND g.business_id = #{businessId}
+        </if>
+        <if test="projectId != null and projectId != ''">
+            AND g.project_id = #{projectId}
+        </if>
+        <if test="educationTypeId != null and educationTypeId != ''">
+            AND g.education_type_id = #{educationTypeId}
+        </if>
+        <if test="goodsName != null and goodsName != '' ">
+            and g.goods_name like concat('%', #{goodsName}, '%')
+        </if>
+        <if test="goodsStatus != null and goodsStatus != '' ">
+            and g.`status` = #{goodsStatus}
+        </if>
+        <if test="studyStartTime != null and studyStartTime != '' ">
+            and (SELECT count(*) FROM user_exam_record r where r.goods_id=g.goods_id AND r.do_mode = 1 AND r.user_id = #{userId} AND r.create_time >= #{studyStartTime} )>0
+        </if>
+        <if test="studyEndTime != null and studyEndTime != '' ">
+            and (SELECT count(*) FROM user_exam_record r where r.goods_id=g.goods_id AND r.do_mode = 1 AND r.user_id = #{userId} AND #{studyEndTime} >= r.create_time )>0
+        </if>
+        ORDER BY s.create_time DESC
+    </select>
+
     <select id="querDangAnLiveStudy" parameterType="com.zhongzheng.modules.user.bo.UserQueryBo"
             resultMap="ExamStudyRecordVoResult">
         SELECT
-        DISTINCT g.goods_id,
+        g.goods_id,
         #{userId} as user_id,
         s.create_time,
         g.goods_name,