From 2e89bb115815ca329c6fd54d6d987779791c657c Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期四, 30 五月 2024 22:35:37 +0800
Subject: [PATCH] 大改用户和客户

---
 user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java |   57 +++++++++++++++++++++++++--------------------------------
 1 files changed, 25 insertions(+), 32 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 a39fae2..870d737 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
@@ -10,12 +10,12 @@
 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.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 +26,6 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
-import java.util.concurrent.atomic.AtomicReference;
 
 @Service
 public class UserServiceImp implements UserService {
@@ -37,10 +36,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,7 +62,19 @@
         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)));
+        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;
     }
 
@@ -103,7 +114,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 +137,10 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public int addPersonUser(PersonDto personDto) {
-        AtomicReference<String> departId = new AtomicReference<>("1,");
-        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,19 +149,18 @@
                 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.setCompany(BeanUtil.isNotEmpty(custom)?(custom.getId()+""):companyName);
                 user.setAddress("鏈~鍐�");
+                user.setRoleId(personDto.getRoleId()>10000?0:personDto.getRoleId());
                 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);

--
Gitblit v1.9.3