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); 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); 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("用户已禁用,请联系管理员"); }