From bf4b816ed20cd2552096dcb262027b2d2613c237 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Sun, 29 Mar 2020 16:52:09 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=85=8D=E8=B4=B9=E5=8D=A1][=E4=BF=AE?= =?UTF-8?q?=E6=94=B9]:=E5=85=8D=E8=B4=B9=E5=8D=A1=E4=B8=8D=E5=BA=94?= =?UTF-8?q?=E8=AF=A5=E8=BF=9B=E5=88=86=E8=B4=A6=E6=94=AF=E4=BB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/domain/po/WxCardInfo.java | 4 ++ .../service/impl/WxCardSpendServiceImpl.java | 37 ++++++++++--------- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCardInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCardInfo.java index 172354dd6..89a2ce960 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCardInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCardInfo.java @@ -58,5 +58,9 @@ public class WxCardInfo extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value = "是否支持转送(0:不支持,1支持)", name = "supportTransfer") private Integer supportTransfer; + public boolean isBuyed() { + return saleAmount > 0; + } + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCardSpendServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCardSpendServiceImpl.java index 64c0466c5..6decd9519 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCardSpendServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCardSpendServiceImpl.java @@ -246,27 +246,30 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { } if (payAccount.checkShare()) { - // 9. 分账 - try { - shareForCardPay(record, record.getCardId(), record.getOrderId(), record.getId()); - } catch (MallinkException e) { - logger.error(e.getMessage()); - if (ErrorCode.PROFIT_SHARING_NUM_UP_LIMIT.getCode() == e.getErrorCode() || - ErrorCode.PROFIT_SHARING_TIME_EXPIRED.getCode() == e.getErrorCode()) { - // 分账已到20次限制,后面只记录,不分账 - // 分账已过期,后面只记录,不分账 - logger.error("分账已到20次限制,后面只记录,无法分账"); - try { - creteMerchantSubsidy(record, curDate, idWorker, coupon, payment); - } catch (Exception ex) { - logger.error("分账已到20次限制,记录到结算表失败"); + if (cardInfo.isBuyed()) { + // 9. 有价卡分账 + try { + shareForCardPay(record, record.getCardId(), record.getOrderId(), record.getId()); + } catch (MallinkException e) { + logger.error(e.getMessage()); + if (ErrorCode.PROFIT_SHARING_NUM_UP_LIMIT.getCode() == e.getErrorCode() || + ErrorCode.PROFIT_SHARING_TIME_EXPIRED.getCode() == e.getErrorCode()) { + // 分账已到20次限制,后面只记录,不分账 + // 分账已过期,后面只记录,不分账 + logger.error("分账已到20次限制,后面只记录,无法分账"); + try { + creteMerchantSubsidy(record, curDate, idWorker, coupon, payment); + } catch (Exception ex) { + logger.error("分账已到20次限制,记录到结算表失败"); + } + } else { + throw new MallinkException(e.getErrorCode(), e.getMessage()); } - } else { - throw new MallinkException(e.getErrorCode(), e.getMessage()); } } } else { - if (cardInfo.getSaleAmount() > 0 && payment > 0) { + // 有价储值卡-补贴 + if (cardInfo.isBuyed() && payment > 0) { try { creteMerchantSubsidy(record, curDate, idWorker, coupon, payment); } catch (Exception ex) {