瀏覽代碼

add 获取最后一次资料审核

he2802 3 年之前
父節點
當前提交
5afe544b2a

+ 13 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/base/ProfileTpController.java

@@ -7,6 +7,7 @@ import com.zhongzheng.common.core.redis.RedisCache;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.framework.web.service.WxTokenService;
 import com.zhongzheng.modules.base.bo.*;
+import com.zhongzheng.modules.base.domain.UserProfile;
 import com.zhongzheng.modules.base.service.IProfileTpService;
 import com.zhongzheng.modules.base.service.IUserProfileService;
 import com.zhongzheng.modules.base.vo.ProfileTpVo;
@@ -43,6 +44,7 @@ public class ProfileTpController extends BaseController {
 
     private final RedisCache redisCache;
 
+
     /**
      * 查询资料模板列表
      */
@@ -56,6 +58,8 @@ public class ProfileTpController extends BaseController {
 
 
 
+
+
     /**
      * 获取资料模板详细信息
      */
@@ -122,4 +126,13 @@ public class ProfileTpController extends BaseController {
         List<UserProfileVo> list = iUserProfileService.queryList(bo);
         return getDataTable(list);
     }
+
+
+    @ApiOperation("获取最新一次资料审核详细信息")
+    @GetMapping("/queryLast")
+    public AjaxResult<UserProfile> queryLast(UserProfileQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        return AjaxResult.success(iUserProfileService.queryLast(bo));
+    }
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/IUserProfileService.java

@@ -36,6 +36,8 @@ public interface IUserProfileService extends IService<UserProfile> {
 	 */
 	List<UserProfileVo> queryList(UserProfileQueryBo bo);
 
+	UserProfile queryLast(UserProfileQueryBo bo);
+
 	/**
 	 * 根据新增业务对象插入填写资料审核
 	 * @param bo 填写资料审核新增业务对象

+ 10 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/UserProfileServiceImpl.java

@@ -133,6 +133,16 @@ public class UserProfileServiceImpl extends ServiceImpl<UserProfileMapper, UserP
         return baseMapper.selectUserProfile(bo);
     }
 
+    @Override
+    public UserProfile queryLast(UserProfileQueryBo bo) {
+        UserProfile profile = getOne(new LambdaQueryWrapper<UserProfile>()
+                .eq(UserProfile::getUserId, bo.getUserId())
+                .eq(UserProfile::getTypeStatus, 1)
+                .orderByDesc(UserProfile::getId)
+                .last("limit 1"));
+        return profile;
+    }
+
     /**
      * 实体类转化成视图对象
      *

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/GoodsQueryBo.java

@@ -52,6 +52,8 @@ GoodsQueryBo extends BaseEntity {
 	/** 教育类型id */
 	@ApiModelProperty("教育类型id")
 	private Long educationTypeId;
+	@ApiModelProperty("项目类型id")
+	private Long projectId;
 	/** 业务层次id */
 	@ApiModelProperty("业务层次id")
 	private Long businessId;

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

@@ -84,7 +84,7 @@ public interface IClassGradeUserService extends IService<ClassGradeUser> {
 
 	List<UserPeriodExportVo> listUserStudyRecord(ClassGradeUserQueryBo bo);
 
-	List<UserPeriodExportVo> listUserStudyRecordV2(ClassGradeUserQueryBo bo);
+	List<ClassPeriodVo> listUserStudyRecordV2(ClassGradeUserQueryBo bo);
 
     List<ClassPeriodUserVo> listPeriod(ClassGradeUserQueryBo bo);
 

+ 7 - 208
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -1271,214 +1271,13 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
      * @return
      */
     @Override
-    public List<UserPeriodExportVo> listUserStudyRecordV2(ClassGradeUserQueryBo bo) {
-        //学习记录
-        ClassGradeUserQueryBo cGQB = new ClassGradeUserQueryBo();
-        cGQB.setGoodsId(bo.getGoodsId());
-        cGQB.setUserId(bo.getUserId());
-        cGQB.setGradeId(bo.getGradeId());
-        List<ClassPeriodVo> list = listPeriodAudit(cGQB);
-        String moduleName = "";
-        String chapterName = "";
-        String sectionName = "";
-        List<UserPeriodExportVo> studyList = new ArrayList<>();
-        long i = 0;
-        Long gradeId = bo.getGradeId();
-        Long userId = bo.getUserId();
-        Long goodsId = bo.getGoodsId();
-        for (ClassPeriodVo classPeriodVo : list) {
-            //为模块搜索下面的章 和节 并搜索学时记录
-            if (classPeriodVo.getType() == 1) {
-                moduleName = classPeriodVo.getTypeName();
-                List<ClassPeriodChapterVo> classPeriodChapterVos = baseMapper.listperiodChapter(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId, gradeId);
-                for (ClassPeriodChapterVo classPeriodChapterVo : classPeriodChapterVos) {
-                    if (classPeriodChapterVo.getType() == 2) {
-                        chapterName = classPeriodChapterVo.getTypeName();
-                        List<ClassPeriodSectionVo> classPeriodSectionVos = baseMapper.listPeriodSection(classPeriodChapterVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
-                        classPeriodSectionVos.addAll(baseMapper.listperiodExam(classPeriodChapterVo.getId(), goodsId, classPeriodVo.getCourseId(), userId, classPeriodVo.getId()));
-                        for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos) {
-                            i++;
-                            if (classPeriodSectionVo.getType() == 3) {
-                                sectionName = classPeriodSectionVo.getTypeName();
-                                UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
-                                userPeriodQueryBo.setSectionId(classPeriodSectionVo.getId());
-                                userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
-                                userPeriodQueryBo.setGoodsId(goodsId);
-                                userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
-                                userPeriodQueryBo.setChapterId(classPeriodChapterVo.getId());
-                                userPeriodQueryBo.setModuleId(classPeriodVo.getId());
-                                userPeriodQueryBo.setGradeId(gradeId);
-                                List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
-                                if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
-                                    int numIndex = userPeriodStatusVos.size() - 1;
-                                    UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
-                                    classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
-                                    classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
-                                    classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
-                                    classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
-                                    classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
-                                    classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
-                                    classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
-                                    classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
-                                    classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
-                                    classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
-                                    classPeriodSectionVo.setDurationTime(userPeriodStatusVo.getDurationTime());
-                                }
-                                classPeriodSectionVo.setModuleId(classPeriodVo.getId());
-                                classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
-                                classPeriodSectionVo.setGoodsId(goodsId);
-                                classPeriodSectionVo.setGradeId(gradeId);
-                                studyList.add(mergeData(i, moduleName, chapterName, sectionName, classPeriodSectionVo, (new BigDecimal(0)), false));
-                            } else {
-                                //章卷
-                                sectionName = classPeriodSectionVo.getTypeName();
-                                UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
-                                userPeriodQueryBo.setExamId(classPeriodSectionVo.getId());
-                                userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
-                                userPeriodQueryBo.setGoodsId(goodsId);
-                                userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
-                                userPeriodQueryBo.setChapterId(classPeriodChapterVo.getId());
-                                userPeriodQueryBo.setModuleId(classPeriodVo.getId());
-                                userPeriodQueryBo.setGradeId(gradeId);
-                                List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
-                                if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
-                                    int numIndex = userPeriodStatusVos.size() - 1;
-                                    UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
-                                    classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
-                                    classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
-                                    classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
-                                    classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
-                                    classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
-                                    classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
-                                    classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
-                                    classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
-                                    classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
-                                    classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
-                                    classPeriodChapterVo.setPerformance(Convert.toBigDecimal(userPeriodStatusVo.getPerformance()));
-                                }
-                                classPeriodSectionVo.setModuleId(classPeriodVo.getId());
-                                classPeriodSectionVo.setChapterId(classPeriodChapterVo.getId());
-                                classPeriodSectionVo.setGoodsId(goodsId);
-                                classPeriodSectionVo.setGradeId(gradeId);
-                                studyList.add(mergeData(i, moduleName, chapterName, sectionName, classPeriodSectionVo, classPeriodChapterVo.getPerformance(), true));
-                            }
-                        }
-                    }
-                }
-            }
-            //为章搜索节记录和学时记录
-            if (classPeriodVo.getType() == 2) {
-                moduleName = "";
-                chapterName = classPeriodVo.getTypeName();
-                List<ClassPeriodSectionVo> classPeriodSectionVos = baseMapper.listPeriodSection(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
-                for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos) {
-                    i++;
-                    sectionName = classPeriodSectionVo.getTypeName();
-                    UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
-                    userPeriodQueryBo.setSectionId(classPeriodSectionVo.getId());
-                    userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
-                    userPeriodQueryBo.setGoodsId(goodsId);
-                    userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
-                    userPeriodQueryBo.setChapterId(classPeriodVo.getId());
-                    userPeriodQueryBo.setModuleId(0L);
-                    userPeriodQueryBo.setGradeId(gradeId);
-                    List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
-                    if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
-                        int numIndex = userPeriodStatusVos.size() - 1;
-                        UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
-                        classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
-                        classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
-                        classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
-                        classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
-                        classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
-                        classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
-                        classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
-                        classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
-                        classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
-                        classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
-                        classPeriodSectionVo.setDurationTime(userPeriodStatusVo.getDurationTime());
-                    }
-                    classPeriodSectionVo.setModuleId(0L);
-                    classPeriodSectionVo.setChapterId(classPeriodVo.getId());
-                    classPeriodSectionVo.setGoodsId(goodsId);
-                    classPeriodSectionVo.setGradeId(gradeId);
-                    studyList.add(mergeData(i, moduleName, chapterName, sectionName, classPeriodSectionVo, (new BigDecimal(0)), false));
-                }
-                List<ClassPeriodSectionVo> classPeriodSectionVos1 = baseMapper.listPeriodSectionExam(classPeriodVo.getId(), goodsId, classPeriodVo.getCourseId(), userId);
-                for (ClassPeriodSectionVo classPeriodSectionVo : classPeriodSectionVos1) {
-                    //章卷
-                    i++;
-                    sectionName = classPeriodSectionVo.getTypeName();
-                    UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
-                    userPeriodQueryBo.setExamId(classPeriodSectionVo.getId());
-                    userPeriodQueryBo.setCourseId(classPeriodSectionVo.getCourseId());
-                    userPeriodQueryBo.setGoodsId(bo.getGoodsId());
-                    userPeriodQueryBo.setUserId(classPeriodSectionVo.getUserId());
-                    userPeriodQueryBo.setChapterId(classPeriodVo.getId());
-                    userPeriodQueryBo.setModuleId(0L);
-                    userPeriodQueryBo.setGradeId(bo.getGradeId());
-                    List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
-                    if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
-                        int numIndex = userPeriodStatusVos.size() - 1;
-                        UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
-                        classPeriodSectionVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
-                        classPeriodSectionVo.setStatus(userPeriodStatusVo.getStatus());
-                        classPeriodSectionVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
-                        classPeriodSectionVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
-                        classPeriodSectionVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
-                        classPeriodSectionVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
-                        classPeriodSectionVo.setPeriodId(userPeriodStatusVo.getPeriodId());
-                        classPeriodSectionVo.setPeriodStatusId(userPeriodStatusVo.getId());
-                        classPeriodSectionVo.setAuditTime(userPeriodStatusVo.getAuditTime());
-                        classPeriodSectionVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
-                        classPeriodVo.setPerformance(Convert.toBigDecimal(userPeriodStatusVo.getPerformance()));
-                    }
-                    classPeriodSectionVo.setModuleId(0L);
-                    classPeriodSectionVo.setChapterId(classPeriodVo.getId());
-                    classPeriodSectionVo.setGoodsId(goodsId);
-                    classPeriodSectionVo.setGradeId(gradeId);
-                    studyList.add(mergeData(i, moduleName, chapterName, sectionName, classPeriodSectionVo, classPeriodVo.getPerformance(), true));
-                }
-                classPeriodSectionVos.addAll(classPeriodSectionVos1);
-                classPeriodVo.setClassPeriodSectionList(classPeriodSectionVos);
-            }
-            //为节搜索学时记录
-            if (classPeriodVo.getType() == 3) {
-                i++;
-                sectionName = classPeriodVo.getTypeName();
-                UserPeriodQueryBo userPeriodQueryBo = new UserPeriodQueryBo();
-                userPeriodQueryBo.setSectionId(classPeriodVo.getId());
-                userPeriodQueryBo.setCourseId(classPeriodVo.getCourseId());
-                userPeriodQueryBo.setGoodsId(bo.getGoodsId());
-                userPeriodQueryBo.setUserId(classPeriodVo.getUserId());
-                userPeriodQueryBo.setChapterId(0L);
-                userPeriodQueryBo.setModuleId(0L);
-                userPeriodQueryBo.setGradeId(bo.getGradeId());
-                List<UserPeriodStatusVo> userPeriodStatusVos = userPeriodStatusService.selectPeriodStatus(userPeriodQueryBo);
-                if (!CollectionUtils.isEmpty(userPeriodStatusVos)) {
-                    int numIndex = userPeriodStatusVos.size() - 1;
-                    UserPeriodStatusVo userPeriodStatusVo = userPeriodStatusVos.get(numIndex);
-                    classPeriodVo.setNumIndex(Convert.toLong(userPeriodStatusVos.size()));
-                    classPeriodVo.setStatus(userPeriodStatusVo.getStatus());
-                    classPeriodVo.setNumList(Convert.toLong(userPeriodStatusVos.size()));
-                    classPeriodVo.setStudyEndTime(userPeriodStatusVo.getRecordEndTime());
-                    classPeriodVo.setStudyStartTime(userPeriodStatusVo.getRecordStartTime());
-                    classPeriodVo.setPeriodStatus(userPeriodStatusVo.getPeriodStatus());
-                    classPeriodVo.setPeriodId(userPeriodStatusVo.getPeriodId());
-                    classPeriodVo.setPeriodStatusId(userPeriodStatusVo.getId());
-                    classPeriodVo.setAuditTime(userPeriodStatusVo.getAuditTime());
-                    classPeriodVo.setAuditUserName(userPeriodStatusVo.getAuditUserName());
-                    classPeriodVo.setDurationTime(userPeriodStatusVo.getDurationTime());
-                }
-                classPeriodVo.setModuleId(0L);
-                classPeriodVo.setChapterId(0L);
-                classPeriodVo.setGoodsId(bo.getGoodsId());
-                classPeriodVo.setGradeId(bo.getGradeId());
-                ClassPeriodSectionVo classPeriodSectionVo = BeanUtil.toBean(classPeriodVo, ClassPeriodSectionVo.class);
-                studyList.add(mergeData(i, moduleName, chapterName, sectionName, classPeriodSectionVo, (new BigDecimal(0)), false));
-            }
-        }
-        return studyList;
+    public List<ClassPeriodVo> listUserStudyRecordV2(ClassGradeUserQueryBo bo) {
+        //查找最外层课程目录 模块 章 节
+        List<ClassPeriodVo> classPeriodVos = baseMapper.listPeriodAudit(bo);
+        classPeriodVos.addAll(baseMapper.listPeriodAuditSection(bo));
+        Collections.sort(classPeriodVos);
+
+        return classPeriodVos;
     }
 
     @Override

+ 6 - 0
zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsMapper.xml

@@ -225,6 +225,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="educationTypeId != null and educationTypeId != ''">
             AND g.education_type_id = #{educationTypeId}
         </if>
+        <if test="projectId != null and projectId != ''">
+            AND g.project_id = #{projectId}
+        </if>
         <if test="businessIds != null and businessIds.size()!=0 ">
             AND g.business_id in
             <foreach collection="businessIds" item="item" index="index" open="(" close=")" separator=",">
@@ -333,6 +336,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="educationTypeId != null and educationTypeId != ''">
             AND g.education_type_id = #{educationTypeId}
         </if>
+        <if test="projectId != null and projectId != ''">
+            AND g.project_id = #{projectId}
+        </if>
         <if test="businessIds != null and businessIds.size()!=0 ">
             AND g.business_id in
             <foreach collection="businessIds" item="item" index="index" open="(" close=")" separator=",">

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

@@ -640,6 +640,9 @@
         <if test="goodsId != null and goodsId !='' ">
             and gc.goods_id=#{goodsId}
         </if>
+        <if test="courseId != null and courseId !='' ">
+            and gc.course_id=#{courseId}
+        </if>
         AND cm.type=1
         UNION
         SELECT
@@ -665,9 +668,14 @@
         FROM
         course_menu cm
         LEFT JOIN goods_course gc on gc.course_id = cm.course_id
-        where 1=1   <if test="goodsId != null and goodsId !='' ">
+        where 1=1
+        <if test="goodsId != null and goodsId !='' ">
         and gc.goods_id=#{goodsId}
-    </if>  AND cm.type=2
+        </if>
+        <if test="courseId != null and courseId !='' ">
+            and gc.course_id=#{courseId}
+        </if>
+        AND cm.type=2
     </select>
 
     <select id="listPeriodAuditSection" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
@@ -699,6 +707,9 @@
         <if test="goodsId != null and goodsId !='' ">
             and gc.goods_id = #{goodsId}
         </if>
+        <if test="courseId != null and courseId !='' ">
+            and gc.course_id=#{courseId}
+        </if>
         AND cm.type=3
     </select>