| | |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 缓存报告字典 |
| | | */ |
| | | @Slf4j |
| | | public class CacheServiceFactory { |
| | | private static final String MAQ_REPORT_LIBRARY = "MAQ_REPORT_LIBRARY"; |
| | |
| | | private CacheServiceFactory() { |
| | | } |
| | | |
| | | /** |
| | | * 获取缓存实例 |
| | | * @return |
| | | */ |
| | | public static CacheServiceFactory getInstance() { |
| | | if (Objects.isNull(instance)) { |
| | | synchronized (CacheServiceFactory.class) { |
| | |
| | | } |
| | | return instance; |
| | | } |
| | | |
| | | /** |
| | | * 清除缓存 |
| | | */ |
| | | public void reLoad() { |
| | | lruCache.clear(); |
| | | lruCache.put(MAQ_REPORT_LIBRARY, null); |
| | | } |
| | | |
| | | /** |
| | | * 获取所有报告缓存字典 |
| | | * @return |
| | | */ |
| | | public List<TLibraryCode> getMAQReportLibrary() { |
| | | List<TLibraryCode> maqReportLibraries = lruCache.get(MAQ_REPORT_LIBRARY); |
| | | if (Objects.isNull(maqReportLibraries)) { |
| | |
| | | } |
| | | return maqReportLibraries; |
| | | } |
| | | |
| | | /** |
| | | * 根据报告字典ID获取报告字典 |
| | | * @param coreId |
| | | * @return |
| | | */ |
| | | public TLibraryCode getMAQReportLibrary(String coreId) { |
| | | List<TLibraryCode> maqReportLibrary = getMAQReportLibrary(); |
| | | TLibraryCode library = null; |
| | |
| | | } |
| | | return library; |
| | | } |
| | | |
| | | /** |
| | | * 获取所有报告字典 加入缓存 |
| | | * @return |
| | | */ |
| | | private List<TLibraryCode> loadExcel() { |
| | | TLibraryCodeServiceImpl itLibraryCodeService = AppUtil.getObject("iTLibraryCodeService", TLibraryCodeServiceImpl.class); |
| | | TLibraryCode libraryCode = new TLibraryCode(); |