diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCouponMerchant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCouponMerchant.java index 0625779a1..7ced2f6ba 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCouponMerchant.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCouponMerchant.java @@ -40,6 +40,9 @@ public class WxCouponMerchant implements Serializable { } + /**租户ID**/ + @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") + private String tenantId; /***/ @io.swagger.annotations.ApiModelProperty(value="",name="productId") private Long productId; @@ -62,6 +65,13 @@ public class WxCouponMerchant implements Serializable { private Integer status; + public String getTenantId() { + return tenantId; + } + + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } public Long getProductId() { return productId; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantSubsidy.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantSubsidy.java index c20097458..132b07a58 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantSubsidy.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantSubsidy.java @@ -20,7 +20,10 @@ public class WxMerchantSubsidy implements Serializable { protected List ids; @Transient protected String sortColumns; - + + /**租户ID**/ + @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") + private String tenantId; /**订单ID*/ @io.swagger.annotations.ApiModelProperty(value="订单ID",name="orderId") private Long orderId; @@ -66,6 +69,7 @@ public class WxMerchantSubsidy implements Serializable { public static enum Field { Id_ASC("`id` ASC"),Id_DESC("`id` DESC") + ,TenantId_ASC("`tenant_id` ASC"),TenantId_DESC("`tenant_id` DESC") ,OrderId_ASC("`order_id` ASC"),OrderId_DESC("`order_id` DESC") ,OrderType_ASC("`order_type` ASC"),OrderType_DESC("`order_type` DESC") ,MerchantId_ASC("`merchant_id` ASC"),MerchantId_DESC("`merchant_id` DESC") 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 abe166e80..497665a8b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCardSpendServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCardSpendServiceImpl.java @@ -66,6 +66,7 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { // 2. coupon 补贴 rate WxCouponMerchant couponMerchant = null; WxCouponMerchant couponMerchantQ = new WxCouponMerchant(); + couponMerchantQ.setTenantId(record.getTenantId()); couponMerchantQ.setProductId(cardInfo.getCouponId()); couponMerchantQ.setMerchantId(record.getMerchantId()); couponMerchantQ.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode()); @@ -141,6 +142,7 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { Integer realSubsidyFee = subsidyFee - dSubChargeFee.intValue(); WxMerchantSubsidy merchantSubsidy = new WxMerchantSubsidy(); merchantSubsidy.setId(idWorker.nextId()); + merchantSubsidy.setTenantId(record.getTenantId()); merchantSubsidy.setOrderId(order.getId()); merchantSubsidy.setOrderType(EnumOrderType.PREPAIDCARD.getCode()); merchantSubsidy.setMerchantId(record.getMerchantId()); @@ -161,7 +163,11 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { return new ResultData(ErrorCode.DB_FAIL.getCode(), "merchantSubsidy info 插入出错!"); } // 9. 分账 - + try { + shareForCardPay(record.getTenantId(), record.getCardId(), record.getOrderId(), record.getId()); + } catch (Exception e) { + logger.error("分账失败"); + } return new ResultData(record); } @@ -203,6 +209,7 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { int psNum = 0; try { WxCardSpend cardSpendQ = new WxCardSpend(); + cardSpendQ.setTenantId(tenantId); cardSpendQ.setCardId(cardId); psNum = wxCardSpendMapper.selectCount(cardSpendQ); if (psNum >= 20) { @@ -238,6 +245,11 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { shareOrder.setTransactionId(cardInfo.getTransactionId()); shareOrder.setShareAmount(cardSpend.getRealPayment()); profitSharingOrderService.createSharingOrder(shareOrder); + if(cardSpend.getCardRemainRealAmount() == 0) { + shareOrder.setPayAmount(cardInfo.getSaleAmount()); + shareOrder.setType(EnumProfitSharingOrderType.PROFIT_SHARING_FINISH.getCode()); + profitSharingOrderService.finishSharingOrder(shareOrder); + } } else { logger.error("微信分账: 未找到payorder or merchant at orderid-" + orderId); }