Преглед изворни кода

add 统计增加实物退款单数

zoujiajian пре 3 година
родитељ
комит
d040a68512

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/RealGoodsData.java

@@ -51,6 +51,12 @@ public class RealGoodsData extends BaseEntity{
 	 */
 	private BigDecimal money;
 
+	/**
+	 * 退款单数
+	 */
+	@TableField(exist = false)
+	private Integer numOfRefundOrder;
+
 	@TableField(exist = false)
 	private BigDecimal refundMoney;
 

+ 12 - 0
netflix-service/src/main/java/com/cyksj/service/mange/statistics/impl/StatisticsDataServiceImpl.java

@@ -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)