From 3aae8ddd5b9624626921abdcc33122dccdcd5c61 Mon Sep 17 00:00:00 2001 From: “djh” <“3298565835@qq.com”> Date: 星期五, 27 十二月 2024 13:24:46 +0800 Subject: [PATCH] 修改学时证书接收接口 --- exam-system/src/main/java/com/gkhy/exam/coalmine/service/impl/EduResourcesManagerServiceImpl.java | 63 ++++++++++++++++++++++++------- 1 files changed, 49 insertions(+), 14 deletions(-) diff --git a/exam-system/src/main/java/com/gkhy/exam/coalmine/service/impl/EduResourcesManagerServiceImpl.java b/exam-system/src/main/java/com/gkhy/exam/coalmine/service/impl/EduResourcesManagerServiceImpl.java index 5eb58e2..42eb86f 100644 --- a/exam-system/src/main/java/com/gkhy/exam/coalmine/service/impl/EduResourcesManagerServiceImpl.java +++ b/exam-system/src/main/java/com/gkhy/exam/coalmine/service/impl/EduResourcesManagerServiceImpl.java @@ -1,5 +1,7 @@ package com.gkhy.exam.coalmine.service.impl; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.TypeReference; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.gkhy.exam.coalmine.entity.ExaminerManage; import com.gkhy.exam.coalmine.entity.ExaminerManageOperateTypeBind; @@ -37,6 +39,8 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; + +import static com.ruoyi.common.utils.PageUtils.startPage; /** * @author Mr.huang @@ -143,7 +147,7 @@ ExaminerManage examinerByCode = examinerManageService.getExaminerByCode(reqDTO.getCode()); if (examinerByCode != null && examinerByCode.getId() != reqDTO.getId()) throw new BusinessException(this.getClass(),ResultConstants.SYSTEM_ERROR_DATABASE_FAIL,"身份证已存在"); - ExaminerManage examinerManage = new ExaminerManage(); + ExaminerManage examinerManage = examinerManageService.getExaminerById(reqDTO.getId()); BeanUtils.copyProperties(reqDTO,examinerManage,"id"); boolean save = examinerManageService.updateById(examinerManage); if (!save) @@ -194,16 +198,14 @@ if (CollectionUtils.isEmpty(list)) return dto; Boolean flag = redisCache.hasKey(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY); - Map<Long, SysOperateTypeWholeNameBO> map; if (flag){ operateTypeService.resetOperateTypeCache(); } - map = redisCache.getCacheObject(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY); List<GetExaminerOperateTypesRespDTO> getExaminerOperateTypesRespDTOS = new ArrayList<>(); for (ExaminerManageOperateTypeBind examinerManageOperateTypeBind : list) { GetExaminerOperateTypesRespDTO operateTypesRespDTO = new GetExaminerOperateTypesRespDTO(); BeanUtils.copyProperties(examinerManageOperateTypeBind,operateTypesRespDTO); - SysOperateTypeWholeNameBO sysOperateTypeWholeNameBO = map.get(examinerManageOperateTypeBind.getOperateTypeId()); + SysOperateTypeWholeNameBO sysOperateTypeWholeNameBO = operateTypeService.getOperateTypeWholeNameById(examinerManageOperateTypeBind.getOperateTypeId()); if (sysOperateTypeWholeNameBO != null){ BeanUtils.copyProperties(sysOperateTypeWholeNameBO,operateTypesRespDTO); } @@ -215,12 +217,13 @@ @Override - public List<GetExaminerRespDTO> selectAll() { + public List<GetExaminerRespDTO> selectAll(Integer isCm) { LambdaQueryWrapper<ExaminerManage> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(ExaminerManage::getDelFlag,DeleteStatusEnum.NO.getStatus()); + wrapper.eq(ExaminerManage::getDelFlag,DeleteStatusEnum.NO.getStatus()) + .eq(ExaminerManage::getIsCm,isCm); List<ExaminerManage> list = examinerManageService.list(wrapper); if (CollectionUtils.isEmpty(list)) - return null; + return new ArrayList<>(); List<GetExaminerRespDTO> dtos = new ArrayList<>(); for (ExaminerManage manage : list) { GetExaminerRespDTO dto = getExaminerRespDTO(manage); @@ -264,7 +267,7 @@ TeacherManage teacherByCode = teacherManageService.getTeacherByCode(reqDTO.getCode()); if (teacherByCode != null && teacherByCode.getId() != reqDTO.getId()) throw new BusinessException(this.getClass(),ResultConstants.SYSTEM_ERROR_DATABASE_FAIL,"身份证已存在"); - TeacherManage teacherManage = new TeacherManage(); + TeacherManage teacherManage = teacherManageService.getTeacherById(reqDTO.getId()); BeanUtils.copyProperties(reqDTO,teacherManage,"id"); boolean save = teacherManageService.updateById(teacherManage); if (!save) @@ -320,16 +323,14 @@ if (CollectionUtils.isEmpty(list)) return dto; Boolean flag = redisCache.hasKey(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY); - Map<Long, SysOperateTypeWholeNameBO> map; if (flag){ operateTypeService.resetOperateTypeCache(); } - map = redisCache.getCacheObject(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY); List<GetTeacherOperateTypesRespDTO> getTeacherOperateTypesRespDTOS = new ArrayList<>(); for (TeacherManageOperateTypeBind examinerManageOperateTypeBind : list) { GetTeacherOperateTypesRespDTO operateTypesRespDTO = new GetTeacherOperateTypesRespDTO(); BeanUtils.copyProperties(examinerManageOperateTypeBind,operateTypesRespDTO); - SysOperateTypeWholeNameBO sysOperateTypeWholeNameBO = map.get(examinerManageOperateTypeBind.getOperateTypeId()); + SysOperateTypeWholeNameBO sysOperateTypeWholeNameBO = operateTypeService.getOperateTypeWholeNameById(examinerManageOperateTypeBind.getOperateTypeId()); if (sysOperateTypeWholeNameBO != null){ BeanUtils.copyProperties(sysOperateTypeWholeNameBO,operateTypesRespDTO); } @@ -340,19 +341,53 @@ } @Override - public List<GetTeacherRespDTO> selectTeacherAll() { + public List<GetTeacherRespDTO> selectTeacherAll(Integer isCm) { + startPage(); LambdaQueryWrapper<TeacherManage> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(TeacherManage::getDelFlag,DeleteStatusEnum.NO.getStatus()); + wrapper.eq(TeacherManage::getDelFlag,DeleteStatusEnum.NO.getStatus()) + .eq(TeacherManage::getIsCm,isCm); List<TeacherManage> list = teacherManageService.list(wrapper); if (CollectionUtils.isEmpty(list)) - return null; + return new ArrayList<>(); List<GetTeacherRespDTO> dtos = new ArrayList<>(); for (TeacherManage manage : list) { GetTeacherRespDTO dto = getTeacherRespDTO(manage); dtos.add(dto); } return dtos; + } + @Override + public List<GetTeacherRespDTO> selectTeacherByCondition(int isCm, Long operateTypeId) { + if (operateTypeId == null || operateTypeId == 0) + return selectTeacherAll(isCm); + LambdaQueryWrapper<TeacherManageOperateTypeBind> wrapper = new LambdaQueryWrapper<>(); + List<TeacherManageOperateTypeBind> teacherManageOperateTypeBinds = + teacherManageOperateTypeBindService.list(wrapper.eq(TeacherManageOperateTypeBind::getOperateTypeId, operateTypeId) + .eq(TeacherManageOperateTypeBind::getDelFlag,DeleteStatusEnum.NO.getStatus())); + if (CollectionUtils.isEmpty(teacherManageOperateTypeBinds)){ + return new ArrayList<>(); + } + List<Long> teacherManageIds = teacherManageOperateTypeBinds.stream() + .map(TeacherManageOperateTypeBind::getTeacherManageId) + .distinct() + .collect(Collectors.toList()); + if (CollectionUtils.isEmpty(teacherManageIds)) + return new ArrayList<>(); + startPage(); + LambdaQueryWrapper<TeacherManage> teacherManageWrapper = new LambdaQueryWrapper<>(); + teacherManageWrapper.eq(TeacherManage::getDelFlag,DeleteStatusEnum.NO.getStatus()) + .eq(TeacherManage::getIsCm,isCm) + .in(TeacherManage::getId,teacherManageIds); + List<TeacherManage> list = teacherManageService.list(teacherManageWrapper); + if (CollectionUtils.isEmpty(list)) + return new ArrayList<>(); + List<GetTeacherRespDTO> dtos = new ArrayList<>(); + for (TeacherManage manage : list) { + GetTeacherRespDTO dto = getTeacherRespDTO(manage); + dtos.add(dto); + } + return dtos; } @Override -- Gitblit v1.9.2