in service/src/main/java/org/apache/fineract/cn/reporting/service/internal/specification/OfficeListReportSpecification.java [270:288]
private String buildAddressQuery(final ReportRequest reportRequest, final String officeIdentifier) {
final List<DisplayableField> displayableFields = reportRequest.getDisplayableFields();
final ArrayList<String> columns = new ArrayList<>();
displayableFields.forEach(displayableField -> {
final String column = this.addressColumnMapping.get(displayableField.getName());
if (column != null) {
columns.add(column);
}
});
if (!columns.isEmpty()) {
return "SELECT " + columns.stream().collect(Collectors.joining(", ")) + " " +
"FROM horus_addresses ha " +
"LEFT JOIN horus_offices ho on ha.office_id = ho.id " +
"WHERE ho.id ='" + officeIdentifier + "' ";
}
return null;
}