private void setTranslatedWasteFlag(GridResponse<ResourceDTO> responce) { String yes = translationService.translate("documentGrid.gridColumn.wasteString.value.yes", LocaleContextHolder.getLocale()); String no = translationService.translate("documentGrid.gridColumn.wasteString.value.no", LocaleContextHolder.getLocale()); responce.getRows().forEach(resDTO -> resDTO.setWasteString(resDTO.isWaste() ? yes : no)); }
public <R> GridResponse<R> getGridResponse(String query, String sidx, String sord, Integer page, int perPage, R recordExample, Map<String, Object> parameters) { sidx = sidx != null ? sidx.toLowerCase() : ""; sord = sord != null ? sord.toLowerCase() : ""; Preconditions.checkState(Arrays.asList("asc", "desc", "").contains(sord)); Preconditions.checkState(Arrays.asList(recordExample.getClass().getDeclaredFields()).stream().map(Field::getName).map(String::toLowerCase).collect(Collectors.toList()).contains(sidx)); query += addQueryWhereForObject(recordExample); parameters.putAll(getParametersForObject(recordExample)); String queryCount = String.format(query, "COUNT(*)", ""); String queryRecords = String.format(query, "*", "ORDER BY " + sidx + " " + sord) + String.format(" LIMIT %d OFFSET %d", perPage, perPage * (page - 1)); Integer countRecords = jdbcTemplate.queryForObject(queryCount, parameters, Long.class).intValue(); List<R> records = jdbcTemplate.query(queryRecords, parameters, new BeanPropertyRowMapper(recordExample.getClass())); return new GridResponse<>(page, Double.valueOf(Math.ceil((1.0 * countRecords) / perPage)).intValue(), countRecords, records); }
private void setTranslatedLastResourceFlag(GridResponse<ResourceDTO> response) { String yes = translationService.translate("documentGrid.gridColumn.wasteString.value.yes", LocaleContextHolder.getLocale()); String no = translationService.translate("documentGrid.gridColumn.wasteString.value.no", LocaleContextHolder.getLocale()); response.getRows().forEach(resDTO -> resDTO.setLastResourceString(resDTO.getLastResource() ? yes : no)); }
private void translateActionStates(GridResponse<ActionForPlannedEventDTO> gridResponse) { List<ActionForPlannedEventDTO> rows = gridResponse.getRows(); for (ActionForPlannedEventDTO action : rows) { String state = action.getState(); if (state != null) { state = translationService.translate("cmmsMachineParts.actionForPlannedEvent.state.value." + state, LocaleContextHolder.getLocale()); action.setState(state); } } }
private GridResponse<ResourceDTO> getResponse(String sidx, String sord, Integer page, int perPage, ResourceDTO record, Long context) { String additionalCode = record.getAc(); boolean useAdditionalCode = org.apache.commons.lang3.StringUtils.isNotEmpty(additionalCode); Map<String, Object> parameters = geParameters(context, record, useAdditionalCode, additionalCode); boolean properFilter = prepareWasteFilter(record); if ("wasteString".equals(sidx)) { sidx = "waste"; } boolean properFilterLastResource = prepareLastResourceFilter(record); if ("lastResourceString".equals(sidx)) { sidx = "lastResource"; } String query = getQuery(context, useAdditionalCode, !properFilter, !properFilterLastResource); GridResponse<ResourceDTO> response = lookupUtils.getGridResponse(query, sidx, sord, page, perPage, record, parameters); if (response.getRows().isEmpty() && useAdditionalCode) { parameters = geParameters(context, record, false, additionalCode); query = getQuery(context, false, !properFilter, !properFilterLastResource); response = lookupUtils.getGridResponse(query, sidx, sord, page, perPage, record, parameters); } setTranslatedWasteFlag(response); setTranslatedLastResourceFlag(response); return response; }