From 2573d09a4a305b7cb4ba9ab82daa8a8e2a4cdeb4 Mon Sep 17 00:00:00 2001 From: cjl <276999030@qq.com> Date: Tue, 26 Sep 2023 20:02:25 +0800 Subject: [PATCH] feat:补充提交 --- screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java | 58 ++++++++++++++++++++++++++++------------------------------ 1 files changed, 28 insertions(+), 30 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java index 55f7c8a..569562c 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java @@ -30,14 +30,17 @@ import com.moral.api.entity.Group; import com.moral.api.entity.Menu; import com.moral.api.entity.Organization; +import com.moral.api.entity.ResponsibilityUnit; import com.moral.api.entity.User; import com.moral.api.entity.UserGroup; import com.moral.api.entity.UserLog; import com.moral.api.mapper.MenuMapper; +import com.moral.api.mapper.ResponsibilityUnitMapper; import com.moral.api.mapper.UserGroupMapper; import com.moral.api.mapper.UserLogMapper; import com.moral.api.mapper.UserMapper; import com.moral.api.pojo.bo.UserBO; +import com.moral.api.service.ResponsibilityUnitService; import com.moral.api.service.UserService; import com.moral.api.utils.OperationLogUtils; import com.moral.constant.Constants; @@ -76,6 +79,9 @@ @Autowired private OperationLogUtils operationLogUtils; + + @Autowired + private ResponsibilityUnitService responsibilityUnitService; @Value("${AES.KEY}") private String AESKey; @@ -119,12 +125,13 @@ //������������������ Map<String, Object> userInfo = new LinkedHashMap<>(); - //������in��� + //������������ userInfo.put("userId", userBo.getId()); userInfo.put("account", userBo.getAccount()); userInfo.put("userName", userBo.getUserName()); userInfo.put("email", userBo.getEmail()); userInfo.put("mobile", userBo.getMobile()); + userInfo.put("unitId",userBo.getUnitId()); userInfo.put("wechat", userBo.getWechat()); userInfo.put("expireTime", DateUtils.dateToDateString(userBo.getExpireTime())); userInfo.put("isAdmin", userBo.getIsAdmin()); @@ -140,9 +147,9 @@ //��������������� Group group = userBo.getGroup(); - + Map<String, Object> groupMap = new LinkedHashMap<>(); + userInfo.put("group", groupMap); if (group != null) { - Map<String, Object> groupMap = new LinkedHashMap<>(); groupMap.put("id", group.getId()); groupMap.put("groupName", group.getGroupName()); userInfo.put("group", groupMap); @@ -175,8 +182,8 @@ } @Override - public Map<String, Object> getUserInfo(String token) { - Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token); + public Map<String, Object> getCurrentUserInfo() { + Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfo(); return userInfo; } @@ -219,6 +226,7 @@ //������������������������������ List<Menu> nextLevelMenus = menus.stream() .filter(o -> o.getParentId().equals(menu.getId())) + .sorted(Comparator.comparing(Menu::getOrder)) .collect(Collectors.toList()); List<Map<String, Object>> list = new ArrayList<>(); if (nextLevelMenus.size() > 0) { @@ -240,11 +248,9 @@ @Override @Transactional public Map<String, Object> addUser(User user) { - HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); - String token = request.getHeader("token"); Map<String, Object> result = new HashMap<>(); - Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token); + Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfo(); QueryWrapper<User> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("account", user.getAccount()).eq("is_delete", Constants.NOT_DELETE); @@ -282,6 +288,8 @@ result.put("msg", ResponseCodeEnum.MOBILE_INVALID.getMsg()); return result; } + ResponsibilityUnit responsibilityUnit = responsibilityUnitService.selectAreaUnit(user.getUnitCode()); + user.setUnitId(responsibilityUnit.getUnitId()); //������������ user.setPassword(MD5Utils.saltMD5(password)); Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization"); @@ -306,7 +314,7 @@ userMapper.insert(user); //������ String content = "������������������" + user.getAccount(); - operationLogUtils.insertLog(request, content, Constants.INSERT_OPERATE_TYPE); + operationLogUtils.insertLog(content, Constants.INSERT_OPERATE_TYPE); return result; } @@ -328,27 +336,22 @@ TokenUtils.destoryToken(userId.toString(), token); } //������ - HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); String content = "������������������" + user.getAccount(); - operationLogUtils.insertLog(request, content, Constants.DELETE_OPERATE_TYPE); + operationLogUtils.insertLog(content, Constants.DELETE_OPERATE_TYPE); } @Override @Transactional public Map<String, Object> updateUser(User user) { - HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); - String token = request.getHeader("token"); - Map<String, Object> result = new HashMap<>(); //��������������� Map<String, Object> update = JSONObject.parseObject(JSON.toJSONString(user), Map.class); - Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token); + Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfo(); User beforeUser = userMapper.selectById(user.getId()); Map<String, Object> before = JSONObject.parseObject(JSON.toJSONString(beforeUser), Map.class); /*String account = beforeUser.getAccount(); //account������������ user.setAccount(account);*/ - System.out.println(user); if (!ObjectUtils.isEmpty(user.getAccount())) { QueryWrapper<User> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("is_delete", Constants.NOT_DELETE).eq("account", user.getAccount()); @@ -367,7 +370,6 @@ } //������������ String password = user.getPassword(); - System.out.println("password==" + password); if (!ObjectUtils.isEmpty(password)) { //������������ password = AESUtils.decrypt(password, AESKey); @@ -396,13 +398,9 @@ Date orgExpireTime = DateUtils.getDate((String) orgInfo.get("expireTime"), DateUtils.yyyy_MM_dd_HH_mm_ss_EN); if (userExpireTime != null) { if (orgExpireTime != null && userExpireTime.getTime() > orgExpireTime.getTime()) { - user.setExpireTime(orgExpireTime); - } else { - user.setExpireTime(userExpireTime); - } - } else { - if (orgExpireTime != null) { - user.setExpireTime(orgExpireTime); + result.put("code", ResponseCodeEnum.EXPIRE_BEYOND_ADMIN.getCode()); + result.put("msg", ResponseCodeEnum.EXPIRE_BEYOND_ADMIN.getMsg()); + return result; } } //������redis @@ -411,10 +409,13 @@ String deleteToken = TokenUtils.hget(userId).toString(); TokenUtils.destoryToken(userId, deleteToken); } + ResponsibilityUnit responsibilityUnit = responsibilityUnitService.selectAreaUnit(user.getUnitCode()); + user.setUnitId(responsibilityUnit.getUnitId()); userMapper.updateById(user); //������ - StringBuilder content = new StringBuilder("������������������" + user.getAccount() + "->"); + String account = userMapper.selectById(userId).getAccount(); + StringBuilder content = new StringBuilder("������������������" + account + "->"); for (String key : update.keySet()) { Object afterValue = update.get(key); if (!key.equals("id") && afterValue != null) { @@ -423,16 +424,13 @@ content.append(key).append(":").append(beforeValue).append("=>").append(afterValue).append(";"); } } - operationLogUtils.insertLog(request, content.toString(), Constants.UPDATE_OPERATE_TYPE); + operationLogUtils.insertLog(content.toString(), Constants.UPDATE_OPERATE_TYPE); return result; } @Override public Page<User> selectUsers(Map<String, Object> parameters) { - HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest(); - String token = request.getHeader("token"); - - Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token); + Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfo(); Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization"); QueryWrapper<User> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("organization_id", orgInfo.get("id")) -- Gitblit v1.8.0