Skip to content

Commit e980e15

Browse files
author
jefffischer
committed
BroadleafCommerce/QA#1710 - Add API to specify the nullLast property on the CriteriaTransfer object in order to control how the OrderBy clause in the resulting SQL is constructed.
1 parent 8d75d74 commit e980e15

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

admin/broadleaf-open-admin-platform/src/main/java/org/broadleafcommerce/openadmin/dto/FilterAndSortCriteria.java

+8
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ public class FilterAndSortCriteria {
5151
protected Integer order;
5252

5353
protected SortDirection sortDirection;
54+
protected boolean nullsLast = true;
5455

5556
public FilterAndSortCriteria(String propertyId, int order) {
5657
this.propertyId = propertyId;
@@ -202,4 +203,11 @@ public void setOrder(Integer order) {
202203
this.order = order;
203204
}
204205

206+
public boolean isNullsLast() {
207+
return nullsLast;
208+
}
209+
210+
public void setNullsLast(boolean nullsLast) {
211+
this.nullsLast = nullsLast;
212+
}
205213
}

admin/broadleaf-open-admin-platform/src/main/java/org/broadleafcommerce/openadmin/server/service/persistence/module/criteria/FilterMapping.java

+5
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,11 @@ public FilterMapping withInheritedFromClass(Class<?> inheritedFromClass) {
8585
return this;
8686
}
8787

88+
public FilterMapping withNullsLast(boolean nullsLast) {
89+
setNullsLast(nullsLast);
90+
return this;
91+
}
92+
8893
public String getFullPropertyName() {
8994
return fullPropertyName;
9095
}

admin/broadleaf-open-admin-platform/src/main/java/org/broadleafcommerce/openadmin/server/service/persistence/module/provider/BasicFieldPersistenceProvider.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,8 @@ public FieldProviderResponse addSearchMapping(AddSearchMappingRequest addSearchM
545545
.withFullPropertyName(addSearchMappingRequest.getPropertyName())
546546
.withFilterValues(fasc.getFilterValues())
547547
.withSortDirection(fasc.getSortDirection())
548-
.withOrder(fasc.getOrder());
548+
.withOrder(fasc.getOrder())
549+
.withNullsLast(fasc.isNullsLast());
549550
filterMappings.add(filterMapping);
550551

551552
if (fasc.hasSpecialFilterValue()) {

0 commit comments

Comments
 (0)