package com.consum.base.cache; import com.consum.base.Constants; import com.consum.base.FinOrgCacheProvider; import com.consum.base.service.FinOrgService; import com.consum.model.po.FinSysOrg; import com.walker.support.redis.cache.RedisCacheProvider; /** * Redis实现的运维系统机构定义。 * @author 时克英 * @date 2023-07-05 */ public class RedisFinOrgCache extends RedisCacheProvider implements FinOrgCacheProvider { public RedisFinOrgCache(){ this.setUseRedis(true); this.setLoadPage(false); } @Override public FinSysOrg get(String orgCode) { FinSysOrg finSysOrg = this.getCacheData(orgCode); if(finSysOrg == null){ finSysOrg = this.finOrgService.queryOneByCode(orgCode); if(finSysOrg == null){ logger.warn("从数据库未查询到机构,无法缓存,orgCode = {}", orgCode); return null; } this.putCacheData(orgCode, finSysOrg); } return finSysOrg; } @Override public void save(FinSysOrg e) { this.putCacheData(e.getOrgCode(), e); } @Override public void update(FinSysOrg e) { this.updateCacheData(e.getOrgCode(), e); } @Override public void remove(String orgCode) { this.removeCacheData(orgCode); } @Override public String getProviderName() { return Constants.CACHE_NAME_FIN_ORG; } @Override public Class getProviderType() { return FinSysOrg.class; } public void setFinOrgService(FinOrgService finOrgService) { this.finOrgService = finOrgService; } private FinOrgService finOrgService; }