From f1099b7ff85a64a0ab913cbfb1d497abfd129166 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 10 Jul 2023 16:25:12 +0800 Subject: [PATCH] //..circle --- .../domain/vo/AlipayOrWxStatistics.java | 3 +- .../mapper/AliBusinessCircleOrderMapper.java | 3 ++ .../mapper/WxBusinessCircleOrderMapper.java | 2 + .../AliBusinessCircleOrderServiceImpl.java | 26 ++++++++---- .../WxBusinessCircleOrderServiceImpl.java | 26 ++++++++---- .../mapper/AliBusinessCircleOrderMapper.xml | 39 +++++++++++++++--- .../mapper/WxBusinessCircleOrderMapper.xml | 40 ++++++++++++++++--- 7 files changed, 112 insertions(+), 27 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/AlipayOrWxStatistics.java b/mallinkService/src/main/java/com/iformall/domain/vo/AlipayOrWxStatistics.java index 0efbd3e58..3bc5ffc1c 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/AlipayOrWxStatistics.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/AlipayOrWxStatistics.java @@ -10,6 +10,7 @@ public class AlipayOrWxStatistics { private String merchantName;//商户名称 private Integer payAmount;//支付总金额 private Integer refundAmount;//退款总金额 - private Integer increasedPoints;//积分情况 + private Integer payPoints;//支付总积分 + private Integer refundPoints;//支付总积分 private Long merchantId; } diff --git a/mallinkService/src/main/java/com/iformall/mapper/AliBusinessCircleOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/AliBusinessCircleOrderMapper.java index 5aa2c9c34..fda372577 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/AliBusinessCircleOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/AliBusinessCircleOrderMapper.java @@ -50,4 +50,7 @@ public interface AliBusinessCircleOrderMapper extends CommonMapper aliPayList(AliBusinessCircleOrder record); + + List aliRefundList(AliBusinessCircleOrder record); + } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxBusinessCircleOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxBusinessCircleOrderMapper.java index 1830a7657..4cc42da7f 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxBusinessCircleOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxBusinessCircleOrderMapper.java @@ -52,4 +52,6 @@ public interface WxBusinessCircleOrderMapper extends CommonMapper wxPayList(WxBusinessCircleOrder record); + List wxRefundList(WxBusinessCircleOrder record); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java index 9a06d106d..0bf5e3b60 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java @@ -400,16 +400,28 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder return pageInfo; } List list = pageInfo.getList().parallelStream().map(AlipayOrWxStatistics::getMerchantId).collect(Collectors.toList()); + record.setMerchantIds(list); + //查询退款数据 + List alipayOrWxStatistics = aliBusinessCircleOrderMapper.aliRefundList(record); + Map statisticsMap = null; + if (CollectionUtils.isNotEmpty(alipayOrWxStatistics)) { + statisticsMap = alipayOrWxStatistics.stream().collect(Collectors.toMap(AlipayOrWxStatistics::getMerchantId, s -> s)); + } + WxMerchant wxMerchant = new WxMerchant(); wxMerchant.setIds(list); - List wxMerchants = wxMerchantService.findList(wxMerchant); - if (CollectionUtils.isEmpty(wxMerchants)) { - return pageInfo; + Map merchantNamesMap = wxMerchantService.getIdAndNamesMap(wxMerchant); + + for (AlipayOrWxStatistics statistics:pageInfo.getList()) { + statistics.setMerchantName(merchantNamesMap.get(statistics.getMerchantId())); + if(statisticsMap != null){ + AlipayOrWxStatistics refundstatistics = statisticsMap.get(statistics.getMerchantId()); + if(refundstatistics != null){ + statistics.setRefundAmount(refundstatistics.getRefundAmount()); + statistics.setRefundPoints(refundstatistics.getRefundPoints()); + } + } } - Map map = wxMerchants.parallelStream().collect(Collectors.toMap(WxMerchant::getId, WxMerchant::getName)); - pageInfo.getList().forEach(x -> { - x.setMerchantName(map.get(x.getMerchantId())); - }); return pageInfo; } } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java index 67ea2bc5b..6c3e4e6f1 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java @@ -575,16 +575,28 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe return pageInfo; } List list = pageInfo.getList().parallelStream().map(AlipayOrWxStatistics::getMerchantId).collect(Collectors.toList()); + record.setMerchantIds(list); + //查询退款数据 + List alipayOrWxStatistics = wxBusinessCircleOrderMapper.wxRefundList(record); + Map statisticsMap = null; + if (CollectionUtils.isNotEmpty(alipayOrWxStatistics)) { + statisticsMap = alipayOrWxStatistics.stream().collect(Collectors.toMap(AlipayOrWxStatistics::getMerchantId, s -> s)); + } + WxMerchant wxMerchant = new WxMerchant(); wxMerchant.setIds(list); - List wxMerchants = wxMerchantService.findList(wxMerchant); - if (CollectionUtils.isEmpty(wxMerchants)) { - return pageInfo; + Map merchantNamesMap = wxMerchantService.getIdAndNamesMap(wxMerchant); + + for (AlipayOrWxStatistics statistics:pageInfo.getList()) { + statistics.setMerchantName(merchantNamesMap.get(statistics.getMerchantId())); + if(statisticsMap != null){ + AlipayOrWxStatistics refundstatistics = statisticsMap.get(statistics.getMerchantId()); + if(refundstatistics != null){ + statistics.setRefundAmount(refundstatistics.getRefundAmount()); + statistics.setRefundPoints(refundstatistics.getRefundPoints()); + } + } } - Map map = wxMerchants.parallelStream().collect(Collectors.toMap(WxMerchant::getId, WxMerchant::getName)); - pageInfo.getList().forEach(x -> { - x.setMerchantName(map.get(x.getMerchantId())); - }); return pageInfo; } diff --git a/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml b/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml index 7f5d0d2e6..45cc3382f 100644 --- a/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml @@ -230,19 +230,46 @@ + + diff --git a/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml index d17f8e0fa..e145f7460 100644 --- a/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml @@ -262,18 +262,46 @@ + + + \ No newline at end of file