From de4969e7c424a9a26111520ee2f2010f0fb7a902 Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期三, 24 七月 2024 17:45:40 +0800
Subject: [PATCH] 数采bug调整
---
user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java | 78 +++++++++++++++++++++-----------------
1 files changed, 43 insertions(+), 35 deletions(-)
diff --git a/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java b/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java
index d8cc65f..6dcc77e 100644
--- a/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java
+++ b/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java
@@ -2,6 +2,7 @@
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -10,12 +11,13 @@
import com.yuanchu.mom.dto.PersonDto;
import com.yuanchu.mom.dto.UserPageDto;
import com.yuanchu.mom.exception.ErrorException;
-import com.yuanchu.mom.mapper.DepartmentsMapper;
+import com.yuanchu.mom.mapper.RoleMapper;
import com.yuanchu.mom.mapper.UserMapper;
-import com.yuanchu.mom.pojo.Departments;
+import com.yuanchu.mom.pojo.Custom;
+import com.yuanchu.mom.pojo.Role;
import com.yuanchu.mom.pojo.User;
+import com.yuanchu.mom.service.CustomService;
import com.yuanchu.mom.service.UserService;
-import com.yuanchu.mom.util.HeaderToken;
import com.yuanchu.mom.utils.QueryWrappers;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -26,7 +28,8 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.concurrent.atomic.AtomicReference;
+import java.util.function.Consumer;
+import java.util.stream.Collectors;
@Service
public class UserServiceImp implements UserService {
@@ -37,10 +40,10 @@
private GetLook getLook;
@Resource
- private DepartmentsMapper departmentsMapper;
+ private RoleMapper roleMapper;
@Resource
- private HeaderToken headerToken;
+ private CustomService customService;
@Override
public User selectUserByPwd(String account, String password) {
@@ -63,8 +66,25 @@
map.put("head", PrintChina.printChina(UserPageDto.class));
Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectUserList");
if (map1.get("look") == 1) user.setCreateUser(map1.get("userId"));
- map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user)));
- return map;
+ try {
+ if (user.getRoleId() > 10000) {
+ if (user.getRoleId() != 10001) {
+ List<Integer> ids = roleMapper.getRoleByDepart(user.getRoleId());
+ user.setRoleId(null);
+ map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user).in("role_id", ids)));
+ return map;
+ } else {
+ user.setRoleId(null);
+ map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user)));
+ return map;
+ }
+ }
+ map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user).eq("role_id", user.getRoleId())));
+ return map;
+ } catch (NullPointerException e) {
+ map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user)));
+ return map;
+ }
}
@Override
@@ -91,7 +111,11 @@
@Override
public List<User> getUserMenu() {
- return userMapper.selectList(Wrappers.<User>lambdaQuery().eq(User::getState, 1).select(User::getName, User::getId));
+ List<Integer> roleIds = roleMapper.selectList(Wrappers.<Role>lambdaQuery()
+ .ne(Role::getCategory, 10003).or(wrapper -> wrapper.isNull(Role::getCategory))).stream().map(Role::getId).distinct().collect(Collectors.toList());
+ return userMapper.selectList(Wrappers.<User>lambdaQuery()
+ .in(User::getRoleId, roleIds)
+ .eq(User::getState, 1).select(User::getName, User::getId));
}
//鑾峰彇璁惧璐熻矗浜�
@@ -103,7 +127,7 @@
@Override
public User getUserNow() {
Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId(null);
- return userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getId, map1.get("userId")).eq(User::getIsCustom, 1).select(User::getId, User::getCompany, User::getName, User::getCode, User::getPhone));
+ return userMapper.getCustom(map1.get("userId"));
}
@Override
@@ -126,27 +150,10 @@
@Override
@Transactional(rollbackFor = Exception.class)
public int addPersonUser(PersonDto personDto) {
- AtomicReference<String> departId = new AtomicReference<>("");
- AtomicReference<String> companyName = new AtomicReference<>();
- personDto.getCompany().forEach(company -> {
- Departments department = departmentsMapper.selectOne(Wrappers.<Departments>lambdaQuery().eq(Departments::getCompanyId, company.getCompanyId()));
- if (BeanUtil.isEmpty(department)) {
- department = new Departments();
- department.setName(company.getCompanyName());
- department.setCompanyId(company.getCompanyId());
- Departments department2 = departmentsMapper.selectOne(Wrappers.<Departments>lambdaQuery().eq(Departments::getCompanyId, company.getParentCompanyId()));
- if (BeanUtil.isEmpty(department2)) {
- department.setFatherId(1);
- } else {
- department.setFatherId(department2.getId());
- }
- departmentsMapper.insert(department);
- }
- departId.set(departId.get() + department.getId() + ",");
- companyName.set(department.getName());
- });
personDto.getPerson().forEach(person -> {
User user = userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, person.getEmployeeID()));
+ String companyName = personDto.getCompany().stream().filter(a -> a.getCompanyId().equals(person.getCompanyId())).findFirst().get().getCompanyName();
+ Custom custom = customService.getCustomId(companyName);
if (BeanUtil.isEmpty(user)) {
user = new User();
user.setName(person.getName());
@@ -155,23 +162,24 @@
user.setPhone(person.getPhoneNumber());
user.setEmail(person.getCompanyEmail());
user.setIsCustom(person.getCompanyId().equals("SC2463") ? 0 : 1);
- user.setDepartId(departId.get());
// user.setPassword(DigestUtils.md5DigestAsHex(headerToken.getPassword(person.getEmployeeID()).getBytes()));
- user.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()));
- user.setCompany(companyName.get());
+ user.setPassword(DigestUtils.md5DigestAsHex("zttZTT123!".getBytes()));
+ user.setCompany(BeanUtil.isNotEmpty(custom) ? (custom.getId() + "") : companyName);
user.setAddress("鏈~鍐�");
+ user.setRoleId(personDto.getRoleId() > 10000 ? 0 : personDto.getRoleId());
+ user.setCompanyId(person.getCompanyId());
userMapper.insert(user);
} else {
user.setName(person.getName());
user.setPhone(person.getPhoneNumber());
user.setEmail(person.getCompanyEmail());
- user.setIsCustom(person.getCompanyId().equals("SC2463") ? 0 : 1);
- user.setDepartId(departId.get());
- user.setCompany(companyName.get());
+ user.setIsCustom(0);
+ user.setCompany(BeanUtil.isNotEmpty(custom) ? (custom.getId() + "") : companyName);
user.setCreateUser(null);
user.setCreateTime(null);
user.setUpdateUser(null);
user.setUpdateTime(null);
+ user.setCompanyId(person.getCompanyId());
userMapper.updateById(user);
}
});
--
Gitblit v1.9.3