@Override public List<OrganisationGroup> getAllOrganisationGroups() { int pageNo = Integer.parseInt(DEFAULT_PAGE_NO); List<OrganisationGroup> result = new ArrayList<OrganisationGroup>(); Page<OrganisationGroup> organisationGroupsPage = null; OrganisationGroupQuery query = new OrganisationGroupQuery(); query.setOrderBy(NAME_FIELD_NAME); query.setPageSize(Integer.parseInt(DEFAULT_PAGE_SIZE)); do { query.setPageNo(pageNo); organisationGroupsPage = licensingService.fetchOrganisationGroups(query); result.addAll(organisationGroupsPage.getResult()); pageNo++; } while (pageNo < organisationGroupsPage.getTotalPages()); return result; }
@Override protected List<Predicate> getPredicates(Root<PersistableOrganisationGroup> root, CriteriaBuilder cb) { List<Predicate> predicates = new ArrayList<>(); predicates.add(createEqualsPredicate("name", query.getName(), root, cb)); predicates.add(createEqualsPredicate("collections.id", query.getCollectionId(), root, cb, true)); predicates.add(createEqualsPredicate("type", query.getType(), root, cb)); predicates.add(createEqualsPredicate("accessType", query.getAccessType(), root, cb)); return predicates; }
@Override public OrganisationGroup getOrganisationGroupById(Long organisationGroupId) { OrganisationGroupQuery query = new OrganisationGroupQuery(); query.setId(organisationGroupId); Page<OrganisationGroup> page = licensingService.fetchOrganisationGroups(query); OrganisationGroup result = page.getResult().get(0); return result; }
@RequestMapping(value = "/licensing/organisation_group/list", method = RequestMethod.GET) @Secured(ConsoleSecurityRoles.ROLE_LICENSE_VIEW) public ModelAndView listOrganisationGroups(@RequestParam(defaultValue = DEFAULT_PAGE_NO) String pageNo, @RequestParam(defaultValue = DEFAULT_PAGE_SIZE) String pageSize, @RequestParam(defaultValue = "") String order, @RequestParam(defaultValue = "") String field) { ModelAndView results = new ModelAndView("container.platform.licensing.organisationGroup.list"); OrganisationGroupQuery query = new OrganisationGroupQuery(); query.setPageNo(Integer.parseInt(pageNo)); query.setPageSize(Integer.parseInt(pageSize)); if (!order.equals("") && !field.equals("")) { query.setOrderBy(field, order.equals("DES") ? Direction.DESCENDING : Direction.ASCENDING); } else { query.setOrderBy("name", Direction.ASCENDING); } Page<OrganisationGroup> organisationGroupsList = licensingService.fetchOrganisationGroups(query); results.addObject("organisationGroups", organisationGroupsList.getResult()); results.addObject("pageNo", Integer.parseInt(pageNo)); results.addObject("pageSize", Integer.parseInt(pageSize)); results.addObject("order", order); results.addObject("field", field); results.addObject("totalPages", organisationGroupsList.getTotalPages()); return results; }