ludc
2023-10-12 0cab15970c0203bbcc1a72e9ec19469d298380ab
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java
@@ -21,6 +21,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.vci.ubcs.system.cache.NacosConfigCache;
import com.vci.ubcs.system.entity.*;
import com.vci.ubcs.system.mapper.TenantMapper;
import com.vci.ubcs.system.service.*;
@@ -60,10 +61,9 @@
public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> implements ITenantService {
   /**
    * nacos上配置的超管租户id
    * nacos上配置的超管租户
    */
   @Value("${user-info.tenant-id}")
   private String propertiesTenantId;
   private final NacosConfigCache nacosConfigCache;
   private final TenantId tenantId;
   private final IRoleService roleService;
@@ -194,7 +194,7 @@
      List<String> tenantIds = this.list(Wrappers.<Tenant>query().lambda().in(Tenant::getId, ids))
         .stream().map(tenant -> Func.toStr(tenant.getTenantId())).distinct().collect(Collectors.toList());
      CacheUtil.clear(SYS_CACHE, tenantIds);
      if (tenantIds.contains(BladeConstant.ADMIN_TENANT_ID)) {
      if (tenantIds.contains(nacosConfigCache.getAdminUserInfo().getTenantId())) {
         throw new ServiceException("不可删除管理租户!");
      }
      boolean tenantTemp = this.deleteLogic(ids);
@@ -212,9 +212,9 @@
   @Override
   public List<Map<String,Object>> selectMaps(){
      List<Map<String, Object>> mapList = listMaps(new QueryWrapper<Tenant>().select("TENANT_ID", "TENANT_NAME"));
      if(Func.isNotEmpty(this.propertiesTenantId)){
      if(Func.isNotEmpty(NacosConfigCache.getAdminUserInfo().getTenantId()) && !this.containsSameKeys(mapList,nacosConfigCache.getAdminUserInfo().getTenantId())){
         Map<String, Object> map = new HashMap<>();
         map.put("TENANT_ID",this.propertiesTenantId);
         map.put("TENANT_ID",NacosConfigCache.getAdminUserInfo().getTenantId());
         map.put("TENANT_NAME","管理组");
         mapList.add(0,map);
      }
@@ -222,6 +222,22 @@
   }
   /**
    * 判断数据库中是否存在于配置文件中一致的超管信息
    * @param collection
    * @param value
    * @return
    */
   private boolean containsSameKeys(List<Map<String, Object>> collection, String value) {
      for (Map<String, Object> map : collection) {
         Collection<Object> values = map.values();
         if (values.contains(value)) {
            return true;
         }
      }
      return false;
   }
   /**
    * 三员相关配置
    * @return
    */