From f1c3c5f0b840df7fa5fe08a69186c9f2b52ce243 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Thu, 18 Mar 2021 15:37:15 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java | 97 +++++++++++++++++++-----------------------------
1 files changed, 38 insertions(+), 59 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 8950238..e30cd14 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
@@ -10,7 +10,9 @@
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.moral.api.entity.Group;
import com.moral.api.entity.Menu;
+import com.moral.api.entity.Organization;
import com.moral.api.entity.User;
import com.moral.api.mapper.GroupMapper;
@@ -19,6 +21,7 @@
import com.moral.api.mapper.UserMapper;
import com.moral.api.service.UserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.constant.Constants;
import com.moral.util.AESUtils;
import com.moral.util.MD5Utils;
import com.moral.util.RegexUtils;
@@ -43,65 +46,44 @@
private UserMapper userMapper;
@Autowired
- private GroupMapper groupMapper;
-
- @Autowired
private MenuMapper menuMapper;
- @Autowired
- private OrganizationMapper organizationMapper;
-
- @Value("${AES.KEY}")
- private String AESKey;
+ @Override
+ public User selectUserInfo(Map<String, Object> parameters) {
+ return userMapper.selectUserInfo(parameters);
+ }
@Override
- public Map<String, Object> login(Map<String, Object> parameters) {
+ public Map<String, Object> login(User user) {
Map<String, Object> resultMap = new LinkedHashMap<>();
- //������������
- String account = parameters.get("account").toString();
- String password = parameters.get("password").toString();
- //������
- /*account = AESUtils.decrypt(account, AESKey);
- password = AESUtils.decrypt(password, AESKey);*/
- QueryWrapper<User> queryWrapper = new QueryWrapper<>();
- //������������
- queryWrapper.eq("account", account);
- User user = userMapper.selectOne(queryWrapper);
- String msg;
- if (user == null) {
- msg = "������������������";
- } else {
- if (!MD5Utils.saltMD5Verify(password, user.getPassword())) {//������������
- msg = "������������";
- } else if ("1".equals(user.getIsDelete())) {
- msg = "������������������";
- } else if (user.getExpireTime() != null && user.getExpireTime().getTime() < System.currentTimeMillis()) {
- msg = "���������������������";
- } else {
- int userId = user.getId();
- //������������������
- Map<String, Object> orgMap = organizationMapper.selectOrganizationById(user.getOrganizationId());
- String locationCode = orgMap.get(orgMap.get("location_level").toString()).toString();
- //������������������
- Map<String, Object> userInfo = new LinkedHashMap<>();
- userInfo.put("userId", userId);
- userInfo.put("account", user.getAccount());
- userInfo.put("userName", user.getUserName());
- userInfo.put("organizationId", user.getOrganizationId());
- userInfo.put("locationCode", locationCode);
- userInfo.put("expireTime", user.getExpireTime());
- userInfo.put("isAdmin", user.getIsAdmin());
- List<Map<String, Object>> groups = groupMapper.selectUserGroup(userId);
- userInfo.put("groups", groups);
- userInfo.putAll(getMenus(userId));
- //������token������������redis
- String token = TokenUtils.getToken(user.getId().toString(), userInfo);
- resultMap.put("token", token);
- resultMap.putAll(userInfo);
- return resultMap;
- }
+ //������������������
+ Map<String, Object> userInfo = new LinkedHashMap<>();
+ List<Map<String, Object>> groups = new ArrayList<>();
+ for (Group group : user.getGroups()) {
+ HashMap<String, Object> groupMap = new HashMap<>();
+ groupMap.put("groupId", group.getId());
+ groupMap.put("groupName", group.getGroupName());
+ groups.add(groupMap);
}
- resultMap.put("msg", msg);
+ Organization organization = user.getOrganization();
+ userInfo.put("userId", user.getId());
+ userInfo.put("account", user.getAccount());
+ userInfo.put("userName", user.getUserName());
+ userInfo.put("expireTime", user.getExpireTime());
+ userInfo.put("isAdmin", user.getIsAdmin());
+ userInfo.put("organizationId", user.getOrganizationId());
+ userInfo.put("organizationName", organization.getName());
+ userInfo.put("locationLevel", organization.getLocationLevel());
+ userInfo.put("groups", groups);
+ userInfo.putAll(getMenus(user.getId()));
+ try {
+ //������token������������redis
+ String token = TokenUtils.getToken(user.getId().toString(), userInfo);
+ resultMap.put("token", token);
+ } catch (Exception e) {
+ log.error("token���������������"+e.getMessage());
+ }
+ resultMap.putAll(userInfo);
return resultMap;
}
@@ -163,13 +145,8 @@
Map<String, Object> resultMap = new HashMap<>();
Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token);
- if (!(boolean) currentUserInfo.get("isAdmin")) {
- resultMap.put("msg", "������������");
- return resultMap;
- }
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("account", user.getAccount());
- userMapper.selectOne(queryWrapper);
if (userMapper.selectOne(queryWrapper) != null) {
resultMap.put("msg", "������������������");
return resultMap;
@@ -205,7 +182,7 @@
} else {
User user = new User();
user.setId(userId);
- user.setIsDelete("1");
+ user.setIsDelete(Constants.DELETE);
userMapper.updateById(user);
}
return resultMap;
@@ -277,4 +254,6 @@
}
return msgs;
}
+
+
}
--
Gitblit v1.8.0