@Transactional(readOnly = true) public void fetchDataForTransactionCreation( Consumer<Map<String, Object>> sender, Integer entityId) { List<Provider> providerList = providerService.findProvidersByEntity(entityId); List<Practice> practiceList = practiseDao.findAllByEntity(entityId); List<Payer> payerList = payerService.executeListQuery("select P from Payer P left join fetch P.plans"); // payerService.executeListQuery("select P from Payer P left join fetch P.plans"); Map<String, Object> response = new HashMap<>(); response.put("practiceList", practiceList); response.put("providerList", providerList); response.put("payerList", payerList); sender.accept(response); }
@Override @Transactional(readOnly = true) public void refreshAllData(int start, int end, int entityId, ITransactionCallback callBack) { User user = SharedData.getSharedInstace().getCurrentUser(); user = userService.findById(user.getId(), false); List<Transaction> transactions = new ArrayList<>(); // this.fetchAllByRole(start, end, entityId); Integer totalRows = service.getTotalTransactionCount(entityId); List<Payer> payerList = payerService.getAll(); List<Practice> practiceList = new ArrayList<>(); // practiseService.fetchAllByRole(); List<Provider> providerList = new ArrayList<>(); // providerService.fetchAllByRole(); Map<String, Object> otherInfo = new HashMap<>(); otherInfo.put("count", totalRows); callBack.refreshAllData(user, transactions, payerList, practiceList, providerList, otherInfo); }