From d2048c247c446be08598abf8e1bc11a4ea77be32 Mon Sep 17 00:00:00 2001 From: luqingyang <lqy5492@163.com> Date: 星期三, 25 十月 2023 16:41:49 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 100 insertions(+), 0 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java b/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java new file mode 100644 index 0000000..ab9b570 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java @@ -0,0 +1,100 @@ +package com.consum.base.cache; + +import com.consum.base.Constants; +import com.consum.base.FinSysTenantCacheProvider; +import com.consum.base.service.FinSysTenantServiceImpl; +import com.consum.model.po.FinSysTenant; +import com.walker.infrastructure.ApplicationRuntimeException; +import com.walker.infrastructure.utils.JsonUtils; +import com.walker.support.redis.cache.RedisCacheProvider; + +import java.util.ArrayList; +import java.util.List; + +/** + * 鍖哄垝缂撳瓨 + * @浣滆�咃細power + * @鏃堕棿锛�2023/7/20 20:35 + */ +public class RedisFinSysTenantCache extends RedisCacheProvider<FinSysTenant> implements FinSysTenantCacheProvider { + public RedisFinSysTenantCache(){ + this.setUseRedis(true); + this.setLoadPage(false); + } + @Override + public FinSysTenant get(String code) { + FinSysTenant finSysTenant = this.getCacheData(code); + if(finSysTenant == null){ + finSysTenant = this.finSysTenantService.queryOneByCode(code); + if(finSysTenant == null){ + logger.warn("浠庢暟鎹簱鏈煡璇㈠埌鍖哄垝锛屾棤娉曠紦瀛橈紝code = {}", code); + return null; + } + + // 2023-07-26锛屾椂鍏嬭嫳锛屽尯鍒掔浉瀵瑰浐瀹氾紝鏃犻渶璁剧疆澶辨晥鏃堕棿锛岃浠栨案杩滃瓨鍌ㄥ惂銆� +// this.putCacheData(code, finSysTenant,7200); + this.putCacheData(code, finSysTenant); + } + return finSysTenant; + } + + @Override + public void save(FinSysTenant e) { + this.putCacheData(e.getCode(), e); + } + + @Override + public void update(FinSysTenant e) { + this.updateCacheData(e.getCode(), e); + } + + @Override + public void remove(String code) { + this.removeCacheData(code); + } + + @Override + public FinSysTenant getById(String id) { + FinSysTenant finSysTenant = this.getCacheData(id); + if(finSysTenant == null){ + finSysTenant = this.finSysTenantService.get(new FinSysTenant(Long.parseLong(id))); + if(finSysTenant == null){ + logger.warn("浠庢暟鎹簱鏈煡璇㈠埌鍖哄垝锛屾棤娉曠紦瀛橈紝id = {}", id); + return null; + } + this.putCacheData(finSysTenant.getId().toString(), finSysTenant); + } + return finSysTenant; + } + + @Override + public List<FinSysTenant> selectAll() { + List<FinSysTenant> allTree = new ArrayList<>(); + FinSysTenant temp = null; + for(String value : this.getCache().getIterator(null)) { + try { + temp = JsonUtils.jsonStringToObject(value, FinSysTenant.class); + } catch (Exception ex) { + throw new ApplicationRuntimeException("redis瀛樺偍'EbProductBrand'瑙f瀽閿欏惔:"+ value,ex); + } + allTree.add(temp); + } + return allTree; + } + + @Override + public String getProviderName() { + return Constants.CACHE_NAME_FIN_TENANT; + } + + @Override + public Class<?> getProviderType() { + return FinSysTenant.class; + } + + public void setFinSysTenantService(FinSysTenantServiceImpl finSysTenantService) { + this.finSysTenantService = finSysTenantService; + } + + private FinSysTenantServiceImpl finSysTenantService; +} -- Gitblit v1.9.1