From 904d7c9596be23d812338b3956ae86fdae58aa65 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Fri, 14 Dec 2018 19:15:36 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=82=A8=E5=80=BC=E5=8D=A1][=E6=96=B0?= =?UTF-8?q?=E5=A2=9E]:=E8=B4=AD=E4=B9=B0=E5=82=A8=E5=80=BC=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WxOrderServiceImpl.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) 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 207c85efd..7590ea27e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -88,6 +88,9 @@ public class WxOrderServiceImpl implements WxOrderService { @Autowired WxCouponMerchantMapper wxCouponMerchantMapper; + @Autowired + WxCardInfoMapper wxCardInfoMapper; + @Override public PageInfo listAsPage(WxOrder record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderMapper.findList(record)); @@ -491,6 +494,35 @@ public class WxOrderServiceImpl implements WxOrderService { wxCouponOrderMapper.insertSelective(couponOrder); + /// 储值卡信息添加 + if(coupon.getType().equals(EnumCouponType.CARD_MULTIMCH.getCode())) { + WxPayOrder payOrder = null; + try { + WxPayOrder payOrderQ = new WxPayOrder(); + payOrderQ.setTenantId(user.getTenantId()); + payOrderQ.setOrderId(order.getId()); + payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); + payOrder = wxPayOrderMapper.selectOne(payOrderQ); + } catch (Exception e) { + logger.error("payOrder not found:" + e.getMessage()); + } + + Integer fee = payOrder.getPayAmount() - payOrder.getShareAmount(); + + WxCardInfo cardInfo = new WxCardInfo(); + cardInfo.setId(couponOrder.getId()); + cardInfo.setTransactionId(payOrder.getTransactionId()); + cardInfo.setAmount(coupon.getPrice()); + cardInfo.setRemainingAmount(coupon.getPrice()); + cardInfo.setServiceFeeAmount(fee); + cardInfo.setShareFeeAmount(payOrder.getShareAmount()); + cardInfo.setRemainingShareFeeAmount(payOrder.getShareAmount()); + cardInfo.setCreateDate(curr); + cardInfo.setUpdateDate(curr); + + wxCardInfoMapper.insertSelective(cardInfo); + } + wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_BUY, user); return couponOrder; }