From 25b17001d16b33e4663d452f85d0b9c1bd83323b Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 13 Jan 2022 01:09:23 +0800 Subject: [PATCH] =?UTF-8?q?/=E3=80=81send?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/WxCouponMerchantMapper.java | 1 + .../com/iformall/service/WxCouponService.java | 5 +++ .../service/impl/WxCouponSendServiceImpl.java | 7 +++- .../service/impl/WxCouponServiceImpl.java | 41 ++++++++++++++++--- .../mapper/WxCouponMerchantMapper.xml | 15 +++++++ 5 files changed, 63 insertions(+), 6 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCouponMerchantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCouponMerchantMapper.java index aabbde2b4..6986639f5 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCouponMerchantMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCouponMerchantMapper.java @@ -19,4 +19,5 @@ public interface WxCouponMerchantMapper extends CommonMapper findMerchantBaseList(@Param("productId")Long productId,@Param("tenantId")String tenantId); List findMerchantProduct(@Param("tenantId")String tenantId,@Param("merchantIdList")List merchantIdList); List findMerchantProductIds(@Param("tenantId")String tenantId,@Param("merchantIdList")List merchantIdList); + List findMerchantByProductIds(@Param("tenantId")String tenantId,@Param("productIds")List productIds); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxCouponService.java b/mallinkService/src/main/java/com/iformall/service/WxCouponService.java index 34181ef13..f8f4ba069 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCouponService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCouponService.java @@ -254,4 +254,9 @@ public interface WxCouponService { boolean validCouponDate(WxCoupon wxCoupon); + /** + * 获取券商户map + * + */ + Map getCouponMerchant(List couponIds,TenantEntity tenantEntity); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java index 20fbecdc1..c378c3094 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java @@ -32,6 +32,7 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.text.SimpleDateFormat; import java.util.*; +import java.util.stream.Collectors; @Service public class WxCouponSendServiceImpl implements WxCouponSendService { @@ -105,8 +106,12 @@ public class WxCouponSendServiceImpl implements WxCouponSendService { record.setStatus(EnumCouponSendStatus.VALID.getCode()); record.setSortColumns(BaseEntity.SortField.CreateDate_DESC); pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponSendMapper.findListVo(record)); - for (WxCouponSendVo cs:pageInfo.getList()) + List couponIds = pageInfo.getList().stream().map(cs -> cs.getCouponId()).collect(Collectors.toList()); + Map couponMerchantMap = wxCouponService.getCouponMerchant(couponIds,record); + for (WxCouponSendVo cs:pageInfo.getList()){ + cs.setMerchantName(couponMerchantMap.get(cs.getCouponId())); cs.setSendCount(wxCouponActionLogService.getCountByChannelId(record, cs.getSendType(), cs.getId())); + } } return pageInfo; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java index a4944d2e6..31c715cc1 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java @@ -14,11 +14,7 @@ import com.iformall.domain.dto.WxCouponMerchantDto; import com.iformall.domain.po.*; import com.iformall.domain.po.base.BaseEntity; import com.iformall.domain.po.base.TenantEntity; -import com.iformall.domain.vo.WxCUserBasicInfoVo; -import com.iformall.domain.vo.WxCouponCVo; -import com.iformall.domain.vo.WxCouponChannelVo; -import com.iformall.domain.vo.WxCouponStatisVo; -import com.iformall.domain.vo.WxMerchantVo; +import com.iformall.domain.vo.*; import com.iformall.domain.vo.excel.WxCardData; import com.iformall.domain.vo.excel.WxCouponData; import com.iformall.domain.vo.excel.WxPressData; @@ -967,5 +963,40 @@ public class WxCouponServiceImpl implements WxCouponService { return wxCoupon.validDate(isShare,true,new Date()); } + @Override + public Map getCouponMerchant(List couponIds, TenantEntity tenantEntity) { + Map couponMerchantMap = new HashMap(); + + List merchantIds = wxCouponMerchantMapper.findMerchantByProductIds(tenantEntity.getTenantId(),couponIds); + + WxMerchant merchantQ = new WxMerchant(); + merchantQ.updateTenantInfo(tenantEntity); + merchantQ.setIds(merchantIds); + List merchantList = wxMerchantMapper.findIdNameList(merchantQ); + Map merchantNameMap = new HashMap(); + if (null != merchantList) { + for (int i = 0 ; i < merchantList.size() ; i ++) { + WxMerchant m = merchantList.get(i); + merchantNameMap.put(m.getId(), m.getName()); + } + } + + List merchantProductVos = wxCouponMerchantMapper.findMerchantProduct(tenantEntity.getTenantId(), merchantIds); +// Map couponMerchantMap = new HashMap(); + if (null != merchantProductVos) { + for (int i = 0 ; i < merchantProductVos.size(); i ++) { + WxMerchantProductVo mp = merchantProductVos.get(i); + if(couponIds.contains(mp.getProductId())){ + if (mp.getMc() > 1) { + couponMerchantMap.put(mp.getProductId(), "多商户通用"); + }else { + couponMerchantMap.put(mp.getProductId(), merchantNameMap.get(mp.getMerchantId())); + } + } + } + } + return couponMerchantMap; + } + } diff --git a/mallinkService/src/main/resources/mapper/WxCouponMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponMerchantMapper.xml index ec9114635..4aa444bca 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponMerchantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponMerchantMapper.xml @@ -172,5 +172,20 @@ + +