From 186f6eb07df6934d2e28330ba39dcfce30c0063a Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期六, 09 十二月 2023 10:55:52 +0800
Subject: [PATCH] 修复库管员角色问题

---
 consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java |   42 +++++++++++++++++++++++++-----------------
 1 files changed, 25 insertions(+), 17 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java
index a3951e3..2268ac2 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java
@@ -1,5 +1,15 @@
 package com.consum.base.service.impl;
 
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.commons.compress.utils.Sets;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
 import com.consum.base.core.utils.IdUtil;
 import com.consum.base.pojo.WarehouseManagerInfo;
 import com.consum.base.pojo.request.WarehouseManagerParam;
@@ -10,13 +20,6 @@
 import com.iplatform.model.po.S_role;
 import com.walker.infrastructure.utils.CollectionUtils;
 import com.walker.jdbc.service.BaseServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
 
 /**
  * @Description 鐗╁搧鍒嗙被
@@ -29,23 +32,24 @@
     @Autowired
     private FinSysTenantUserServiceImpl finSysTenantUserService;
 
-
     /**
+     * @return
      * @Description 鏂板
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/26
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void add(WarehouseManagerParam list) throws Exception {
+    public Set<Long> add(WarehouseManagerParam list) throws Exception {
 
+        Set<Long> sysUserIds = Sets.newHashSet();
         Long warehouseId = list.getWarehouseId();
-
         // 瑙掕壊id
         Long roleId = null;
         List<S_role> roleAll = finSysTenantUserService.getRoleAll();
         if (!CollectionUtils.isEmpty(roleAll)) {
-            S_role sRole = roleAll.stream().filter(item -> item.getRole_name().equals("浠撳簱绠$悊鍛�")).findFirst().orElse(null);
+            S_role sRole =
+                roleAll.stream().filter(item -> item.getRole_name().equals("浠撳簱绠$悊鍛�")).findFirst().orElse(null);
             if (sRole != null) {
                 roleId = sRole.getRole_id();
             }
@@ -66,14 +70,16 @@
             params.put("managerId", finSysTenantUser.getSysUserId());
             params.put("roleId", roleId);
             this.execute(deleteRoleSql, params);
+
+            sysUserIds.add(finSysTenantUser.getSysUserId());
         }
 
-        //鍒犻櫎搴撶璁板綍
+        // 鍒犻櫎搴撶璁板綍
         String sql = "delete from base_warehouse_manager where base_warehouse_id =:warehouseId";
         Map<String, Object> params = new HashMap<>();
         params.put("warehouseId", warehouseId);
         this.execute(sql, params);
-        //閲嶆柊淇濆瓨
+        // 閲嶆柊淇濆瓨
         List<WarehouseManagerInfo> warehouseManagerInfoList = list.getWarehouseManagerInfoList();
         if (!CollectionUtils.isEmpty(warehouseManagerInfoList)) {
             for (WarehouseManagerInfo warehouseManagerInfo : warehouseManagerInfoList) {
@@ -92,7 +98,8 @@
                 }
                 Long sysUserId = finSysTenantUser.getSysUserId();
                 // 鍏堝垽鏂槸鍚︽嫢鏈夎瑙掕壊
-                String isHasRole = "select count(1) from s_role_user where org_id=0 and role_id=" + roleId + " and user_id=" + sysUserId;
+                String isHasRole = "select * from s_role_user where org_id=0 and role_id=" + roleId
+                    + " and user_id=" + sysUserId;
                 List<Map<String, Object>> isHasRoleList = this.select(isHasRole, new HashMap<>());
                 if (!CollectionUtils.isEmpty(isHasRoleList)) {
                     continue;
@@ -103,9 +110,10 @@
                 userRoleParam.put("roleId", roleId);
                 this.execute(saveUserRole, userRoleParam);
 
+                sysUserIds.add(finSysTenantUser.getSysUserId());
             }
         }
-
+        return sysUserIds;
     }
 
     @Override
@@ -118,7 +126,8 @@
 
     @Override
     public List<BaseWarehouseManager> selectManagerList(Long warehouseId, Long agencyId) {
-        StringBuilder sql = new StringBuilder("select * from base_warehouse_manager bwm left join base_warehouse bw on bwm.base_warehouse_id = bw.id "
+        StringBuilder sql = new StringBuilder(
+            "select * from base_warehouse_manager bwm left join base_warehouse bw on bwm.base_warehouse_id = bw.id "
                 + "where 1=1 ");
         Map<String, Object> param = new HashMap<>();
         if (warehouseId != null) {
@@ -132,6 +141,5 @@
         List<BaseWarehouseManager> select = this.select(sql.toString(), param, new BaseWarehouseManager());
         return select;
     }
-
 
 }

--
Gitblit v1.9.1