diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCardSpendMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCardSpendMapper.java index f22e66c3a..88f2cacf8 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCardSpendMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCardSpendMapper.java @@ -13,6 +13,9 @@ public interface WxCardSpendMapper extends CommonMapper { int findCount(WxCardSpend wxCardSpend); + List> getCountByBusinessId(WxCardSpend wxCardSpend); + List> getCountByBusinessIdAndSubId(WxCardSpend wxCardSpend); + List findCardSpendVoList(WxCardSpendVo wxCardSpend); List> sumCardSpendVoForMerchant(WxCardSpendVo wxCardSpend); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java index 20c02ef6c..eac6412c2 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java @@ -26,6 +26,8 @@ public interface WxCouponOrderMapper extends CommonMapper { //统一的计数接口 int findCount(WxCouponOrder wxCouponOrder); + List> getCountByBusinessId(WxCouponOrder wxCouponOrder); + List> getCountByBusinessIdAndSubId(WxCouponOrder wxCouponOrder); //统一额度统计接口 int queryPriceTotal(WxCouponOrder wxCouponOrder); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java index 24cbe3139..e7e3433f3 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java @@ -368,11 +368,25 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { WxBusiness business = new WxBusiness(); List list = wxBusinessMapper.findList(business); + List> cardSpendCountList = wxCardSpendMapper.getCountByBusinessId(wxCardSpend); + List> cardOrderCountList = wxCouponOrderMapper.getCountByBusinessId(wxCouponOrder); + list.stream().forEach(b->{ - wxCardSpend.setBusinessId(b.getId()); - wxCouponOrder.setBusinessId(b.getId()); - int count = wxCardSpendMapper.findCount(wxCardSpend); - count += wxCouponOrderMapper.findCount(wxCouponOrder); + int count = 0; + if(cardSpendCountList.size() > 0) { + for (Map cardSpendCount : cardSpendCountList) { + if (cardSpendCount.get("businessId").equals(b.getId().toString())) { + count += (Integer) cardSpendCount.get("buCount"); + } + } + } + if(cardOrderCountList.size() > 0) { + for (Map cardOrderCount : cardOrderCountList) { + if (cardOrderCount.get("business").equals(b.getId().toString())) { + count += (Integer) cardOrderCount.get("buCount"); + } + } + } if (count > 0) { EnumTag tag = null; if (b.getId().intValue() >= EnumBusiness.BUSINESS_ID1.getCode() && @@ -419,11 +433,25 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { subBusiness.setBusinessId(EnumBusiness.BUSINESS_ID1.getCode()); List list = wxSubBusinessMapper.findList(subBusiness); + List> cardSpendCountList = wxCardSpendMapper.getCountByBusinessId(wxCardSpend); + List> cardOrderCountList = wxCouponOrderMapper.getCountByBusinessId(wxCouponOrder); + list.stream().forEach(sb->{ - wxCardSpend.setSubBusinessId(sb.getId()); - wxCouponOrder.setSubBusinessId(sb.getId()); - int count = wxCardSpendMapper.findCount(wxCardSpend); - count += wxCouponOrderMapper.findCount(wxCouponOrder); + int count = 0; + if(cardSpendCountList.size() > 0) { + for (Map cardSpendCount : cardSpendCountList) { + if (cardSpendCount.get("subBusinessId").equals(sb.getId().toString())) { + count += (Integer) cardSpendCount.get("buCount"); + } + } + } + if(cardOrderCountList.size() > 0) { + for (Map cardOrderCount : cardOrderCountList) { + if (cardOrderCount.get("subBusiness").equals(sb.getId().toString())) { + count += (Integer) cardOrderCount.get("buCount"); + } + } + } if (count > 0) { EnumTag tag = null; if (sb.getId().intValue() >= EnumSubBusiness.SUB_BUSINESS_ID1.getCode() && diff --git a/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml b/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml index 726d958a5..6343c3840 100644 --- a/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml @@ -165,6 +165,94 @@ + + + + diff --git a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml index 11bd70c27..bb39ab356 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml @@ -329,6 +329,184 @@ + + + +