he2802 2 lat temu
rodzic
commit
dba21c214a

+ 10 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java

@@ -233,6 +233,16 @@ public class ClassGradeController extends BaseController {
         return getDataTable(list);
     }
 
+
+    @ApiOperation("查询学员视频学习记录列表")
+    @PreAuthorize("@ss.hasPermi('grade:user:list')")
+    @GetMapping("/listUserVideoRecord")
+    public TableDataInfo<ClassPeriodStudentVo> listUserVideoRecord(ClassGradeUserQueryBo bo) {
+        startPage();
+        List<ClassPeriodStudentVo> list = iClassGradeUserService.listUserVideoRecord(bo);
+        return getDataTable(list);
+    }
+
     /**
      * 查询学时学员记录列表
      */

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/mapper/ClassGradeUserMapper.java

@@ -28,6 +28,8 @@ public interface ClassGradeUserMapper extends BaseMapper<ClassGradeUser> {
 
     List<ClassPeriodStudentVo> listUserPeriod(ClassGradeUserQueryBo bo);
 
+    List<ClassPeriodStudentVo> listUserVideoRecord(ClassGradeUserQueryBo bo);
+
     List<ClassPeriodStudentVo> listUserPeriodExport(ClassGradeUserQueryBo bo);
 
     List<ClassPeriodUserVo> listPeriod(ClassGradeUserQueryBo bo);

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeUserService.java

@@ -84,6 +84,8 @@ public interface IClassGradeUserService extends IService<ClassGradeUser> {
 
 	List<ClassPeriodStudentVo> listUserPeriodRecord(ClassGradeUserQueryBo bo);
 
+	List<ClassPeriodStudentVo> listUserVideoRecord(ClassGradeUserQueryBo bo);
+
 	List<UserPeriodExportVo> listUserStudyRecord(ClassGradeUserQueryBo bo);
 
 	List<UserPeriodExportV2Vo> listUserStudyRecordV2(ClassGradeUserQueryBo bo);

+ 15 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -1219,6 +1219,21 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         return classPeriodStudentVos;
     }
 
+    @Override
+    public List<ClassPeriodStudentVo> listUserVideoRecord(ClassGradeUserQueryBo bo) {
+        //查询班级学员信息
+        List<ClassPeriodStudentVo> classPeriodStudentVos = baseMapper.listUserVideoRecord(bo);
+        //查找学员学习记录
+        for (ClassPeriodStudentVo classPeriodStudentVo : classPeriodStudentVos) {
+            //取学时所有拍照最新的一张
+             String recentPhoto = userStudyRecordPhotoMapper.selectGradeRecentOnePhoto(classPeriodStudentVo.getUserId(), classPeriodStudentVo.getGradeId());
+           if (Validator.isNotEmpty(recentPhoto)) {
+                classPeriodStudentVo.setIdCardImg1(recentPhoto);
+            }
+        }
+        return classPeriodStudentVos;
+    }
+
     private Integer changePeriodStatus(Long gradePeriodStatus) {
         //當前班級學員審核狀態 -1不可审核 0待審  1未通过 2通过 3审核中
         //班级里的审核状态字段,保持一致 0 未通过 1通过 2待审核 -1 不可审核 3审核中

+ 16 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassPeriodStudentVo.java

@@ -205,4 +205,20 @@ public class ClassPeriodStudentVo {
 	@ApiModelProperty("学时通过时间")
 	private Long periodTime;
 
+	@Excel(name = "节名称")
+	@ApiModelProperty("节名称")
+	private String sectionName;
+	@Excel(name = "公司名称")
+	@ApiModelProperty("公司名称")
+	private String companyName;
+	@Excel(name = "节时长")
+	@ApiModelProperty("节时长")
+	private String durationTime;
+
+	@ApiModelProperty("学习开始时间")
+	private Long recordStartTime;
+	@ApiModelProperty("学习结束时间")
+	private Long recordEndTime;
+	@ApiModelProperty("最近在线时间")
+	private Long onLineTime;
 }

+ 28 - 0
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeUserMapper.xml

@@ -124,6 +124,12 @@
         <result property="serviceEndTime" column="service_end_time"/>
         <result property="oneInchPhotos" column="one_inch_photos"/>
         <result property="periodTime" column="period_time"/>
+        <result property="sectionName" column="section_name"/>
+        <result property="companyName" column="company_name"/>
+        <result property="durationTime" column="duration_time"/>
+        <result property="recordStartTime" column="record_start_time"/>
+        <result property="recordEndTime" column="record_end_time"/>
+        <result property="onLineTime" column="on_line_time"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.grade.vo.ClassPeriodUserVo" id="ClassPeriodUserVo">
@@ -316,6 +322,28 @@
         order by u.create_time desc
     </select>
 
+    <select id="listUserVideoRecord" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
+            resultMap="ClassPeriodStudentVo">
+        SELECT
+            up.* ,cg.class_name,cs.duration_time,u.id_card,u.realname,u.one_inch_photos,u.company_name,cs.`name` as section_name,ups.record_start_time,ups.record_end_time,ups.update_time as on_line_time
+        FROM
+            user_period up
+                LEFT JOIN user_period_status ups ON up.id = ups.period_id
+                LEFT JOIN class_grade cg on up.grade_id = cg.grade_id
+                LEFT JOIN  goods g ON up.goods_id = g.goods_id
+                LEFT JOIN course_section cs ON up.section_id = cs.section_id
+                LEFT JOIN `user` u ON up.user_id = u.user_id
+        WHERE
+            up.grade_id > 0  and up.type = 1
+        <if test="businessId != null and businessId != ''">
+            AND g.business_id = #{businessId}
+        </if>
+        <if test="educationTypeId != null and educationTypeId != ''">
+            AND g.education_type_id = #{educationTypeId}
+        </if>
+        order by up.create_time desc
+    </select>
+
 
     <select id="listUserPeriod" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
             resultMap="ClassPeriodStudentVo">