You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by of...@apache.org on 2020/07/22 11:28:25 UTC
[incubator-dlab] branch develop updated: [DLAB-1926] Billing report
sorting (#823)
This is an automated email from the ASF dual-hosted git repository.
ofuks pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
The following commit(s) were added to refs/heads/develop by this push:
new 88a8d47 [DLAB-1926] Billing report sorting (#823)
88a8d47 is described below
commit 88a8d4783003b41a5ae5e63ef84da7942c749d28
Author: Pavel Papou <pp...@gmail.com>
AuthorDate: Wed Jul 22 07:28:05 2020 -0400
[DLAB-1926] Billing report sorting (#823)
[DLAB-1926] Billing report sorting
---
.../src/main/java/com/epam/dlab/backendapi/dao/BaseBillingDAO.java | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/BaseBillingDAO.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/BaseBillingDAO.java
index 7975eeb..56a77a0 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/BaseBillingDAO.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/BaseBillingDAO.java
@@ -25,6 +25,7 @@ import com.epam.dlab.dto.billing.BillingResourceType;
import com.google.inject.Inject;
import com.mongodb.client.model.Aggregates;
import com.mongodb.client.model.Filters;
+import com.mongodb.client.model.Sorts;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -48,6 +49,7 @@ import static com.mongodb.client.model.Accumulators.min;
import static com.mongodb.client.model.Accumulators.sum;
import static com.mongodb.client.model.Aggregates.group;
import static com.mongodb.client.model.Aggregates.match;
+import static com.mongodb.client.model.Aggregates.sort;
import static com.mongodb.client.model.Filters.and;
import static com.mongodb.client.model.Filters.eq;
import static com.mongodb.client.model.Filters.gte;
@@ -152,6 +154,7 @@ public class BaseBillingDAO extends BaseDAO implements BillingDAO {
pipeline.add(Aggregates.match(Filters.and(matchCriteria)));
}
pipeline.add(groupCriteria());
+ pipeline.add(usageDateSort());
return StreamSupport.stream(getCollection(BILLING).aggregate(pipeline).spliterator(), false)
.map(this::toBillingReport)
.collect(Collectors.toList());
@@ -187,6 +190,10 @@ public class BaseBillingDAO extends BaseDAO implements BillingDAO {
.orElse(BigDecimal.ZERO.doubleValue());
}
+ private Bson usageDateSort() {
+ return sort(Sorts.descending(USAGE_DATE));
+ }
+
private Bson groupCriteria() {
return group(getGroupingFields(USER, DLAB_ID, RESOURCE_TYPE, RESOURCE_NAME, PROJECT, PRODUCT, CURRENCY, SHAPE, EXPLORATORY),
sum(COST, "$" + COST),
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org