parent
2247f21db8
commit
9b38202384
|
|
@ -23,4 +23,11 @@ public interface TenantFrameworkService {
|
|||
*/
|
||||
void validTenant(Long id);
|
||||
|
||||
/**
|
||||
* 根据租户编号获取套餐id
|
||||
* @param tenantId
|
||||
* @return
|
||||
*/
|
||||
Long getPackageIdByTenantId(Long tenantId);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -49,6 +49,23 @@ public class TenantFrameworkServiceImpl implements TenantFrameworkService {
|
|||
|
||||
});
|
||||
|
||||
/**
|
||||
* 针对 {@link #getPackageIdByTenantId(Long)} 的缓存
|
||||
*/
|
||||
private final LoadingCache<Long, Long> getPackageIdByTenantIdCache = CacheUtils.buildAsyncReloadingCache(
|
||||
Duration.ofMinutes(1L), // 过期时间 1 分钟
|
||||
new CacheLoader<Long, Long>() {
|
||||
@Override
|
||||
public Long load(Long id) {
|
||||
if (tenantApi.validTenant(id).getCheckedData()){
|
||||
return tenantApi.getTenantInfo(id).getCheckedData().getPackageId();
|
||||
}else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@Override
|
||||
@SneakyThrows
|
||||
public List<Long> getTenantIds() {
|
||||
|
|
@ -61,4 +78,10 @@ public class TenantFrameworkServiceImpl implements TenantFrameworkService {
|
|||
validTenantCache.get(id).checkError();
|
||||
}
|
||||
|
||||
@SneakyThrows
|
||||
@Override
|
||||
public Long getPackageIdByTenantId(Long tenantId) {
|
||||
return getPackageIdByTenantIdCache.get(tenantId);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue