diff --git a/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/ResponsibilityController.java b/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/ResponsibilityController.java index 9b9a754b5..6c9889060 100644 --- a/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/ResponsibilityController.java +++ b/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/ResponsibilityController.java @@ -41,7 +41,7 @@ public class ResponsibilityController extends BaseController { @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/responsibilityList") - @ApiOperation("列表分页") + @ApiOperation("查询责任划分列表分页") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) public HttpResult> responsibilityList(@RequestBody @Validated BaseParam queryParam) { String methodDescribe = getMethodDescribe("responsibilityList"); diff --git a/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/UserDataController.java b/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/UserDataController.java index 60ac897af..886e29cb3 100644 --- a/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/UserDataController.java +++ b/pqs-advance/advance-boot/src/main/java/com/njcn/advance/controller/responsibility/UserDataController.java @@ -47,7 +47,7 @@ public class UserDataController extends BaseController { @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/userDataList") - @ApiOperation("列表分页") + @ApiOperation("查询用户列表分页") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) public HttpResult> userDataList(@RequestBody @Validated BaseParam queryParam) { String methodDescribe = getMethodDescribe("userDataList"); diff --git a/pqs-common/common-core/src/main/java/com/njcn/common/pojo/dto/LogInfoDTO.java b/pqs-common/common-core/src/main/java/com/njcn/common/pojo/dto/LogInfoDTO.java index 78cba3f62..bdbaa5054 100644 --- a/pqs-common/common-core/src/main/java/com/njcn/common/pojo/dto/LogInfoDTO.java +++ b/pqs-common/common-core/src/main/java/com/njcn/common/pojo/dto/LogInfoDTO.java @@ -75,4 +75,6 @@ public class LogInfoDTO implements Serializable { @JsonSerialize(using = LocalDateTimeSerializer.class) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; + + } diff --git a/pqs-common/common-core/src/main/java/com/njcn/common/utils/FileUtil.java b/pqs-common/common-core/src/main/java/com/njcn/common/utils/FileUtil.java index 9e5df71ed..45afcd63c 100644 --- a/pqs-common/common-core/src/main/java/com/njcn/common/utils/FileUtil.java +++ b/pqs-common/common-core/src/main/java/com/njcn/common/utils/FileUtil.java @@ -129,6 +129,31 @@ public class FileUtil { return false; } + /** + * 判断文件是否为excel格式 + * + * @param fileName 文件名 + */ + public static boolean judgeFileIsZip(String fileName) { + // 检查文件名是否为空 + if (StrUtil.isBlank(fileName)) { + return false; + } + // 获取文件扩展名 + String fileExtension = getFileExtension(fileName); + // 定义支持的文件类型 + String[] allowedExtensions = {"zip", "rar"}; + + // 检查扩展名是否在允许的列表中 + for (String ext : allowedExtensions) { + if (ext.equalsIgnoreCase(fileExtension)) { + return true; + } + } + return false; + } + + /** * 从文件名中提取扩展名 * diff --git a/pqs-common/common-redis/src/main/java/com/njcn/redis/pojo/enums/RedisKeyEnum.java b/pqs-common/common-redis/src/main/java/com/njcn/redis/pojo/enums/RedisKeyEnum.java index 026a28c56..89b915b7d 100644 --- a/pqs-common/common-redis/src/main/java/com/njcn/redis/pojo/enums/RedisKeyEnum.java +++ b/pqs-common/common-redis/src/main/java/com/njcn/redis/pojo/enums/RedisKeyEnum.java @@ -34,7 +34,13 @@ public enum RedisKeyEnum { /*** * MQ消息key缓存时间,默认72小时 * 60 * 60 */ - ROCKET_MQ_KEY("ROCKET_MQ", 259200L); + ROCKET_MQ_KEY("ROCKET_MQ", 259200L), + + + /*** + * 存放用户的角色关系 + */ + USER_ROLE_TYPE_KEY("USER_ROLE_TYPE_KEY", -1L); private final String key; diff --git a/pqs-common/common-web/src/main/java/com/njcn/web/service/impl/LogServiceImpl.java b/pqs-common/common-web/src/main/java/com/njcn/web/service/impl/LogServiceImpl.java index 1c3b2339a..8ef2944aa 100644 --- a/pqs-common/common-web/src/main/java/com/njcn/web/service/impl/LogServiceImpl.java +++ b/pqs-common/common-web/src/main/java/com/njcn/web/service/impl/LogServiceImpl.java @@ -49,6 +49,7 @@ public class LogServiceImpl implements ILogService { private final MqttPublisher publisher; + /** * 异步记录controller中返回的信息内容 * diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/controller/SupvFileController.java b/pqs-process/process-boot/src/main/java/com/njcn/process/controller/SupvFileController.java index 3b80d1aa7..a068230c1 100644 --- a/pqs-process/process-boot/src/main/java/com/njcn/process/controller/SupvFileController.java +++ b/pqs-process/process-boot/src/main/java/com/njcn/process/controller/SupvFileController.java @@ -20,6 +20,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import liquibase.pro.packaged.S; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -60,7 +61,7 @@ public class SupvFileController extends BaseController { ) { String methodDescribe = getMethodDescribe("planUpload"); String originalFilename = file.getOriginalFilename(); - if (FileUtil.judgeFileIsWord(originalFilename) || FileUtil.judgeFileIsPdf(originalFilename) || FileUtil.judgeFileIsExcel(originalFilename)) { + if (FileUtil.judgeFileIsWord(originalFilename) || FileUtil.judgeFileIsPdf(originalFilename) || FileUtil.judgeFileIsExcel(originalFilename)||FileUtil.judgeFileIsZip(originalFilename)) { if (!StrUtil.isAllNotBlank(planId, uploaderId, uploaderName, attachmentType, uploadTime) || type == null) { throw new BusinessException("必填字段不能为空"); } @@ -89,5 +90,16 @@ public class SupvFileController extends BaseController { iSupvFileService.detail(response, busId, type, attachmentType); return null; } + + + @PostMapping("delFile") + @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.DELETE) + @ApiOperation("监督计划问题附件下载") + public HttpResult delFile(@RequestBody List ids) { + String methodDescribe = getMethodDescribe("delFile"); + iSupvFileService.delFile(ids); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); + + } } diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/service/ISupvFileService.java b/pqs-process/process-boot/src/main/java/com/njcn/process/service/ISupvFileService.java index 6857fb18f..91549122a 100644 --- a/pqs-process/process-boot/src/main/java/com/njcn/process/service/ISupvFileService.java +++ b/pqs-process/process-boot/src/main/java/com/njcn/process/service/ISupvFileService.java @@ -4,6 +4,7 @@ package com.njcn.process.service; import com.baomidou.mybatisplus.extension.service.IService; import com.njcn.process.pojo.param.SupvFileParam; import com.njcn.process.pojo.po.SupvFile; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; @@ -36,4 +37,7 @@ public interface ISupvFileService extends IService { String detail(HttpServletResponse response,String busId,Integer type,String attachmentType); + + Boolean delFile(List ids); + } diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvFileServiceImpl.java b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvFileServiceImpl.java index a9cd92d2c..c6fab0f7e 100644 --- a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvFileServiceImpl.java +++ b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvFileServiceImpl.java @@ -106,6 +106,16 @@ public class SupvFileServiceImpl extends ServiceImpl i } } + @Override + public Boolean delFile(List ids) { + List supvFiles = this.listByIds(ids); + for(SupvFile supvFile : supvFiles){ + fileStorageUtil.deleteFile(supvFile.getFileUrl()); + } + this.removeByIds(ids); + return true; + } + /** * @Description: * @param type 区分问题计划 diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/UserLog.java b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/UserLog.java index 6e1395e96..b94a641ef 100644 --- a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/UserLog.java +++ b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/UserLog.java @@ -84,6 +84,7 @@ public class UserLog { @ExcelProperty(value = "事件类型") private Integer type; + /** * 模块名 */ diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AreaController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AreaController.java index eae18b8f6..c46ae2e87 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AreaController.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AreaController.java @@ -46,7 +46,7 @@ public class AreaController extends BaseController { /** * 分页查询行政区域 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/list") @ApiOperation("查询企业区域") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) @@ -63,7 +63,7 @@ public class AreaController extends BaseController { * @param id 行政区域id * @return 行政区域详情 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/selectIdArea/{id}") @ApiOperation("根据行政区域id查询详情") @ApiImplicitParam(name = "id", value = "查询参数", required = true) @@ -161,7 +161,7 @@ public class AreaController extends BaseController { * @param ids 行政区域ids * @return 行政区域查看所有子节点 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/selectPid") @ApiOperation("根据行政区域id查询") @ApiImplicitParam(name = "ids", value = "查询参数", required = true) @@ -247,7 +247,7 @@ public class AreaController extends BaseController { * @param name 行政区域名称 * @return 行政区域详情 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/selectAreaByName/{name}") @ApiOperation("根据行政区域名称查询详细") @ApiImplicitParam(name = "name", value = "查询参数", required = true) diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AuditController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AuditController.java index 36545fc2d..2c62d3cd9 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AuditController.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/AuditController.java @@ -43,7 +43,7 @@ public class AuditController extends BaseController { private final AuditService auditService; - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/getAuditLog") @ApiOperation("审计日志列表") @ApiImplicitParam(name = "auditParam", value = "审计日志参数", required = true) @@ -54,7 +54,7 @@ public class AuditController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,result,methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/logFileWriter") @ApiOperation("日志文件备份") public HttpResult logFileWriter(){ @@ -63,7 +63,7 @@ public class AuditController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,null,methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/recoverLogFile") @ApiOperation("日志文件恢复") public HttpResult recoverLogFile() { @@ -72,7 +72,7 @@ public class AuditController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,null,methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/censusAuditLog") @ApiOperation("审计日志统计") @ApiImplicitParam(name = "auditParam", value = "审计日志参数", required = true) diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ConfigController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ConfigController.java index 137e4d166..ac79e625d 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ConfigController.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/ConfigController.java @@ -65,7 +65,7 @@ public class ConfigController extends BaseController { } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getSysConfigData") @ApiOperation("获取系统配置列表") public HttpResult> getSysConfigData() { @@ -80,7 +80,7 @@ public class ConfigController extends BaseController { } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getSysConfigById") @ApiOperation("根据配置Id获取系统配置") @ApiImplicitParam(name = "id", value = "参数id", required = true) @@ -96,7 +96,7 @@ public class ConfigController extends BaseController { } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/updateSysConfigById") @ApiOperation("根据配置Id更改(激活)系统状态") @ApiImplicitParam(name = "id", value = "参数id", required = true) @@ -116,7 +116,7 @@ public class ConfigController extends BaseController { } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/removeSysConfigById") @ApiOperation("根据配置Id删除系统配置") @ApiImplicitParam(name = "id", value = "参数id", required = true) @@ -155,7 +155,7 @@ public class ConfigController extends BaseController { } - @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE) + @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.UPDATE) @PostMapping("/updateSysConfig") @ApiOperation("修改系统配置") @ApiImplicitParam(name = "configUpdateParam", value = "更新配置实体", required = true) diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/DictDataController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/DictDataController.java index 9af23068d..095b3fe6a 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/DictDataController.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/DictDataController.java @@ -133,7 +133,7 @@ public class DictDataController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataById") @ApiOperation("根据字典id查询字典数据") @ApiImplicitParam(name = "dicIndex", value = "查询参数", required = true) @@ -143,7 +143,7 @@ public class DictDataController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByTypeName") @ApiOperation("根据字典类型名称查询字典数据") @ApiImplicitParam(name = "dictTypeName", value = "查询参数", required = true) @@ -153,7 +153,7 @@ public class DictDataController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByName") @ApiOperation("根据字典名称查询字典数据") @ApiImplicitParam(name = "dicName", value = "查询参数", required = true) @@ -163,7 +163,7 @@ public class DictDataController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByNameAndType") @ApiOperation("根据字典名称查询字典数据") @ApiImplicitParams({ @@ -176,7 +176,7 @@ public class DictDataController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByCodeAndType") @ApiOperation("根据字典Code和字典类型查询字典数据") @ApiImplicitParams({ @@ -188,7 +188,7 @@ public class DictDataController extends BaseController { DictData result = dictDataService.getDicDataByCodeAndType(dicCode,typeCode); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByCode") @ApiOperation("根据字典code查询字典数据") @ApiImplicitParam(name = "code", value = "查询参数", required = true) @@ -201,7 +201,7 @@ public class DictDataController extends BaseController { /** * 根据系统类型获取不同指标参数 */ - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getLoadTypeBySys") @ApiOperation("根据系统类型获取不同指标参数") @ApiIgnore @@ -220,7 +220,7 @@ public class DictDataController extends BaseController { * @return 新增后的字典数据 */ @ApiIgnore - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/addDicData") @ApiOperation("后台新增字典数据") public HttpResult addDicData(String dicTypeName, String dicDataName) { @@ -236,7 +236,7 @@ public class DictDataController extends BaseController { * @return 字典数据 */ @ApiIgnore - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByNameAndTypeName") @ApiOperation("根据字典类型名称&数据名称获取字典数据") public HttpResult getDicDataByNameAndTypeName(String dicTypeName, String dicDataName) { @@ -245,7 +245,7 @@ public class DictDataController extends BaseController { } @ApiIgnore - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDicDataByTypeCode") @ApiOperation("根据字典类型code查询字典数据") @ApiImplicitParam(name = "dictTypeCode", value = "查询参数", required = true) diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EleEpdPqdController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EleEpdPqdController.java index 996b9a0b8..b9f770008 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EleEpdPqdController.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EleEpdPqdController.java @@ -97,7 +97,7 @@ public class EleEpdPqdController extends BaseController { @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/list") - @ApiOperation("列表分页") + @ApiOperation("查询模板列表分页") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) public HttpResult> getList(@RequestBody @Validated EleEpdPqdParam.EleEpdPqdQueryParam queryParam) { String methodDescribe = getMethodDescribe("getList"); diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/handler/MqttMessageHandler.java b/pqs-system/system-boot/src/main/java/com/njcn/system/handler/MqttMessageHandler.java index 175061bb4..8d7b2c153 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/handler/MqttMessageHandler.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/handler/MqttMessageHandler.java @@ -3,23 +3,30 @@ package com.njcn.system.handler; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONObject; import com.github.tocrhz.mqtt.annotation.MqttSubscribe; import com.github.tocrhz.mqtt.annotation.Payload; import com.njcn.common.pojo.constant.PatternRegex; import com.njcn.common.pojo.dto.LogInfoDTO; import com.njcn.common.utils.PubUtils; +import com.njcn.redis.pojo.enums.RedisKeyEnum; +import com.njcn.redis.utils.RedisUtil; import com.njcn.system.service.IUserLogService; import com.njcn.user.api.UserFeignClient; import com.njcn.user.pojo.po.User; import com.njcn.web.utils.EmailUtil; +import io.swagger.models.auth.In; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.eclipse.paho.client.mqttv3.MqttMessage; +import org.springframework.data.redis.core.BoundHashOperations; import org.springframework.stereotype.Component; import java.nio.charset.StandardCharsets; import java.time.format.DateTimeFormatter; import java.util.List; +import java.util.Map; +import java.util.Objects; import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -37,12 +44,33 @@ public class MqttMessageHandler { private final UserFeignClient userFeignClient; private final EmailUtil emailUtil; + private final RedisUtil redisUtil; + + + + private JSONObject jsonObject = null; /** * 订阅审计日志的记录,并进行入库操作 */ @MqttSubscribe(value = "/userLog") public void subUserLog(String topic, MqttMessage message, @Payload String payload) { + if(Objects.isNull(jsonObject)){ + jsonObject = (JSONObject) redisUtil.getObjectByKey(RedisKeyEnum.USER_ROLE_TYPE_KEY.getKey()); + if(Objects.isNull(jsonObject)){ + userFeignClient.userRoleList(); + } + } LogInfoDTO logInfoDTO = PubUtils.json2obj(new String(message.getPayload(), StandardCharsets.UTF_8),LogInfoDTO.class); + String loginName = logInfoDTO.getLoginName(); + if(StrUtil.isNotBlank(loginName) && jsonObject.containsKey(loginName)){ + if((Integer) jsonObject.get(loginName)==2){ + logInfoDTO.setType(0); + }else { + logInfoDTO.setType(1); + }; + }else { + logInfoDTO.setType(1); + } userLogService.addUserLog(logInfoDTO); } diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/AuditServiceImpl.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/AuditServiceImpl.java index fd1efc2df..15adcad54 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/AuditServiceImpl.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/AuditServiceImpl.java @@ -111,7 +111,8 @@ public class AuditServiceImpl extends ServiceImpl implem QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper .between("sys_user_log.create_time", DateUtil.beginOfDay(DateUtil.parse(auditParam.getSearchBeginTime())), - DateUtil.endOfDay(DateUtil.parse(auditParam.getSearchEndTime()))); + DateUtil.endOfDay(DateUtil.parse(auditParam.getSearchEndTime()))) + .ne("sys_user_log.login_name", UNKNOWN_USER); if (StrUtil.isNotBlank(auditParam.getLoginName())) { queryWrapper.eq("sys_user_log.login_name", auditParam.getLoginName()); } @@ -187,23 +188,28 @@ public class AuditServiceImpl extends ServiceImpl implem userIndex = RequestUtil.getUserIndex(request); String result = CommonResponseEnum.SUCCESS.getMessage(); String ip = RequestUtil.getRealIp(request); - String type = LogEnum.BUSINESS_COMMON.getOperateType(); - String level = LogEnum.BUSINESS_COMMON.getOperateLevel(); + String type = LogEnum.SYSTEM_COMMON.getOperateType(); + String level = LogEnum.SYSTEM_COMMON.getOperateLevel(); String operateType = OperateType.QUERY; Integer severity = levelStringToNumber(level); - if(auditParam.isExport()){ + if (auditParam.isExport()) { methodDescribe = "审计日志列表导出"; - }else{ + LogInfoDTO logInfoDTO = new LogInfoDTO(loginName, userName, ip, methodDescribe, operateType, result.equalsIgnoreCase("失败") ? 0 : 1, "", severity, type.equalsIgnoreCase("业务事件") ? 0 : 1, generalInfo.getMicroServiceName(), userIndex, LocalDateTime.now()); + publisher.send("/userLog", PubUtils.obj2json(logInfoDTO), 2, false); + }else { if (StrUtil.isNotBlank(auditParam.getSortBy()) && StrUtil.isNotBlank(auditParam.getOrderBy())) { methodDescribe = methodDescribe.concat("并以") .concat(auditParam.getSortName()) .concat("进行") - .concat(auditParam.getOrderBy().equalsIgnoreCase("desc")?"降序":"升序") + .concat(auditParam.getOrderBy().equalsIgnoreCase("desc") ? "降序" : "升序") .concat("查询"); + LogInfoDTO logInfoDTO = new LogInfoDTO(loginName, userName, ip, methodDescribe, operateType, result.equalsIgnoreCase("失败") ? 0 : 1, "", severity, type.equalsIgnoreCase("业务事件") ? 0 : 1, generalInfo.getMicroServiceName(), userIndex, LocalDateTime.now()); + publisher.send("/userLog", PubUtils.obj2json(logInfoDTO), 2, false); + } } - LogInfoDTO logInfoDTO = new LogInfoDTO(loginName, userName, ip, methodDescribe, operateType, result.equalsIgnoreCase("失败") ? 0 : 1, "", severity, type.equalsIgnoreCase("业务事件") ? 0 : 1, generalInfo.getMicroServiceName(), userIndex, LocalDateTime.now()); - publisher.send("/userLog", PubUtils.obj2json(logInfoDTO), 2, false); + + } @Override @@ -392,9 +398,9 @@ public class AuditServiceImpl extends ServiceImpl implem public void clearHistoryLog() { Config config = iConfigService.getOne(new LambdaQueryWrapper().eq(Config::getState, DataStateEnum.ENABLE.getCode())); Integer logTime; - if(ObjectUtil.isNotNull(config)){ + if (ObjectUtil.isNotNull(config)) { logTime = config.getLogTime(); - }else{ + } else { logTime = clearHistoryLog; } LocalDateTime nowDate = LocalDateTime.now(); diff --git a/pqs-user/user-api/src/main/java/com/njcn/user/api/UserFeignClient.java b/pqs-user/user-api/src/main/java/com/njcn/user/api/UserFeignClient.java index 692dc0882..a379a770d 100644 --- a/pqs-user/user-api/src/main/java/com/njcn/user/api/UserFeignClient.java +++ b/pqs-user/user-api/src/main/java/com/njcn/user/api/UserFeignClient.java @@ -131,4 +131,7 @@ public interface UserFeignClient { @GetMapping("/getColleaguesIdByUserId") HttpResult> getColleaguesIdByUserId(@RequestParam("id") String id); + + @GetMapping("/userRoleList") + HttpResult userRoleList(); } diff --git a/pqs-user/user-api/src/main/java/com/njcn/user/api/fallback/UserFeignClientFallbackFactory.java b/pqs-user/user-api/src/main/java/com/njcn/user/api/fallback/UserFeignClientFallbackFactory.java index 45f493dfb..7419d942f 100644 --- a/pqs-user/user-api/src/main/java/com/njcn/user/api/fallback/UserFeignClientFallbackFactory.java +++ b/pqs-user/user-api/src/main/java/com/njcn/user/api/fallback/UserFeignClientFallbackFactory.java @@ -123,6 +123,12 @@ public class UserFeignClientFallbackFactory implements FallbackFactory userRoleList() { + log.error("{}异常,降级处理,异常为:{}","获取所有用户角色",cause.toString()); + throw new BusinessException(finalExceptionEnum); + } + }; } } diff --git a/pqs-user/user-api/src/main/java/com/njcn/user/pojo/dto/UserRoleLogsDTO.java b/pqs-user/user-api/src/main/java/com/njcn/user/pojo/dto/UserRoleLogsDTO.java new file mode 100644 index 000000000..7a958b232 --- /dev/null +++ b/pqs-user/user-api/src/main/java/com/njcn/user/pojo/dto/UserRoleLogsDTO.java @@ -0,0 +1,16 @@ +package com.njcn.user.pojo.dto; + +import lombok.Data; + +/** + * pqs + * + * @author cdf + * @date 2024/8/29 + */ +@Data +public class UserRoleLogsDTO { + private String loginName; + + private Integer roleType; +} diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/AuthClientController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/AuthClientController.java index 843103cba..7f37fd5a1 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/AuthClientController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/AuthClientController.java @@ -2,6 +2,7 @@ package com.njcn.user.controller; import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; @@ -41,7 +42,7 @@ public class AuthClientController extends BaseController { private final IAuthClientService authClientService; - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getAuthClientByName/{clientName}") @ApiOperation("根据客户端名查询信息") @ApiImplicitParam(name = "clientName", value = "客户端名称", required = true) diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/ComponentController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/ComponentController.java index 3fd1a1aab..e34f39756 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/ComponentController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/ComponentController.java @@ -98,7 +98,7 @@ public class ComponentController extends BaseController { } } - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/componentTree") @ApiOperation("组件树") public HttpResult> getComponentTree(){ @@ -107,7 +107,7 @@ public class ComponentController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,list,methodDescribe); } - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/userComponentTree") @ApiOperation("用户组件树") public HttpResult> getUserComponentTree(){ @@ -116,7 +116,7 @@ public class ComponentController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,list,methodDescribe); } - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getFatherComponent") @ApiOperation("获取父组件节点") public HttpResult> getFatherComponent(@RequestParam @Validated String systemType){ diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/DeptController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/DeptController.java index 0a29d0d52..4c6b2c708 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/DeptController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/DeptController.java @@ -58,7 +58,7 @@ public class DeptController extends BaseController { /** * 分页查询部门信息 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/list") @ApiOperation("查询部门信息") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) @@ -233,7 +233,7 @@ public class DeptController extends BaseController { * 根据条件获取后代部门索引 * */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/getDeptDescendantIndexes") @ApiOperation("获取后代部门索引") @ApiImplicitParams({ @@ -257,7 +257,7 @@ public class DeptController extends BaseController { * @author xy * @date 2022/2/14 15:04 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getDeptIdByArea") @ApiOperation("根据区域索引获取部门索引") @ApiIgnore @@ -281,7 +281,7 @@ public class DeptController extends BaseController { * @author denghuajun * @date 2022/2/24 15:04 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getAreaIdByDeptId") @ApiOperation("根据区域索引获取部门索引") @ApiImplicitParam(name = "deptId", value = "部门id", required = true) @@ -379,7 +379,7 @@ public class DeptController extends BaseController { @GetMapping("/getDepSonSelfCodetByDeptId") @ApiOperation("根据部门id获取所有子部门以及自身的code") public HttpResult> getDepSonSelfCodetByDeptId(@RequestParam("deptId")String deptId) { - String methodDescribe = getMethodDescribe("getDepSonSelfIdtByDeptId"); + String methodDescribe = getMethodDescribe("getDepSonSelfCodetByDeptId"); List deptList = deptService.getDepSonSelfCodetByDeptId(deptId); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, deptList, methodDescribe); } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/PassWordRuleController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/PassWordRuleController.java index b712e3c68..c9132f413 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/PassWordRuleController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/PassWordRuleController.java @@ -34,7 +34,7 @@ import org.springframework.web.bind.annotation.RestController; @AllArgsConstructor public class PassWordRuleController extends BaseController { private final PassWordRuleService passWordRuleService; - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @ApiOperation("密码规则修改") @RequestMapping(value = "/ruleUpdate", method = RequestMethod.POST) public HttpResult ruleUpdate(@RequestBody @Validated PassWordRuleParam passWordRuleParam) { @@ -44,7 +44,7 @@ public class PassWordRuleController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, flag, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @ApiOperation("获取密码规则") @RequestMapping(value = "/getRule", method = RequestMethod.POST) public HttpResult getRule() { @@ -54,7 +54,7 @@ public class PassWordRuleController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, passWordRuleParam, methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @ApiOperation("获取用户策略") @RequestMapping(value = "/getUserStrategy", method = RequestMethod.POST) public HttpResult getUserStrategy() { diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleController.java index 4ef3f4a2b..459996cbb 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleController.java @@ -50,7 +50,7 @@ public class RoleController extends BaseController { /** * 分页查询角色信息 */ - @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/list") @ApiOperation("查询角色信息") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserController.java index afbd544e5..9452c9f74 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserController.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.njcn.common.pojo.annotation.OperateInfo; import com.njcn.common.pojo.constant.LogInfo; @@ -73,7 +74,7 @@ public class UserController extends BaseController { private final RedisUtil redisUtil; - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getUserByName/{loginName}") @ApiOperation("根据登录名查询用户信息") @ApiImplicitParam(name = "loginName", value = "登录名", required = true) @@ -90,7 +91,7 @@ public class UserController extends BaseController { } - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @ApiIgnore @GetMapping("/getUserByPhone/{phone}") @ApiOperation("根据手机号查询用户信息") @@ -107,7 +108,7 @@ public class UserController extends BaseController { } } - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/judgeUserStatus/{loginName}") @ApiOperation("认证后根据用户名判断用户状态") @ApiImplicitParam(name = "loginName", value = "登录名", required = true) @@ -133,6 +134,10 @@ public class UserController extends BaseController { String methodDescribe = getMethodDescribe("add"); LogUtil.njcnDebug(log, "{},用户数据为:{}", methodDescribe, addUserParam); boolean result = userService.addUser(addUserParam); + + //更新redis数据 + userService.userRoleList(); + if (result) { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); } else { @@ -153,6 +158,8 @@ public class UserController extends BaseController { String methodDescribe = getMethodDescribe("delete"); LogUtil.njcnDebug(log, "{},用户id为:{}", methodDescribe, id); boolean result = userService.deleteUser(id); + //更新redis数据 + userService.userRoleList(); if (result) { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); } else { @@ -173,6 +180,8 @@ public class UserController extends BaseController { String methodDescribe = getMethodDescribe("update"); LogUtil.njcnDebug(log, "{},用户数据为:{}", methodDescribe, updateUserParam); boolean result = userService.updateUser(updateUserParam); + //更新redis数据 + userService.userRoleList(); if (result) { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); } else { @@ -195,7 +204,7 @@ public class UserController extends BaseController { } } - @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPLOAD) + @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.UPLOAD) @PostMapping("/uploadImage") @ApiOperation("上传头像") public HttpResult uploadImage(MultipartFile issuesFile) { @@ -204,7 +213,7 @@ public class UserController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, new MinIoUploadResDTO(issuesFile.getOriginalFilename(), filePath), methodDescribe); } - @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPLOAD) + @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.UPLOAD) @PostMapping("/getUrl") @ApiOperation("获取头像url") public HttpResult getUrl(@RequestParam("headSculpture") String headSculpture) { @@ -216,7 +225,7 @@ public class UserController extends BaseController { @OperateInfo(info = LogEnum.SYSTEM_COMMON) @PostMapping("/list") - @ApiOperation("列表分页") + @ApiOperation("查询用户列表分页") @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) public HttpResult> getUserList(@RequestBody @Validated UserParam.UserQueryParam queryParam) { String methodDescribe = getMethodDescribe("getUserList"); @@ -344,7 +353,7 @@ public class UserController extends BaseController { } } - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/generateSm2Key") @ApiOperation("根据登录名获取公钥") @ApiImplicitParam(name = "loginName", value = "登录名", required = true) @@ -433,7 +442,7 @@ public class UserController extends BaseController { * @param id 用户ID * @return */ - @OperateInfo + @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.UPDATE) @PutMapping("/activateUser") @ApiOperation("用户激活") @ApiImplicitParam(name = "id", value = "用户id") @@ -573,7 +582,7 @@ public class UserController extends BaseController { * @author cdf * @date 2023/7/31 */ - @OperateInfo(info = LogEnum.SYSTEM_SERIOUS) + @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getUserListByRoleCode") @ApiOperation("根据角色Code集合查询用户信息") @ApiImplicitParam(name = "roleCode", value = "角色Code", required = true) @@ -624,5 +633,18 @@ public class UserController extends BaseController { List result = userService.simpleList(true); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } + + /** + * 查询用户的角色 + * @author cdf + * @date 2024/8/29 + */ + @GetMapping("/userRoleList") + @ApiOperation("获取所有用户角色") + public HttpResult userRoleList(){ + String methodDescribe = getMethodDescribe("userRoleList"); + userService.userRoleList(); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); + } } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserRoleController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserRoleController.java index c12da308c..9dcc1ad12 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserRoleController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/UserRoleController.java @@ -18,5 +18,12 @@ import com.njcn.web.controller.BaseController; @RequestMapping("/userRole") public class UserRoleController extends BaseController { + + /** + * + * @author cdf + * @date 2024/8/29 + */ + } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/init/InitPermissionRoles.java b/pqs-user/user-boot/src/main/java/com/njcn/user/init/InitPermissionRoles.java index 112e1dd86..a7431bd49 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/init/InitPermissionRoles.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/init/InitPermissionRoles.java @@ -1,6 +1,8 @@ package com.njcn.user.init; import com.njcn.user.service.IFunctionService; +import com.njcn.user.service.IUserService; +import com.njcn.user.service.impl.UserServiceImpl; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.CommandLineRunner; @@ -19,8 +21,11 @@ public class InitPermissionRoles implements CommandLineRunner { private final IFunctionService functionService; + private final IUserService iUserService; + @Override public void run(String... args) { functionService.refreshRolesFunctionsCache(); + iUserService.userRoleList(); } } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/UserMapper.java b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/UserMapper.java index afd797e89..1bfe0cc80 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/UserMapper.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/UserMapper.java @@ -3,12 +3,14 @@ package com.njcn.user.mapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.njcn.user.pojo.dto.UserRoleLogsDTO; import com.njcn.user.pojo.dto.excel.UserExcel; import com.njcn.user.pojo.po.User; import com.njcn.user.pojo.vo.UserVO; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** *

@@ -58,4 +60,6 @@ public interface UserMapper extends BaseMapper { List queryExportUser(@Param("ew") QueryWrapper queryWrapper); List getUserVOByIdList(@Param("ids") List ids); + + List userRoleList(); } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/UserMapper.xml b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/UserMapper.xml index 3ee0a7b0a..6721ab48f 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/UserMapper.xml +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/UserMapper.xml @@ -88,4 +88,20 @@ + + + diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/service/IUserService.java b/pqs-user/user-boot/src/main/java/com/njcn/user/service/IUserService.java index 9f192de24..e94288857 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/service/IUserService.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/service/IUserService.java @@ -14,6 +14,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import java.util.List; +import java.util.Map; /** *

@@ -201,4 +202,7 @@ public interface IUserService extends IService { List getColleaguesIdByUserId(String id); + + + Boolean userRoleList(); } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/UserServiceImpl.java b/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/UserServiceImpl.java index 034904582..6db37ba62 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/UserServiceImpl.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/UserServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -23,6 +24,8 @@ import com.njcn.device.pq.pojo.po.PqsTerminalLogs; import com.njcn.oss.constant.OssPath; import com.njcn.oss.utils.FileStorageUtil; import com.njcn.poi.excel.ExcelUtil; +import com.njcn.redis.pojo.enums.RedisKeyEnum; +import com.njcn.redis.utils.RedisUtil; import com.njcn.system.api.AreaFeignClient; import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.enums.DicDataEnum; @@ -35,6 +38,7 @@ import com.njcn.user.mapper.UserRoleMapper; import com.njcn.user.pojo.constant.UserState; import com.njcn.user.pojo.constant.UserType; import com.njcn.user.pojo.dto.UserDTO; +import com.njcn.user.pojo.dto.UserRoleLogsDTO; import com.njcn.user.pojo.dto.excel.UserExcel; import com.njcn.user.pojo.param.UserInfoParm; import com.njcn.user.pojo.param.UserParam; @@ -45,6 +49,7 @@ import com.njcn.web.factory.PageFactory; import com.njcn.web.utils.RequestUtil; import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.StringUtils; +import org.springframework.data.redis.core.BoundHashOperations; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; @@ -53,10 +58,7 @@ import javax.validation.constraints.NotNull; import java.io.File; import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -93,6 +95,8 @@ public class UserServiceImpl extends ServiceImpl implements IU private final AreaFeignClient areaFeignClient; private final FileStorageUtil fileStorageUtil; + private final RedisUtil redisUtil; + @Override public UserDTO getUserByName(String loginName) { User user = getUserByLoginName(loginName); @@ -594,6 +598,17 @@ public class UserServiceImpl extends ServiceImpl implements IU return userList.stream().map(User::getId).collect(Collectors.toList()); } + @Override + public Boolean userRoleList() { + JSONObject jsonObject = new JSONObject(); + List mapList = this.baseMapper.userRoleList(); + for(UserRoleLogsDTO item :mapList){ + jsonObject.putOpt(item.getLoginName(),item.getRoleType()); + } + redisUtil.saveByKeyWithExpire(RedisKeyEnum.USER_ROLE_TYPE_KEY.getKey(),jsonObject,-1L); + return true; + } + /** * 根据登录名查询用户 *