提交 aa1d0eba 作者: xiaowang

订单赔偿

上级 d31e01ee
...@@ -758,30 +758,47 @@ public class LeaseOrderServiceImpl implements LeaseOrderService { ...@@ -758,30 +758,47 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
} }
PayUavWalletVO payUavWalletVO = new PayUavWalletVO(); PayUavWalletVO payUavWalletVO = new PayUavWalletVO();
payUavWalletVO.setCashAmount(BigDecimal.ZERO); payUavWalletVO.setCashAmount(BigDecimal.ZERO);
// 为0时标识订单收益,否则就是押金赔损 // 获取损坏的金额
LeaseRefundOrderDO leaseRefundOrderDO = leaseOrderDao.selectGiveBackByOrderId(leaseOrderDO.getId(), OrderType.PFREC.getCode());
payUavWalletVO.setSalaryAmount(leaseRefundOrderDO.getModifiedDeposit());
payUavWalletVO.setRemark("租赁订单获赔,订单编号" + leaseOrderDO.getOrderNo());
payUavWalletVO.setOrderStatus(1800);
// 为0时标识订单收益,否则就是修改状态
if (flag == 0) { if (flag == 0) {
BigDecimal orderTotalAmount = leaseOrderDO.getOrderTotalAmount().subtract(leaseOrderDO.getDeposit()); handleOrderIncome(currentAccount, leaseOrderDO, managerRes);
BigDecimal thirdAmount = orderTotalAmount.multiply(
BigDecimal.valueOf(100).subtract(UavOrderProportion.PROPORTION).divide(BigDecimal.valueOf(100)));
payUavWalletVO.setSalaryAmount(thirdAmount);
payUavWalletVO.setRemark("租赁订单收入,订单编号" + leaseOrderDO.getOrderNo());
payUavWalletVO.setOrderStatus(1500);
leaseOrderDao.updateLeaseOrderProportion(leaseOrderDO.getId(), UavOrderProportion.PROPORTION.intValue()); leaseOrderDao.updateLeaseOrderProportion(leaseOrderDO.getId(), UavOrderProportion.PROPORTION.intValue());
this.updateLeaseOrderStatus(orderId, LeaseOrderStatus.REMAIN_TO_BE_EVALUATED); this.updateLeaseOrderStatus(orderId, LeaseOrderStatus.REMAIN_TO_BE_EVALUATED);
} else { } else {
// 获取损坏的金额
LeaseRefundOrderDO leaseRefundOrderDO = leaseOrderDao.selectGiveBackByOrderId(leaseOrderDO.getId(), OrderType.PFREC.getCode());
payUavWalletVO.setSalaryAmount(leaseRefundOrderDO.getModifiedDeposit());
payUavWalletVO.setRemark("租赁订单获赔,订单编号" + leaseOrderDO.getOrderNo());
payUavWalletVO.setOrderStatus(1800);
// 修改退款操状态 // 修改退款操状态
this.updateLeaseOrderStatus(leaseOrderDO.getId(), LeaseOrderStatus.CLOSE); this.updateLeaseOrderStatus(leaseOrderDO.getId(), LeaseOrderStatus.CLOSE);
} }
return handlePayUavWallet(currentAccount, payUavWalletVO, managerRes);
}
private void handleOrderIncome(BaseAccountDTO currentAccount, LeaseOrderDO leaseOrderDO, ResultBody managerRes) {
BigDecimal orderTotalAmount = leaseOrderDO.getOrderTotalAmount().subtract(leaseOrderDO.getDeposit());
BigDecimal thirdAmount = orderTotalAmount.multiply(
BigDecimal.valueOf(100).subtract(UavOrderProportion.PROPORTION).divide(BigDecimal.valueOf(100)));
PayUavWalletVO payUavWallet = new PayUavWalletVO();
payUavWallet.setCashAmount(BigDecimal.ZERO);
payUavWallet.setSalaryAmount(thirdAmount);
payUavWallet.setRemark("租赁订单收入,订单编号" + leaseOrderDO.getOrderNo());
payUavWallet.setOrderStatus(1500);
handlePayUavWallet(currentAccount, payUavWallet, managerRes);
}
private ResultBody handlePayUavWallet(BaseAccountDTO currentAccount, PayUavWalletVO payUavWalletVO, ResultBody managerRes) {
payUavWalletVO.setUserAccountId((Integer) managerRes.getResult()); payUavWalletVO.setUserAccountId((Integer) managerRes.getResult());
ResultBody resultIncomeBody = userAppApi.feignPayUavWallet(payUavWalletVO, currentAccount.getToken()); ResultBody resultIncomeBody = userAppApi.feignPayUavWallet(payUavWalletVO, currentAccount.getToken());
if (!resultIncomeBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())) { if (!resultIncomeBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())) {
return resultIncomeBody; return resultIncomeBody;
} }
return ResultBody.success(); return ResultBody.success();
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论