| | |
| | | */ |
| | | package com.vci.ubcs.system.service.impl; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | 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.*; |
| | |
| | | @Service |
| | | @RequiredArgsConstructor |
| | | public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> implements ITenantService { |
| | | |
| | | /** |
| | | * nacos上配置的超管租户 |
| | | */ |
| | | private final NacosConfigCache nacosConfigCache; |
| | | |
| | | private final TenantId tenantId; |
| | | private final IRoleService roleService; |
| | |
| | | return tenantTemp; |
| | | } |
| | | |
| | | /** |
| | | * 获取租户信息,键值对形式,登录界面调用 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<Map<String,Object>> selectMaps(){ |
| | | List<Map<String, Object>> maps = listMaps(new QueryWrapper<Tenant>().select("TENANT_ID", "TENANT_NAME")); |
| | | return maps; |
| | | List<Map<String, Object>> mapList = listMaps(new QueryWrapper<Tenant>().select("TENANT_ID", "TENANT_NAME")); |
| | | if(Func.isNotEmpty(nacosConfigCache.getAdminUserInfo().getTenantId()) && !this.containsSameKeys(mapList,nacosConfigCache.getAdminUserInfo().getTenantId())){ |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("TENANT_ID",nacosConfigCache.getAdminUserInfo().getTenantId()); |
| | | map.put("TENANT_NAME","管理组"); |
| | | mapList.add(0,map); |
| | | } |
| | | return mapList; |
| | | } |
| | | |
| | | /** |
| | | * 判断数据库中是否存在于配置文件中一致的超管信息 |
| | | * @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 |
| | | */ |
| | | @Override |
| | | public boolean findIsOpen() { |
| | | return this.ssaEnable; |