|
|
|
@@ -959,7 +959,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { |
|
|
|
if (record.getShare().equals(EnumPayShare.NO.getCode())) { |
|
|
|
//结算记录 |
|
|
|
try { |
|
|
|
createMerchantSubsidy(record, order, new Date()); |
|
|
|
proxy.createMerchantSubsidy(record, order, new Date(),true); |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("收银台结算记录失败,{}", e.getMessage()); |
|
|
|
} |
|
|
|
@@ -1057,7 +1057,8 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public void createMerchantSubsidy(WxPayOrder record, WxOrder order, Date curDate) { |
|
|
|
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) |
|
|
|
public void createMerchantSubsidy(WxPayOrder record, WxOrder order, Date curDate,boolean freshMerchantCash) { |
|
|
|
final IdWorker idWorker = IdWorker.get(); |
|
|
|
WxMerchantSubsidy merchantSubsidy = new WxMerchantSubsidy(); |
|
|
|
merchantSubsidy.setId(idWorker.nextId()); |
|
|
|
@@ -1068,17 +1069,31 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { |
|
|
|
merchantSubsidy.setMerchantId(wxMerchantBUser.getMerchantId()); |
|
|
|
merchantSubsidy.setCouponOrderId(0L); |
|
|
|
merchantSubsidy.setCouponType(0); |
|
|
|
merchantSubsidy.setOrderPayment(record.getPayAmount()); |
|
|
|
merchantSubsidy.setReceiverPayment(record.getPayAmount()); |
|
|
|
merchantSubsidy.setRealPayment(record.getPayAmount()); |
|
|
|
merchantSubsidy.setSubsidy(record.getPayAmount()); |
|
|
|
merchantSubsidy.setRealSubsidy(record.getPayAmount()); |
|
|
|
if (null == record.getPayAmount()) { |
|
|
|
merchantSubsidy.setOrderPayment(order.getPayment()); |
|
|
|
merchantSubsidy.setReceiverPayment(order.getPayment()); |
|
|
|
merchantSubsidy.setRealPayment(order.getPayment()); |
|
|
|
merchantSubsidy.setSubsidy(order.getPayment()); |
|
|
|
merchantSubsidy.setRealSubsidy(order.getPayment()); |
|
|
|
}else { |
|
|
|
merchantSubsidy.setOrderPayment(record.getPayAmount()); |
|
|
|
merchantSubsidy.setReceiverPayment(record.getPayAmount()); |
|
|
|
merchantSubsidy.setRealPayment(record.getPayAmount()); |
|
|
|
merchantSubsidy.setSubsidy(record.getPayAmount()); |
|
|
|
merchantSubsidy.setRealSubsidy(record.getPayAmount()); |
|
|
|
} |
|
|
|
merchantSubsidy.setCreateDate(curDate); |
|
|
|
merchantSubsidy.setUpdateDate(curDate); |
|
|
|
merchantSubsidy.setStatus(EnumMerchantSubsidyStatus.NOT_SUBSIDY.getCode()); |
|
|
|
merchantSubsidy.setType(EnumMerchantSubsidyType.WECHAT.getCode()); |
|
|
|
merchantSubsidy.setSource(EnumMerchantSubsidySource.CASHIER.getCode()); |
|
|
|
wxMerchantSubsidyMapper.insert(merchantSubsidy); |
|
|
|
|
|
|
|
if (freshMerchantCash) { |
|
|
|
WxMerchant merchant = wxMerchantMapper.selectById(wxMerchantBUser.getMerchantId()); |
|
|
|
merchant.setCashOutNumber(merchantSubsidy.getRealPayment()); |
|
|
|
wxMerchantMapper.increaseCash(merchant); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
|