he2802 4 anos atrás
pai
commit
1cd0c8cc3a

+ 13 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/user/UserController.java

@@ -7,6 +7,7 @@ import com.zhongzheng.modules.user.bo.UserAddBo;
 import com.zhongzheng.modules.user.bo.UserEditBo;
 import com.zhongzheng.modules.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.service.IUserService;
+import com.zhongzheng.modules.user.vo.UserStudyRecordVo;
 import com.zhongzheng.modules.user.vo.UserVo;
 import lombok.RequiredArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -109,4 +110,16 @@ public class UserController extends BaseController {
     public AjaxResult<Void> remove(@PathVariable Long[] userIds) {
         return toAjax(iUserService.deleteWithValidByIds(Arrays.asList(userIds), true) ? 1 : 0);
     }
+
+    /**
+     * 查询客户端用户学习记录列表
+     */
+    @ApiOperation("客户端用户学习记录列表")
+    @PreAuthorize("@ss.hasPermi('app:user:studyRecordList')")
+    @GetMapping("/studyRecordList")
+    public TableDataInfo<UserStudyRecordVo> studyRecordList(UserQueryBo bo) {
+        startPage();
+        List<UserStudyRecordVo> list = iUserService.selectStudyRecordList(bo);
+        return getDataTable(list);
+    }
 }

+ 6 - 0
zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/UserServiceImpl.java

@@ -33,6 +33,7 @@ import com.zhongzheng.modules.user.entity.ClientLoginUser;
 import com.zhongzheng.modules.user.mapper.UserMapper;
 import com.zhongzheng.modules.user.service.IUserService;
 import com.zhongzheng.modules.user.vo.RanKingUser;
+import com.zhongzheng.modules.user.vo.UserStudyRecordVo;
 import com.zhongzheng.modules.user.vo.UserVo;
 import io.swagger.models.auth.In;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -146,6 +147,11 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
         return entity2Vo(list);
     }
 
+    @Override
+    public List<UserStudyRecordVo> selectStudyRecordList(UserQueryBo bo) {
+        return userMapper.selectStudyRecordList(bo);
+    }
+
     private List<UserVo> entity2Vo(List<User> list) {
         List<UserVo> newList = new ArrayList<>();
         for(int i=0;i<list.size();i++){

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

@@ -5,6 +5,7 @@ import com.zhongzheng.modules.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.domain.User;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.zhongzheng.modules.user.vo.RanKingUser;
+import com.zhongzheng.modules.user.vo.UserStudyRecordVo;
 import com.zhongzheng.modules.user.vo.UserVo;
 
 import java.util.List;
@@ -28,4 +29,6 @@ public interface UserMapper extends BaseMapper<User> {
     Integer selectUserNum(Integer grade);
 
     List<User> selectList(UserQueryBo bo);
+
+    List<UserStudyRecordVo> selectStudyRecordList(UserQueryBo bo);
 }

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

@@ -3,6 +3,7 @@ package com.zhongzheng.modules.user.service;
 import com.zhongzheng.modules.user.bo.RanKingUserQuery;
 import com.zhongzheng.modules.user.domain.User;
 import com.zhongzheng.modules.user.vo.RanKingUser;
+import com.zhongzheng.modules.user.vo.UserStudyRecordVo;
 import com.zhongzheng.modules.user.vo.UserVo;
 import com.zhongzheng.modules.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.bo.UserAddBo;
@@ -37,6 +38,8 @@ public interface IUserService extends IService<User> {
 
 	List<UserVo> selectList(UserQueryBo bo);
 
+	List<UserStudyRecordVo> selectStudyRecordList(UserQueryBo bo);
+
 	/**
 	 * 根据新增业务对象插入用户
 	 * @param bo 用户新增业务对象

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserStudyRecordVo.java

@@ -52,5 +52,11 @@ public class UserStudyRecordVo {
 	private String coverUrl;
 	@ApiModelProperty("课程名称")
 	private String courseName;
+	@ApiModelProperty("手机号码")
+	private String telphone;
+	@ApiModelProperty("姓名")
+	private String realname;
+	@ApiModelProperty("视频标题")
+	private String title;
 
 }

+ 34 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserMapper.xml

@@ -57,6 +57,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="rank" column="pm"/>
     </resultMap>
 
+    <resultMap type="com.zhongzheng.modules.user.vo.UserStudyRecordVo" id="StudyRecordResult">
+        <result property="telphone" column="telphone"/>
+        <result property="realname" column="realname"/>
+        <result property="endTime" column="end_time"/>
+        <result property="startTime" column="start_time"/>
+        <result property="title" column="title"/>
+        <result property="courseName" column="course_name"/>
+        <result property="studyDuration" column="study_duration"/>
+    </resultMap>
+
 
 
     <select id="selectByRank" parameterType="com.zhongzheng.modules.user.bo.RanKingUserQuery" resultMap="RanKingUserResult">
@@ -138,4 +148,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
     </select>
 
+
+    <select id="selectStudyRecordList" resultMap="StudyRecordResult">
+        SELECT
+            usr.study_duration,
+            c.course_name,
+            pv.title,
+            usr.start_time,
+            usr.end_time,
+            u.realname,
+            u.telphone
+        FROM
+            user_study_record usr
+                LEFT JOIN course c ON usr.course_id = c.course_id
+                LEFT JOIN course_section cs ON usr.section_id = cs.section_id
+                LEFT JOIN polyv_video pv ON cs.polyv_id = pv.polyv_id
+                LEFT JOIN `user` u ON usr.user_id = u.user_id
+        WHERE 1=1
+        <if test="userId != null and userId != ''" >
+            AND usr.user_id = #{userId}
+        </if>
+        ORDER BY
+            usr.record_id DESC
+    </select>
+
 </mapper>