From 8a9a6127b2a43e6583df037857a32e5132ba0a02 Mon Sep 17 00:00:00 2001 From: hanxueda Date: Fri, 26 Apr 2019 12:27:12 +0800 Subject: [PATCH] =?UTF-8?q?[=E7=A7=AF=E5=88=86][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E7=A7=AF=E5=88=86=E6=94=AF=E4=BB=98=E6=97=B6=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=B6=88=E8=B4=B9=E5=95=86=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/domain/po/WxCreditHistory.java | 2 -- .../impl/WxCreditHistoryServiceImpl.java | 12 ------- .../service/impl/WxOrderServiceImpl.java | 34 +++++++++++-------- 3 files changed, 20 insertions(+), 28 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java index e75ccef51..d1d54bf39 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java @@ -22,8 +22,6 @@ public class WxCreditHistory implements Serializable { protected List ids; @Transient protected String sortColumns; - @Transient - protected List merchantIds; @Transient @io.swagger.annotations.ApiModelProperty(value="开始时间",name="startTime") diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java index 09d97174d..5b03c2c0b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java @@ -189,8 +189,6 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { final IdWorker idWorker = IdWorker.get(); record.setId(idWorker.nextId()); record.setCreateDate(new Date()); - //根据merchantIds判断券对应的商户是否为多商户 来赋值merchantId - setMerchantId(record); wxCreditHistoryMapper.insertSelective(record); //将计算出来新的总积分 更新到两张用户表里 if (wxCUser != null) { @@ -212,16 +210,6 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { return record; } - private void setMerchantId(WxCreditHistory record) { - if (record.getMerchantIds() != null && record.getMerchantIds().size() > 0) { - if (record.getMerchantIds().size() == 1) { - record.setMerchantId(record.getMerchantIds().get(0)); - } else { - record.setMerchantId(Long.valueOf(EnumMerchantType.MERCHANT_MORE.getCode())); - } - } - } - @Override public void deleteById(Long id) { wxCreditHistoryMapper.deleteByPrimaryKey(id); 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 10aa91d13..c8166f27e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -432,7 +432,7 @@ public class WxOrderServiceImpl implements WxOrderService { if (user.getCredit() == null || user.getCredit() < coupon.getSalePrice()) { throw new MallinkException(ErrorCode.CREDIT_NOT_ENOUGH); } - //扣减积分操作记录 + //-------此处为【积分支付】记录增加积分操作------- WxCreditHistory creditHistory = new WxCreditHistory(); //记录操作人类型 操作人id if (user.getOperatorType() == EnumUserType.MALLUSER.getCode()) { @@ -448,6 +448,8 @@ public class WxOrderServiceImpl implements WxOrderService { creditHistory.setTenantId(user.getTenantId()); creditHistory.setCreditType(EnumScoreType.CHANGE_CREDIT.getCode()); creditHistory.setCouponId(couponId); + //如果券与商户一对一 则直接将消费商户更新为此商户 若一对多 则消费商户显示多商户 + setMerchantId(coupon, creditHistory); wxCreditHistoryService.saveOrUpdate(creditHistory); record.setType(EnumOrderType.CREDIT.getCode()); //积分支付时 变更订单状态为已支付 @@ -957,7 +959,7 @@ public class WxOrderServiceImpl implements WxOrderService { // 积分 计算 try { - //扣减积分操作记录 + //-------此处为【现金支付】记录增加积分操作------- WxCreditHistory creditHistory = new WxCreditHistory(); creditHistory.setOperatorType(EnumUserType.CUSER.getCode()); creditHistory.setOperatorId(user.getId()); @@ -969,18 +971,7 @@ public class WxOrderServiceImpl implements WxOrderService { creditHistory.setBusinessId(Long.valueOf(coupon.getBusiness())); creditHistory.setSpend(updateOrder.getPayment()); //如果券与商户一对一 则直接将消费商户更新为此商户 若一对多 则消费商户显示多商户 - WxCouponMerchant wxCouponMerchant = new WxCouponMerchant(); - wxCouponMerchant.setProductId(coupon.getId()); - wxCouponMerchant.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode()); - List list = wxCouponMerchantMapper.findList(wxCouponMerchant); - if (list != null && list.size() > 0) { - if (list.size() == 1) { - creditHistory.setMerchantId(list.get(0).getMerchantId()); - } - if (list.size() > 1) { - creditHistory.setMerchantId(Long.valueOf(EnumMerchantType.MERCHANT_MORE.getCode())); - } - } + setMerchantId(coupon, creditHistory); wxCreditHistoryService.saveOrUpdate(creditHistory); } catch (Exception e) { logger.error("积分值:" + e.getMessage()); @@ -988,6 +979,21 @@ public class WxOrderServiceImpl implements WxOrderService { return ret; } + private void setMerchantId(WxCoupon coupon, WxCreditHistory creditHistory) { + WxCouponMerchant wxCouponMerchant = new WxCouponMerchant(); + wxCouponMerchant.setProductId(coupon.getId()); + wxCouponMerchant.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode()); + List list = wxCouponMerchantMapper.findList(wxCouponMerchant); + if (list != null && list.size() > 0) { + if (list.size() == 1) { + creditHistory.setMerchantId(list.get(0).getMerchantId()); + } + if (list.size() > 1) { + creditHistory.setMerchantId(Long.valueOf(EnumMerchantType.MERCHANT_MORE.getCode())); + } + } + } + @Override @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public int microPayOrderSuccess(WxOrder updateOrder) {