@Override public List<GroupTimePeriod> getTimePeriods(OrganisationGroup organisationGroup, String order, String field) { List<GroupTimePeriod> timePeriods = new ArrayList<GroupTimePeriod>(); int i = 0; Page<GroupTimePeriod> page = null; do { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setPageNo(i++); query.setPageSize(Integer.parseInt(DEFAULT_PAGE_SIZE)); String orderField = StringUtils.isNotBlank(field) ? field : "organisation.name"; Direction direction = StringUtils.isBlank(order) ? Direction.ASCENDING : (order.equals("DES") ? Direction.DESCENDING : Direction.ASCENDING); query.setOrderBy(orderField, direction); query.setGroupId(organisationGroup.getId()); page = licensingService.fetchOrganisationGroupAssignments(query); timePeriods.addAll(page.getResult()); } while (page.getTotalPages() > i); return timePeriods; }
@Override protected List<Predicate> getPredicates(Root<PersistableGroupTimePeriod> root, CriteriaBuilder cb) { List<Predicate> predicates = new ArrayList<>(); predicates.add(createEqualsPredicate("organisationGroup.id", query.getGroupId(), root, cb, true)); predicates.add(createInPredicate("organisation.id", query.getOrganisationIds(), root, cb)); predicates.add(createEqualsPredicate("name.id",query.getName(), root, cb)); return predicates; }
@Override public GroupTimePeriod getTimePeriodById(Long timePeriodId) { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setId(timePeriodId); Page<GroupTimePeriod> page = licensingService.fetchOrganisationGroupAssignments(query); GroupTimePeriod result = page.getResult().get(0); return result; }
private java.util.Collection<OrganisationRaport> prepareReportData(Long organisationGroupId, ReportRequest reportRequest, String field, String order, boolean simple) { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setOrderBy(field, "ASC".equals(order) ? Direction.ASCENDING : Direction.DESCENDING); query.setOrganisationIds(reportRequest.getOrganisationId()); query.setGroupId(organisationGroupId); query.setPageSize(500); query.setOrderBy("organisation.name"); Map<Long, OrganisationRaport> raports = new LinkedHashMap<>(); for (Page< GroupTimePeriod>organisationGroupTimePerionPage = licensingService.fetchOrganisationGroupAssignments(query); organisationGroupTimePerionPage .getCurrentPage() < organisationGroupTimePerionPage .getTotalPages(); organisationGroupTimePerionPage = licensingService.fetchOrganisationGroupAssignments(query)) { query.setPageNo(query.getPageNo() + 1); for (GroupTimePeriod period : organisationGroupTimePerionPage.getResult()) { Organisation organisation = licensingControllerHelper.getOrganisationById(period.getOrganisation().getId());
@Override public List<GroupTimePeriod> getTimePeriods(Organisation organisation) { List<GroupTimePeriod> timePeriods = new ArrayList<GroupTimePeriod>(); int i = 0; Page<GroupTimePeriod> page = null; do { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setPageNo(i++); query.setPageSize(Integer.parseInt(DEFAULT_PAGE_SIZE)); query.setOrganisationId(organisation.getId()); page = licensingService.fetchOrganisationGroupAssignments(query); timePeriods.addAll(page.getResult()); } while (page.getTotalPages() > i); final Locale polish = Locale.forLanguageTag(YLanguage.Polish.getShortCode()); final Collator polishCollator = Collator.getInstance(polish); Collections.sort(timePeriods, new Comparator<GroupTimePeriod>() { @Override public int compare(final GroupTimePeriod object1, final GroupTimePeriod object2) { return polishCollator.compare(object1.getOrganisationGroup().getName(), object2.getOrganisationGroup().getName()); } }); return timePeriods; }
@Override public GroupTimePeriod getTimePeriod(Organisation organisation, OrganisationGroup organisationGroup) { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setOrganisationId(organisation.getId()); query.setGroupId(organisationGroup.getId()); GroupTimePeriod groupTimePeriod = licensingService.fetchOrganisationGroupAssignments(query).getResult().get(0); return groupTimePeriod; }
private void buildNoOrganisationRequest(Long organisationGroupId, ReportRequest reportRequest) { if (reportRequest.getOrganisationId().isEmpty()) { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setPageSize(Integer.MAX_VALUE); query.setGroupId(organisationGroupId); Page<GroupTimePeriod> periods = licensingService.fetchOrganisationGroupAssignments(query); for (GroupTimePeriod period : periods.getResult()) { if(period.getDateTo() == null){ reportRequest.getOrganisationId().add(period.getOrganisation().getId()); } } } }
private void rejectIfAlreadyExists(GroupTimePeriod timePeriod, Long id, BindingResult bindingResult) { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); if (timePeriod.getOrganisation() == null) { query.setGroupId(timePeriod.getOrganisationGroup().getId()); query.setOrganisationId(id); } else { query.setGroupId(id); query.setOrganisationId(timePeriod.getOrganisation().getId()); } Page<GroupTimePeriod> periodsPage = licensingService.fetchOrganisationGroupAssignments(query); if (periodsPage.getTotalSize() > 0) { String field = timePeriod.getOrganisation() == null ? "organisationGroup" : "organisation"; bindingResult.rejectValue(field, "container.platform.error.duplicated"); } }
@Override public List<GroupTimePeriod> getTimePeriods(OrganisationGroup organisationGroup) { List<GroupTimePeriod> timePeriods = new ArrayList<GroupTimePeriod>(); int i = 0; Page<GroupTimePeriod> page = null; do { GroupTimePeriodQuery query = new GroupTimePeriodQuery(); query.setPageNo(i++); query.setPageSize(Integer.parseInt(DEFAULT_PAGE_SIZE)); query.setGroupId(organisationGroup.getId()); page = licensingService.fetchOrganisationGroupAssignments(query); timePeriods.addAll(page.getResult()); } while (page.getTotalPages() > i); return timePeriods; }