From db6da36b94e1e43096a818052ee65dbfcd5e6d98 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期四, 12 十二月 2024 17:54:01 +0800
Subject: [PATCH] add: 供应商子账号5

---
 src/main/java/com/mzl/flower/service/supplier/SupplierSubService.java |    4 ++--
 src/main/java/com/mzl/flower/web/login/SupplierLoginController.java   |   11 +++++++++--
 src/main/java/com/mzl/flower/service/system/UserService.java          |   12 +++++++++++-
 3 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/mzl/flower/service/supplier/SupplierSubService.java b/src/main/java/com/mzl/flower/service/supplier/SupplierSubService.java
index aa302a3..fff21cd 100644
--- a/src/main/java/com/mzl/flower/service/supplier/SupplierSubService.java
+++ b/src/main/java/com/mzl/flower/service/supplier/SupplierSubService.java
@@ -280,7 +280,7 @@
             SupplierDTO currentSupplier = supplierMapper.getCurrentSupplier(userId);
             //切换主账号
             String supplier = globalSupplierVariables.getSupplier(String.valueOf(currentSupplier.getId()));
-            if (StringUtils.isEmpty(supplier)) {
+            if (!StringUtils.isEmpty(supplier)) {
                 globalSupplierVariables.removeSupplier(String.valueOf(currentSupplier.getId()));
             }
         } else {
@@ -289,7 +289,7 @@
             userId = supplierSub.getUserId();
             //切换子账号
             String supplier = globalSupplierVariables.getSupplier(String.valueOf(supplierSub.getSupplierId()));
-            if (StringUtils.isEmpty(supplier)) {
+            if (!StringUtils.isEmpty(supplier)) {
                 globalSupplierVariables.removeSupplier(String.valueOf(supplierSub.getSupplierId()));
             }
             globalSupplierVariables.setSupplier(String.valueOf(supplierSub.getSupplierId()), userId);
diff --git a/src/main/java/com/mzl/flower/service/system/UserService.java b/src/main/java/com/mzl/flower/service/system/UserService.java
index 92bf94e..6721d3c 100644
--- a/src/main/java/com/mzl/flower/service/system/UserService.java
+++ b/src/main/java/com/mzl/flower/service/system/UserService.java
@@ -225,9 +225,19 @@
             }
         }else if(Constants.USER_TYPE.supplier.name().equals(user.getType())){
             result.setSupplierDTO(supplierService.getCurrentSupplier());
+            //子账号信息
             SupplierSub sub = supplierSubMapper.getCurrentSupplier(SecurityUtils.getUserId());
+            //主账号信息
             SupplierDTO dto = supplierMapper.getCurrentSupplier(SecurityUtils.getUserId());
-            String tempUserId = globalSupplierVariables.getSupplier(String.valueOf(dto.getId()));
+//            if (!ObjectUtils.isEmpty(dto)) {
+//                globalSupplierVariables.removeSupplier(String.valueOf(dto.getId()));
+//            }
+            String tempUserId = "";
+            if (!ObjectUtils.isEmpty(sub)) {
+                tempUserId = globalSupplierVariables.getSupplier(String.valueOf(sub.getId()));
+            } else {
+                tempUserId = globalSupplierVariables.getSupplier(String.valueOf(dto.getId()));
+            }
             if (!ObjectUtils.isEmpty(sub)) {
                 result.setIsSubSupplier(true);
                 result.setSupplierSub(sub);
diff --git a/src/main/java/com/mzl/flower/web/login/SupplierLoginController.java b/src/main/java/com/mzl/flower/web/login/SupplierLoginController.java
index 903da7e..e48d848 100644
--- a/src/main/java/com/mzl/flower/web/login/SupplierLoginController.java
+++ b/src/main/java/com/mzl/flower/web/login/SupplierLoginController.java
@@ -5,6 +5,7 @@
 import com.mzl.flower.base.R;
 import com.mzl.flower.base.ReturnDataDTO;
 import com.mzl.flower.base.cache.StringCacheClient;
+import com.mzl.flower.config.GlobalSupplierVariables;
 import com.mzl.flower.config.exception.BaseException;
 import com.mzl.flower.config.exception.ValidationException;
 import com.mzl.flower.config.security.token.PhoneAuthenticationToken;
@@ -70,6 +71,9 @@
     @Autowired
     private SupplierSubMapper supplierSubMapper;
 
+    @Autowired
+    private GlobalSupplierVariables globalSupplierVariables;
+
 
 
     public static final String SMS_CODE_KEY = "SMS-CODE-KEY";
@@ -102,16 +106,19 @@
         SupplierSub supplierSub = supplierSubMapper.getCurrentSupplier(user.getId());
         if (supplierSub != null) {
             if (supplierSub.getIsEnabled() == false) {
-                throw new ValidationException("子账号已禁用,请联系父级账号");
+                throw new ValidationException("子账号已禁用");
             }else{
                 //这里拿父级供应商ID查询用户ID再校验
                 SupplierDTO supplierDTO = supplierMapper.getCurrentSupplier(String.valueOf( supplierSub.getSupplierId()));
                 if (supplierDTO != null && supplierDTO.getIsEnabled() == false) {
-                    throw new ValidationException("父级账号用户已禁用,请联系管理员");
+                    throw new ValidationException("账号用户已禁用,请联系管理员");
                 }
             }
         }else {
             SupplierDTO supplierDTO = supplierMapper.getCurrentSupplier(user.getId());
+            if (!ObjectUtils.isEmpty(supplierDTO)) {
+                globalSupplierVariables.removeSupplier(String.valueOf(supplierDTO.getId()));
+            }
             if (supplierDTO != null && supplierDTO.getIsEnabled() == false) {
                 throw new ValidationException("用户已禁用,请联系管理员");
             }

--
Gitblit v1.9.3