|
|
@@ -643,7 +643,7 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
if (coupon.getValidType().equals(EnumValidStatus.VALID_RANGE.getCode()) || |
|
|
if (coupon.getValidType().equals(EnumValidStatus.VALID_RANGE.getCode()) || |
|
|
coupon.getType().equals(EnumCouponType.COUPON_TINGCHE.getCode())) { |
|
|
coupon.getType().equals(EnumCouponType.COUPON_TINGCHE.getCode())) { |
|
|
valid_date = coupon.getValidEndDate(); |
|
|
valid_date = coupon.getValidEndDate(); |
|
|
if (coupon.getSalePrice() > 0) { |
|
|
|
|
|
|
|
|
if (coupon.getSalePrice() > 0 && !coupon.checkIsCard()) { |
|
|
// 有价券核销有效期不能大于分账过期时间 |
|
|
// 有价券核销有效期不能大于分账过期时间 |
|
|
Date limit_date = DateUtils.getTimeAfterDays(limit_days, curr); |
|
|
Date limit_date = DateUtils.getTimeAfterDays(limit_days, curr); |
|
|
if (valid_date.after(limit_date)) { |
|
|
if (valid_date.after(limit_date)) { |
|
|
@@ -651,7 +651,7 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
if (coupon.getSalePrice() > 0) { |
|
|
|
|
|
|
|
|
if (coupon.getSalePrice() > 0 && !coupon.checkIsCard()) { |
|
|
// 有价券核销有效期不能大于分账过期时间 |
|
|
// 有价券核销有效期不能大于分账过期时间 |
|
|
if (coupon.getValidDays() < Constant.WX_LIMIT_DAYS) { |
|
|
if (coupon.getValidDays() < Constant.WX_LIMIT_DAYS) { |
|
|
limit_days = coupon.getValidDays(); |
|
|
limit_days = coupon.getValidDays(); |
|
|
@@ -692,30 +692,37 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
/// 储值卡信息添加 |
|
|
/// 储值卡信息添加 |
|
|
if (isCard) { |
|
|
if (isCard) { |
|
|
WxPayOrder payOrder = null; |
|
|
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(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Integer fee = 0; |
|
|
WxCardInfo cardInfo = new WxCardInfo(); |
|
|
WxCardInfo cardInfo = new WxCardInfo(); |
|
|
cardInfo.setId(couponOrder.getId()); |
|
|
cardInfo.setId(couponOrder.getId()); |
|
|
cardInfo.setTenantId(user.getTenantId()); |
|
|
cardInfo.setTenantId(user.getTenantId()); |
|
|
cardInfo.setCouponId(order.getProductId()); |
|
|
cardInfo.setCouponId(order.getProductId()); |
|
|
cardInfo.setTransactionId(payOrder.getTransactionId()); |
|
|
|
|
|
cardInfo.setAmount(coupon.getPrice()); |
|
|
cardInfo.setAmount(coupon.getPrice()); |
|
|
cardInfo.setSaleAmount(coupon.getSalePrice()); |
|
|
cardInfo.setSaleAmount(coupon.getSalePrice()); |
|
|
cardInfo.setRemainingAmount(coupon.getPrice()); |
|
|
cardInfo.setRemainingAmount(coupon.getPrice()); |
|
|
|
|
|
|
|
|
|
|
|
if (!coupon.checkIsFree()) { |
|
|
|
|
|
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()); |
|
|
|
|
|
} |
|
|
|
|
|
fee = payOrder.getPayAmount() - payOrder.getShareAmount(); |
|
|
|
|
|
cardInfo.setTransactionId(payOrder.getTransactionId()); |
|
|
|
|
|
cardInfo.setShareFeeAmount(payOrder.getShareAmount()); |
|
|
|
|
|
cardInfo.setRemainingShareFeeAmount(payOrder.getShareAmount()); |
|
|
|
|
|
cardInfo.setRateAmount(payOrder.getRateAmount()); |
|
|
|
|
|
} else { |
|
|
|
|
|
cardInfo.setShareFeeAmount(0); |
|
|
|
|
|
cardInfo.setRemainingShareFeeAmount(0); |
|
|
|
|
|
cardInfo.setRateAmount(0); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
cardInfo.setServiceFeeAmount(fee); |
|
|
cardInfo.setServiceFeeAmount(fee); |
|
|
cardInfo.setShareFeeAmount(payOrder.getShareAmount()); |
|
|
|
|
|
cardInfo.setRemainingShareFeeAmount(payOrder.getShareAmount()); |
|
|
|
|
|
cardInfo.setRateAmount(payOrder.getRateAmount()); |
|
|
|
|
|
cardInfo.setCreateDate(curr); |
|
|
cardInfo.setCreateDate(curr); |
|
|
cardInfo.setUpdateDate(curr); |
|
|
cardInfo.setUpdateDate(curr); |
|
|
cardInfo.setSupportTransfer(coupon.getSupportTransfer()); |
|
|
cardInfo.setSupportTransfer(coupon.getSupportTransfer()); |
|
|
|