增加子单金额的分账
This commit is contained in:
parent
18b6d5325d
commit
9a722c8da2
|
|
@ -621,8 +621,20 @@ public class OrderDetailServiceImpl implements OrderDetailService {
|
|||
// 子单的实际金额
|
||||
BigDecimal odMoney = financialDetail.getPayMoney().subtract(changeMoney);
|
||||
logger.info("子单的实际金额{}", odMoney);
|
||||
|
||||
|
||||
if (MoneyUtil.lte0(odMoney)) {
|
||||
ArrayList<DivMember> divMembers = new ArrayList<>();
|
||||
logger.info("子财务单[{}] 应支付金额={} 不需要分账", financialDetail.getId(), odMoney);
|
||||
divMembers.add(new DivMember("0", MoneyUtil.toS(payMoney), false));
|
||||
String orderNo = "OD_" + orderDetailId + "_" + System.currentTimeMillis();
|
||||
logger.info("子订单[{}]发起分账: {} 分账人员{}", orderDetailId, JSON.toJSONString(divMembers), orderDetail.getWorkerName());
|
||||
JSONObject response = adapayService.paymentConfirm(deptId, orderPayment.getId(), orderNo, MoneyUtil.toS(payMoney), divMembers, null, null);
|
||||
logger.info("子订单[{}]的分账结果: {}", orderDetailId, response.toString());
|
||||
boolean status = AdapayStatusEnum.succeeded.code.equals(response.getString("status"));
|
||||
// 如果确认支付失败 这里抛出异常 回滚订单状态
|
||||
Assert.isTrue(status, response.toString());
|
||||
// 分账成功 把罚金状态改为已扣除
|
||||
} else {
|
||||
// 查询师傅的超时扣款记录
|
||||
List<OrderTimeoutRecord> fineRecords = orderFineRecordMapper.selectUnFine(orderDetail.getWorkerId(), orderMaster.getDeptId());
|
||||
|
|
|
|||
Loading…
Reference in New Issue