|
|
@@ -488,6 +488,7 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
|
|
|
List<RealGoodsData> collect = realGoodsData.stream().filter(data -> {
|
|
|
if (data.getNumOfUser() != null && data.getNumOfUser() > 0) {
|
|
|
data.setRefundMoney(getRefundMoney(null, data.getSkuId(), startDate, endDate));
|
|
|
+ data.setNumOfRefundOrder(getNumOfRefundOrder(null, data.getSkuId(), startDate, endDate));
|
|
|
data.setMoney(data.getMoney().divide(BigDecimal.valueOf(100)));
|
|
|
return true;
|
|
|
}
|
|
|
@@ -506,6 +507,7 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
|
|
|
data.setSpecVal(goodsDonSku.getSpecVal());
|
|
|
}
|
|
|
data.setRefundMoney(getRefundMoney(null, data.getSkuId(), startDate, endDate));
|
|
|
+ data.setNumOfRefundOrder(getNumOfRefundOrder(null, data.getSkuId(), startDate, endDate));
|
|
|
}));
|
|
|
backgroundDataView.setRealGoodsDataViews(realGoodsData);
|
|
|
}
|
|
|
@@ -609,6 +611,16 @@ public class StatisticsDataServiceImpl implements StatisticsDataService {
|
|
|
return refundMoney;
|
|
|
}
|
|
|
|
|
|
+ private Integer getNumOfRefundOrder(Long goodsId, Long skuId, Date startDate, Date endDate) {
|
|
|
+ Number number = beanSearcher.searchCount(OrderDon.class, MapUtils.builder()
|
|
|
+ .field(OrderDon::getGoodsId, goodsId)
|
|
|
+ .field(OrderDon::getSkuId, skuId)
|
|
|
+ .field(OrderDon::getStatus, OrderDon.Status.refund.name())
|
|
|
+ .field(OrderDon::getCreatedTime, startDate, endDate).op(Operator.Between)
|
|
|
+ .build());
|
|
|
+ return number.intValue();
|
|
|
+ }
|
|
|
+
|
|
|
public void setGoodsMoneyAndOrder(Integer type, Date startDate, Date endDate, BackgroundDataView backgroundDataView) {
|
|
|
List<OrderDonStatisticsView> orderDonStatisticsView = Optional.ofNullable(beanSearcher.searchAll(OrderDonStatisticsView.class,
|
|
|
MapUtils.builder().field(OrderDonStatisticsView::getGoodsType, type)
|