From 67f5964597aacb21c5f66a116e469aa933b80ed0 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Fri, 29 Mar 2019 13:55:54 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=8B=BC=E5=9B=A2][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E5=BE=85=E6=94=AF=E4=BB=98]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/iformall/mapper/WxOrderMapper.java | 2 ++ .../java/com/iformall/service/WxOrderService.java | 2 ++ .../service/impl/WxCouponChannelServiceImpl.java | 15 ++++++++------- .../iformall/service/impl/WxOrderServiceImpl.java | 13 ++++++++++++- .../src/main/resources/mapper/WxOrderMapper.xml | 8 ++++++++ 5 files changed, 32 insertions(+), 8 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java index 2cf358926..4423e0163 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java @@ -48,4 +48,6 @@ public interface WxOrderMapper extends CommonMapper { void updateOrderGroupStatusByCouponId(WxOrder updateOrder); + void updateOrderGroupStatusByCouponChannelId(WxOrder updateOrder); + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java index 28ab52102..a3fdb80cd 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java @@ -163,4 +163,6 @@ public interface WxOrderService { void updateOrderGroupStatusByCouponId(Long id, String tenantId, Integer code); + void updateOrderGroupStatusByCouponChannelId(Long id, String tenantId, Integer code); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java index ccd88f487..0d3727a7e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java @@ -1,17 +1,12 @@ package com.iformall.service.impl; -import java.util.*; -import java.util.stream.Collectors; - import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.common.ErrorCode; -import com.iformall.common.Result; +import com.iformall.common.IdWorker; import com.iformall.common.ResultData; import com.iformall.domain.po.WxCoupon; import com.iformall.domain.po.WxCouponChannel; -import com.iformall.domain.po.WxCouponMerchant; -import com.iformall.domain.po.WxMerchant; import com.iformall.domain.vo.WxCouponCVo; import com.iformall.domain.vo.WxCouponChannelAddVo; import com.iformall.domain.vo.WxCouponChannelVo; @@ -22,12 +17,14 @@ import com.iformall.mapper.WxCouponMerchantMapper; import com.iformall.mapper.WxMerchantMapper; import com.iformall.service.WxCouponChannelService; import com.iformall.service.WxCouponService; +import com.iformall.service.WxOrderService; import com.iformall.service.WxScreenAdService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.iformall.common.IdWorker; + +import java.util.*; @Service public class WxCouponChannelServiceImpl implements WxCouponChannelService { @@ -43,6 +40,8 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { WxCouponMerchantMapper wxCouponMerchantMapper; @Autowired WxScreenAdService wxScreenAdService; + @Autowired + WxOrderService wxOrderService; /** * B端业务端 * @param record @@ -97,6 +96,8 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { if (orignal.getStatus().equals(EnumCouponChannelStatus.STATUS_THROW_IN.getCode()) && record.getStatus().equals(EnumCouponChannelStatus.STATUS_TAKE_OFFF.getCode())) { wxScreenAdService.updateStatusByCouponChannelId(record.getId(),record.getTenantId(),EnumScreenAdStatus.INVALID.getCode()); + //下架拼团券 + wxOrderService.updateOrderGroupStatusByCouponChannelId(record.getId(), record.getTenantId(), EnumOrderStatus.ORDER_STATUS_COOPERATING_CANCEL.getCode()); } } wxCouponChannelMapper.updateByPrimaryKeySelective(record); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 9b62bbf06..050578020 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -370,7 +370,8 @@ public class WxOrderServiceImpl implements WxOrderService { WxOrder order = new WxOrder(); order.setOrderGroupId(group.getId()); order.setCUserId(user.getId()); - int count = wxOrderMapper.selectCount(order); + order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_COOPERATING_UNPAID.getCode()); + long count = wxOrderMapper.selectCount(order); if (count > 0) { logger.error("重复的拼团>>>" + orderGroupId); throw new MallinkException(ErrorCode.ORDER_GROUP_COOPERATING_UNPAID); @@ -1045,6 +1046,16 @@ public class WxOrderServiceImpl implements WxOrderService { wxOrderMapper.updateOrderGroupStatusByCouponId(updateOrder); } + @Override + public void updateOrderGroupStatusByCouponChannelId(Long couponChannelId, String tenantId, Integer orderStatus) { + WxOrder updateOrder = new WxOrder(); + updateOrder.setTenantId(tenantId); + updateOrder.setOrderStatus(orderStatus); + updateOrder.setCouponChannelId(couponChannelId); + updateOrder.setUpdateDate(new Date()); + wxOrderMapper.updateOrderGroupStatusByCouponChannelId(updateOrder); + } + /** * 微信关闭订单 */ diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index 2494b2a88..29a522dea 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -211,6 +211,14 @@ + + update wx_order set order_status=#{orderStatus},update_date=#{updateDate} + where coupon_channel_id=#{couponChannelId} and order_status = 10 + + and `tenant_id` = #{tenantId} + + +