| @@ -48,7 +48,7 @@ public class WxBusinessCircleOrderController extends BaseController { | |||||
| } | } | ||||
| circleOrder.updateTenantInfo(getTenantInfo()); | circleOrder.updateTenantInfo(getTenantInfo()); | ||||
| circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); | circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); | ||||
| final PageInfo<WxBusinessCircleOrder> page = wxBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); | |||||
| PageInfo<WxBusinessCircleOrder> page = wxBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); | |||||
| return new ResultData(page); | return new ResultData(page); | ||||
| } | } | ||||
| @@ -119,7 +119,7 @@ public class WxBusinessCircleOrderController extends BaseController { | |||||
| circleOrder = new WxBusinessCircleOrder(); | circleOrder = new WxBusinessCircleOrder(); | ||||
| } | } | ||||
| circleOrder.updateTenantInfo(getTenantInfo()); | circleOrder.updateTenantInfo(getTenantInfo()); | ||||
| final PageInfo<AlipayOrWxStatistics> page = wxBusinessCircleOrderService.wxPayList(circleOrder, pageNum, pageSize); | |||||
| PageInfo<AlipayOrWxStatistics> page = wxBusinessCircleOrderService.wxPayList(circleOrder, pageNum, pageSize); | |||||
| return new ResultData(page); | return new ResultData(page); | ||||
| } | } | ||||
| @@ -134,7 +134,7 @@ public class WxBusinessCircleOrderController extends BaseController { | |||||
| circleOrder = new WxBusinessCircleOrder(); | circleOrder = new WxBusinessCircleOrder(); | ||||
| } | } | ||||
| circleOrder.updateTenantInfo(getTenantInfo()); | circleOrder.updateTenantInfo(getTenantInfo()); | ||||
| AlipayOrWxStatistics aliStatistics = wxBusinessCircleOrderService.aliStatistics(circleOrder); | |||||
| AlipayOrWxStatistics aliStatistics = wxBusinessCircleOrderService.wxStatistics(circleOrder); | |||||
| return new ResultData(aliStatistics); | return new ResultData(aliStatistics); | ||||
| } | } | ||||
| @@ -55,8 +55,8 @@ public interface WxBusinessCircleOrderMapper extends CommonMapper<WxBusinessCirc | |||||
| List<AlipayOrWxStatistics> wxRefundList(WxBusinessCircleOrder record); | List<AlipayOrWxStatistics> wxRefundList(WxBusinessCircleOrder record); | ||||
| AlipayOrWxStatistics aliPayStatistics(WxBusinessCircleOrder record); | |||||
| AlipayOrWxStatistics wxPayStatistics(WxBusinessCircleOrder record); | |||||
| AlipayOrWxStatistics aliRefundStatistics(WxBusinessCircleOrder record); | |||||
| AlipayOrWxStatistics wxRefundStatistics(WxBusinessCircleOrder record); | |||||
| } | } | ||||
| @@ -93,6 +93,6 @@ public interface WxBusinessCircleOrderService { | |||||
| PageInfo<AlipayOrWxStatistics> wxPayList(WxBusinessCircleOrder circleOrder, Integer pageNum, Integer pageSize); | PageInfo<AlipayOrWxStatistics> wxPayList(WxBusinessCircleOrder circleOrder, Integer pageNum, Integer pageSize); | ||||
| AlipayOrWxStatistics aliStatistics(WxBusinessCircleOrder circleOrder); | |||||
| AlipayOrWxStatistics wxStatistics(WxBusinessCircleOrder circleOrder); | |||||
| } | } | ||||
| @@ -399,21 +399,32 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder | |||||
| if (CollectionUtils.isEmpty(pageInfo.getList())) { | if (CollectionUtils.isEmpty(pageInfo.getList())) { | ||||
| return pageInfo; | return pageInfo; | ||||
| } | } | ||||
| List<Long> list = pageInfo.getList().parallelStream().map(AlipayOrWxStatistics::getMerchantId).collect(Collectors.toList()); | |||||
| record.setMerchantIds(list); | |||||
| //查询退款数据 | |||||
| List<AlipayOrWxStatistics> alipayOrWxStatistics = aliBusinessCircleOrderMapper.aliRefundList(record); | |||||
| List<Long> list = pageInfo.getList().parallelStream().filter(s -> s.getMerchantId() != null) | |||||
| .map(AlipayOrWxStatistics::getMerchantId).collect(Collectors.toList()); | |||||
| Map<Long, AlipayOrWxStatistics> statisticsMap = null; | Map<Long, AlipayOrWxStatistics> statisticsMap = null; | ||||
| if (CollectionUtils.isNotEmpty(alipayOrWxStatistics)) { | |||||
| statisticsMap = alipayOrWxStatistics.stream().collect(Collectors.toMap(AlipayOrWxStatistics::getMerchantId, s -> s)); | |||||
| } | |||||
| Map<Long, String> merchantNamesMap = null; | |||||
| if(CollectionUtils.isNotEmpty(list)){ | |||||
| //查询退款数据 | |||||
| record.setMerchantIds(list); | |||||
| List<AlipayOrWxStatistics> alipayOrWxStatistics = aliBusinessCircleOrderMapper.aliRefundList(record); | |||||
| if (CollectionUtils.isNotEmpty(alipayOrWxStatistics)) { | |||||
| statisticsMap = alipayOrWxStatistics.stream().collect(Collectors.toMap(AlipayOrWxStatistics::getMerchantId, s -> s)); | |||||
| } | |||||
| WxMerchant wxMerchant = new WxMerchant(); | |||||
| wxMerchant.setIds(list); | |||||
| Map<Long, String> merchantNamesMap = wxMerchantService.getIdAndNamesMap(wxMerchant); | |||||
| WxMerchant wxMerchant = new WxMerchant(); | |||||
| wxMerchant.setIds(list); | |||||
| merchantNamesMap = wxMerchantService.getIdAndNamesMap(wxMerchant); | |||||
| } | |||||
| for (AlipayOrWxStatistics statistics:pageInfo.getList()) { | for (AlipayOrWxStatistics statistics:pageInfo.getList()) { | ||||
| statistics.setMerchantName(merchantNamesMap.get(statistics.getMerchantId())); | |||||
| if(merchantNamesMap != null){ | |||||
| statistics.setMerchantName(merchantNamesMap.get(statistics.getMerchantId())); | |||||
| } | |||||
| if(StringUtils.isBlank(statistics.getMerchantName())){ | |||||
| statistics.setMerchantName("其他"); | |||||
| } | |||||
| if(statisticsMap != null){ | if(statisticsMap != null){ | ||||
| AlipayOrWxStatistics refundstatistics = statisticsMap.get(statistics.getMerchantId()); | AlipayOrWxStatistics refundstatistics = statisticsMap.get(statistics.getMerchantId()); | ||||
| if(refundstatistics != null){ | if(refundstatistics != null){ | ||||
| @@ -574,21 +574,32 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||||
| if (CollectionUtils.isEmpty(pageInfo.getList())) { | if (CollectionUtils.isEmpty(pageInfo.getList())) { | ||||
| return pageInfo; | return pageInfo; | ||||
| } | } | ||||
| List<Long> list = pageInfo.getList().parallelStream().map(AlipayOrWxStatistics::getMerchantId).collect(Collectors.toList()); | |||||
| record.setMerchantIds(list); | |||||
| //查询退款数据 | |||||
| List<AlipayOrWxStatistics> alipayOrWxStatistics = wxBusinessCircleOrderMapper.wxRefundList(record); | |||||
| List<Long> list = pageInfo.getList().parallelStream().filter(s -> s.getMerchantId() != null) | |||||
| .map(AlipayOrWxStatistics::getMerchantId).collect(Collectors.toList()); | |||||
| Map<Long, AlipayOrWxStatistics> statisticsMap = null; | Map<Long, AlipayOrWxStatistics> statisticsMap = null; | ||||
| if (CollectionUtils.isNotEmpty(alipayOrWxStatistics)) { | |||||
| statisticsMap = alipayOrWxStatistics.stream().collect(Collectors.toMap(AlipayOrWxStatistics::getMerchantId, s -> s)); | |||||
| } | |||||
| Map<Long, String> merchantNamesMap = null; | |||||
| if(CollectionUtils.isNotEmpty(list)){ | |||||
| //查询退款数据 | |||||
| record.setMerchantIds(list); | |||||
| List<AlipayOrWxStatistics> alipayOrWxStatistics = wxBusinessCircleOrderMapper.wxRefundList(record); | |||||
| if (CollectionUtils.isNotEmpty(alipayOrWxStatistics)) { | |||||
| statisticsMap = alipayOrWxStatistics.stream().collect(Collectors.toMap(AlipayOrWxStatistics::getMerchantId, s -> s)); | |||||
| } | |||||
| WxMerchant wxMerchant = new WxMerchant(); | |||||
| wxMerchant.setIds(list); | |||||
| Map<Long, String> merchantNamesMap = wxMerchantService.getIdAndNamesMap(wxMerchant); | |||||
| WxMerchant wxMerchant = new WxMerchant(); | |||||
| wxMerchant.setIds(list); | |||||
| merchantNamesMap = wxMerchantService.getIdAndNamesMap(wxMerchant); | |||||
| } | |||||
| for (AlipayOrWxStatistics statistics:pageInfo.getList()) { | for (AlipayOrWxStatistics statistics:pageInfo.getList()) { | ||||
| statistics.setMerchantName(merchantNamesMap.get(statistics.getMerchantId())); | |||||
| if(merchantNamesMap != null){ | |||||
| statistics.setMerchantName(merchantNamesMap.get(statistics.getMerchantId())); | |||||
| } | |||||
| if(StringUtils.isBlank(statistics.getMerchantName())){ | |||||
| statistics.setMerchantName("其他"); | |||||
| } | |||||
| if(statisticsMap != null){ | if(statisticsMap != null){ | ||||
| AlipayOrWxStatistics refundstatistics = statisticsMap.get(statistics.getMerchantId()); | AlipayOrWxStatistics refundstatistics = statisticsMap.get(statistics.getMerchantId()); | ||||
| if(refundstatistics != null){ | if(refundstatistics != null){ | ||||
| @@ -601,7 +612,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||||
| } | } | ||||
| @Override | @Override | ||||
| public AlipayOrWxStatistics aliStatistics(WxBusinessCircleOrder record) { | |||||
| public AlipayOrWxStatistics wxStatistics(WxBusinessCircleOrder record) { | |||||
| if (StringUtils.isNotEmpty(record.getMerchantName())) { | if (StringUtils.isNotEmpty(record.getMerchantName())) { | ||||
| List<Long> ids = wxMerchantService.selectByMerchantIds(record.getMerchantName()); | List<Long> ids = wxMerchantService.selectByMerchantIds(record.getMerchantName()); | ||||
| if (!CollectionUtils.isEmpty(ids)) { | if (!CollectionUtils.isEmpty(ids)) { | ||||
| @@ -611,9 +622,9 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe | |||||
| record.setMerchantIds(ids); | record.setMerchantIds(ids); | ||||
| } | } | ||||
| } | } | ||||
| AlipayOrWxStatistics aliStatistics = wxBusinessCircleOrderMapper.aliPayStatistics(record); | |||||
| AlipayOrWxStatistics aliStatistics = wxBusinessCircleOrderMapper.wxPayStatistics(record); | |||||
| if(aliStatistics.getPayAmount() > 0){ | if(aliStatistics.getPayAmount() > 0){ | ||||
| AlipayOrWxStatistics aliRefundStatistics = wxBusinessCircleOrderMapper.aliRefundStatistics(record); | |||||
| AlipayOrWxStatistics aliRefundStatistics = wxBusinessCircleOrderMapper.wxRefundStatistics(record); | |||||
| aliStatistics.setRefundAmount(aliRefundStatistics.getRefundAmount()); | aliStatistics.setRefundAmount(aliRefundStatistics.getRefundAmount()); | ||||
| aliStatistics.setRefundPoints(aliRefundStatistics.getRefundPoints()); | aliStatistics.setRefundPoints(aliRefundStatistics.getRefundPoints()); | ||||
| } | } | ||||
| @@ -248,7 +248,7 @@ | |||||
| </foreach> | </foreach> | ||||
| </if> | </if> | ||||
| GROUP BY merchant_id | GROUP BY merchant_id | ||||
| order by payAmount desc; | |||||
| order by payAmount desc | |||||
| </select> | </select> | ||||
| <select id="aliRefundList" parameterType="com.iformall.domain.po.AliBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | <select id="aliRefundList" parameterType="com.iformall.domain.po.AliBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | ||||
| @@ -263,10 +263,10 @@ | |||||
| <select id="wxPayList" parameterType="com.iformall.domain.po.WxBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | <select id="wxPayList" parameterType="com.iformall.domain.po.WxBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | ||||
| SELECT merchant_id as 'merchantId', | SELECT merchant_id as 'merchantId', | ||||
| IFNULL(SUM(`pay_amount`),0) as 'payAmount', | |||||
| IFNULL(SUM(`increased_points`),0) as 'payPoints' | |||||
| IFNULL(SUM(`pay_amount`),0) as 'payAmount', | |||||
| IFNULL(SUM(`increased_points`),0) as 'payPoints' | |||||
| FROM wx_business_circle_order | FROM wx_business_circle_order | ||||
| where is_refund = 0 and merchant_id is not null | |||||
| where is_refund = 0 | |||||
| <if test=" null != tenantId and '' != tenantId"> | <if test=" null != tenantId and '' != tenantId"> | ||||
| and `tenant_id` = #{tenantId} | and `tenant_id` = #{tenantId} | ||||
| </if> | </if> | ||||
| @@ -280,10 +280,10 @@ | |||||
| </foreach> | </foreach> | ||||
| </if> | </if> | ||||
| GROUP BY merchant_id | GROUP BY merchant_id | ||||
| order by payAmount desc; | |||||
| order by payAmount desc | |||||
| </select> | </select> | ||||
| <select id="wxRefundList" parameterType="com.iformall.domain.po.AliBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | |||||
| <select id="wxRefundList" parameterType="com.iformall.domain.po.WxBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | |||||
| SELECT merchant_id as 'merchantId', | SELECT merchant_id as 'merchantId', | ||||
| IFNULL(SUM(`refund_amount`),0) as 'refundAmount', | IFNULL(SUM(`refund_amount`),0) as 'refundAmount', | ||||
| IFNULL(SUM(`increased_points`),0) as 'refundPoints' | IFNULL(SUM(`increased_points`),0) as 'refundPoints' | ||||
| @@ -304,7 +304,7 @@ | |||||
| GROUP BY merchant_id | GROUP BY merchant_id | ||||
| </select> | </select> | ||||
| <select id="wxPayStatistics" parameterType="com.iformall.domain.po.AliBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | |||||
| <select id="wxPayStatistics" parameterType="com.iformall.domain.po.WxBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | |||||
| SELECT | SELECT | ||||
| IFNULL(SUM(`pay_amount`),0) as 'payAmount', | IFNULL(SUM(`pay_amount`),0) as 'payAmount', | ||||
| IFNULL(SUM(`increased_points`),0) as 'payPoints' | IFNULL(SUM(`increased_points`),0) as 'payPoints' | ||||
| @@ -324,7 +324,7 @@ | |||||
| </if> | </if> | ||||
| </select> | </select> | ||||
| <select id="wxRefundStatistics" parameterType="com.iformall.domain.po.AliBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | |||||
| <select id="wxRefundStatistics" parameterType="com.iformall.domain.po.WxBusinessCircleOrder" resultType="com.iformall.domain.vo.AlipayOrWxStatistics"> | |||||
| SELECT | SELECT | ||||
| IFNULL(SUM(`refund_amount`),0) as 'refundAmount', | IFNULL(SUM(`refund_amount`),0) as 'refundAmount', | ||||
| IFNULL(SUM(`increased_points`),0) as 'refundPoints' | IFNULL(SUM(`increased_points`),0) as 'refundPoints' | ||||