From 3a445283ac1b5c3cc1cfd79430782c19cf050623 Mon Sep 17 00:00:00 2001 From: hupeng Date: Tue, 25 Dec 2018 18:45:08 +0800 Subject: [PATCH] =?UTF-8?q?[A=E7=AB=AF][=E4=BF=AE=E5=A4=8D]:=E8=90=A5?= =?UTF-8?q?=E9=94=80=E6=95=B0=E6=8D=AE=E5=9C=BA=E6=99=AF=E5=8F=91=E5=88=B8?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/WxCouponActionLogMapper.java | 3 +- .../impl/MarkingDataReportServiceImpl.java | 53 +++++++++---------- .../mapper/WxCouponActionLogMapper.xml | 24 ++++----- 3 files changed, 39 insertions(+), 41 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCouponActionLogMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCouponActionLogMapper.java index f64f1c0f1..fbd7ba9a5 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCouponActionLogMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCouponActionLogMapper.java @@ -3,6 +3,7 @@ package com.iformall.mapper; import java.util.*; import com.iformall.common.CommonMapper; import com.iformall.domain.vo.MarkingSceneDataReportVo; +import com.iformall.domain.vo.MarkingSceneDataVo; import org.apache.ibatis.annotations.Param; import com.iformall.domain.po.WxCouponActionLog; @@ -22,7 +23,7 @@ public interface WxCouponActionLogMapper extends CommonMapper sceneDataMapJoinCouponOrder(HashMap params); - List sceneDataList(HashMap params); + List sceneDataList(HashMap params); List sceneDataJoinCouponOrderList(HashMap params); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java index 9c4a61f9d..0bcd95184 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java @@ -185,7 +185,7 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { params3.put("tenantId", tenantId); params3.put("startTime", addDay(-30)); params3.put("endTime", addDay(1)); - params3.put("channelType", EnumCouponSendSendType.C_ORDER.getCode());//B端刷卡支付 + params3.put("channelType", EnumCouponSendSendType.C_ORDER.getCode());//买券 List list4 = wxCouponActionLogMapper.sceneDataMapJoinCouponOrder(params4); Map OrderCountMap = list4.stream().collect(Collectors.toMap(MarkingSceneDataReportVo::getXTime, p -> p.getTempCount())); @@ -204,8 +204,10 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { for(String tj:tjList){ Optional first = list.stream().filter(c -> c.getXTime().equals(tj)).findFirst(); + + MarkingSceneDataReportVo msdVo; if(!first.isPresent()){ - MarkingSceneDataReportVo msdVo = new MarkingSceneDataReportVo(); + msdVo = new MarkingSceneDataReportVo(); msdVo.setXTime(tj); msdVo.setCarCount(0); msdVo.setParkCount(0); @@ -218,14 +220,13 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { msdVo.setMicroPaySendCount(0); msdVo.setOrderSendCount(0); msdVo.setTotal(0); - tempDatalist.add(msdVo); - continue; + } else { + msdVo = first.get(); + msdVo.setTotal(msdVo.getParkSendCount() + + msdVo.getVerifySendCount() + + msdVo.getMicroPaySendCount() + + msdVo.getOrderSendCount()); } - MarkingSceneDataReportVo msdVo = first.get(); - msdVo.setTotal(msdVo.getParkSendCount() + - msdVo.getVerifySendCount() + - msdVo.getMicroPaySendCount() + - msdVo.getOrderSendCount()); tempDatalist.add(msdVo); } @@ -285,27 +286,25 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { params.put("endTime", convertDateAndAdd(markingCouponDataReportDto.getEndTime(), 1)); //停车发券数 停车发券被核销数, 核销发券数 核销发券被核销数, B端刷卡支付发券数 刷卡支付发券被核销数 PageHelper.startPage(pageIndex, pageSize); - List templist = wxCouponActionLogMapper.sceneDataList(params); - - List list = new ArrayList<>(); - for (MarkingSceneDataReportVo temp: templist) { - MarkingSceneDataVo vo = new MarkingSceneDataVo(); - vo.setxTime(temp.getXTime()); - if(markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.CAR_STOP.getCode())) { - vo.setSendCount(temp.getParkSendCount()); - }else if (markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.B_MICROPAY.getCode())) { - vo.setSendCount(temp.getMicroPaySendCount()); - }else if (markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.COUPON_VERIFY.getCode())){ - vo.setSendCount(temp.getVerifySendCount()); - }else if (markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.C_ORDER.getCode())){ - vo.setSendCount(temp.getOrderSendCount()); - }else { - vo.setSendCount(0); - } + List list; - list.add(vo); + if(markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.CAR_STOP.getCode())) { + params.put("channelType", EnumCouponSendSendType.CAR_STOP.getCode()); + list = wxCouponActionLogMapper.sceneDataList(params); + }else if (markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.B_MICROPAY.getCode())) { + params.put("channelType", EnumCouponSendSendType.B_MICROPAY.getCode()); + list = wxCouponActionLogMapper.sceneDataList(params); + }else if (markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.COUPON_VERIFY.getCode())){ + params.put("channelType", EnumCouponSendSendType.COUPON_VERIFY.getCode()); + list = wxCouponActionLogMapper.sceneDataList(params); + }else if (markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.C_ORDER.getCode())){ + params.put("channelType", EnumCouponSendSendType.C_ORDER.getCode()); + list = wxCouponActionLogMapper.sceneDataList(params); + }else { + list = new ArrayList(); } + Map countMap = new HashMap<>(); if(markingCouponDataReportDto.getType().equals(EnumCouponSendSendType.CAR_STOP.getCode())){ //停车 diff --git a/mallinkService/src/main/resources/mapper/WxCouponActionLogMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponActionLogMapper.xml index 1aefad002..c60c887f9 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponActionLogMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponActionLogMapper.xml @@ -94,9 +94,14 @@ (select Count(*) from wx_coupon_action_log c where DATE_FORMAT(create_time,'%m/%d')=xTime and c.channel_type=4 - and tenant_id=#{tenantId}) as microPaySendCount + and tenant_id=#{tenantId}) as microPaySendCount, + (select Count(*) from wx_coupon_action_log c + where DATE_FORMAT(create_time,'%m/%d')=xTime + and c.channel_type=5 + and tenant_id=#{tenantId}) as orderSendCount from wx_coupon_action_log where tenant_id=#{tenantId} + and channel_type in (2,3,4,5) and create_time >= #{startTime} and create_time <= #{endTime} group by xTime @@ -115,22 +120,15 @@ order by xTime desc - select DATE_FORMAT(create_time,'%Y-%m-%d') as xTime, (select Count(*) from wx_coupon_action_log c where DATE_FORMAT(create_time,'%Y-%m-%d')=xTime - and c.channel_type=2 - and tenant_id=#{tenantId} ) as parkSendCount, - (select Count(*) from wx_coupon_action_log c - where DATE_FORMAT(create_time,'%Y-%m-%d')=xTime - and c.channel_type=3 - and tenant_id=#{tenantId}) as verifySendCount, - (select Count(*) from wx_coupon_action_log c - where DATE_FORMAT(create_time,'%Y-%m-%d')=xTime - and c.channel_type=4 - and tenant_id=#{tenantId}) as microPaySendCount + and c.channel_type=#{channelType} + and tenant_id=#{tenantId} ) as sendCount from wx_coupon_action_log - where tenant_id=#{tenantId} + where tenant_id=#{tenantId} + and channel_type=#{channelType} and create_time >= #{startTime}