子单售后退错钱了

This commit is contained in:
Hawking 2023-04-20 23:05:22 +08:00
parent 5bd28dc039
commit 43aaede0b6
1 changed files with 5 additions and 2 deletions

View File

@ -175,13 +175,15 @@ public class AfterServiceRecordServiceImpl implements IAfterServiceRecordService
} else { } else {
refundMoney = afterServiceRecord.getRefund(); refundMoney = afterServiceRecord.getRefund();
} }
log.info("AfterServiceRecord[{}].refundMoney: {}", afterServiceRecord.getId(), refundMoney);
// 是不是大师傅的子单 // 是不是大师傅的子单
boolean isMaster = orderMaster.getWorkerId().equals(orderDetail.getWorkerId()); boolean isMaster = orderMaster.getWorkerId().equals(orderDetail.getWorkerId());
log.info("isMaster: {}", isMaster);
if (isMaster) { if (isMaster) {
// 如果这是大师傅的子单 退款金额最大可以等于主单服务金额 // 如果这是大师傅的子单 退款金额最大可以等于主单服务金额
// 判断退款金额 >= 主单服务金额 // 判断退款金额 >= 主单服务金额
boolean refundAll = refundMoney.compareTo(financialMaster.getServerMoney()) > -1; boolean refundAll = refundMoney.compareTo(financialMaster.getServerMoney()) > -1;
log.info("refundAll: {}", refundAll);
List<OrderDetail> orderDetails = orderDetailService.selectByOrderMasterId(orderMaster.getId()); List<OrderDetail> orderDetails = orderDetailService.selectByOrderMasterId(orderMaster.getId());
// 判断是否有派单给子师傅 // 判断是否有派单给子师傅
boolean noneSubWorker = true; boolean noneSubWorker = true;
@ -191,6 +193,7 @@ public class AfterServiceRecordServiceImpl implements IAfterServiceRecordService
break; break;
} }
} }
log.info("noneSubWorker: {}", noneSubWorker);
if (refundAll && noneSubWorker) { if (refundAll && noneSubWorker) {
// 如果退款金额 >= 主单服务金额 并且 没有派单给子师傅 则退整个主单 // 如果退款金额 >= 主单服务金额 并且 没有派单给子师傅 则退整个主单
orderMasterService.cancelAgree(orderMaster.getId(), 1); orderMasterService.cancelAgree(orderMaster.getId(), 1);
@ -238,7 +241,7 @@ public class AfterServiceRecordServiceImpl implements IAfterServiceRecordService
// 发起支付撤销 // 发起支付撤销
if (payReverse) { if (payReverse) {
String reverseAmt = AdapayUtils.bigDecimalToString(financialMaster.getServerMoney()); String reverseAmt = AdapayUtils.bigDecimalToString(refundMoney);
payReverse(orderMaster.getDeptId(), financialMaster.getPaymentId(), reverseAmt); payReverse(orderMaster.getDeptId(), financialMaster.getPaymentId(), reverseAmt);
} }