parent
2247f21db8
commit
9b38202384
|
|
@ -23,4 +23,11 @@ public interface TenantFrameworkService {
|
||||||
*/
|
*/
|
||||||
void validTenant(Long id);
|
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
|
@Override
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
public List<Long> getTenantIds() {
|
public List<Long> getTenantIds() {
|
||||||
|
|
@ -61,4 +78,10 @@ public class TenantFrameworkServiceImpl implements TenantFrameworkService {
|
||||||
validTenantCache.get(id).checkError();
|
validTenantCache.get(id).checkError();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SneakyThrows
|
||||||
|
@Override
|
||||||
|
public Long getPackageIdByTenantId(Long tenantId) {
|
||||||
|
return getPackageIdByTenantIdCache.get(tenantId);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue