package com.iailab.module.system.api.tenant; import com.iailab.framework.common.pojo.CommonResult; import com.iailab.module.infra.api.db.DataSourceConfigServiceApi; import com.iailab.module.system.api.tenant.dto.TenantDataSourceConfigRespDTO; import com.iailab.module.system.convert.tenant.TenantConvert; import com.iailab.module.system.dal.dataobject.tenant.TenantDO; import com.iailab.module.system.service.tenant.TenantService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.List; import static com.iailab.framework.common.pojo.CommonResult.success; @RestController // æä¾› RESTful API 接å£ï¼Œç»™ Feign 调用 @Validated public class TenantApiImpl implements TenantApi { @Resource private TenantService tenantService; @Resource private DataSourceConfigServiceApi dataSourceConfigServiceApi; @Override public CommonResult<List<Long>> getTenantIdList() { return success(tenantService.getTenantIdList()); } @Override public CommonResult<Boolean> validTenant(Long id) { tenantService.validTenant(id); return success(true); } @Override public TenantDataSourceConfigRespDTO getTenantDataSourceConfig(Long tenantId) { // èŽ·å¾—ç§Ÿæˆ·ä¿¡æ¯ TenantDO tenant = tenantService.getTenant(tenantId); if (tenant == null) { return null; } // 获得租户的数æ®æºé…ç½® return TenantConvert.INSTANCE.convert( dataSourceConfigServiceApi.getDataSourceConfig(tenant.getDataSourceConfigId())); } }