提交 b2ca4ac1 作者: xiaowang

订单赔偿

上级 a54dce78
......@@ -756,41 +756,53 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
if (!managerRes.getCode().equals(ResultEnum.SUCCESS.getResultCode())) {
return managerRes;
}
PayUavWalletVO payUavWalletVO = new PayUavWalletVO();
payUavWalletVO.setCashAmount(BigDecimal.ZERO);
// 获取损坏的金额
LeaseRefundOrderDO leaseRefundOrderDO = leaseOrderDao.selectGiveBackByOrderId(leaseOrderDO.getId(), OrderType.PFREC.getCode());
payUavWalletVO.setSalaryAmount(leaseRefundOrderDO.getModifiedDeposit());
payUavWalletVO.setRemark("租赁订单获赔,订单编号" + leaseOrderDO.getOrderNo());
payUavWalletVO.setOrderStatus(1800);
if (leaseRefundOrderDO != null && leaseRefundOrderDO.getModifiedDeposit() != null) {
handleModifiedDeposit(currentAccount, leaseOrderDO, managerRes, leaseRefundOrderDO);
}
// 为0时标识订单收益,否则就是修改状态
if (flag == 0) {
handleOrderIncome(currentAccount, leaseOrderDO, managerRes);
leaseOrderDao.updateLeaseOrderProportion(leaseOrderDO.getId(), UavOrderProportion.PROPORTION.intValue());
this.updateLeaseOrderStatus(orderId, LeaseOrderStatus.REMAIN_TO_BE_EVALUATED);
} else {
// 修改退款操状态
this.updateLeaseOrderStatus(leaseOrderDO.getId(), LeaseOrderStatus.CLOSE);
}
return ResultBody.success();
}
private ResultBody handleModifiedDeposit(BaseAccountDTO currentAccount, LeaseOrderDO leaseOrderDO, ResultBody managerRes, LeaseRefundOrderDO leaseRefundOrderDO) {
PayUavWalletVO payUavWalletVO = new PayUavWalletVO();
payUavWalletVO.setCashAmount(BigDecimal.ZERO);
payUavWalletVO.setSalaryAmount(leaseRefundOrderDO.getModifiedDeposit());
payUavWalletVO.setRemark("租赁订单获赔,订单编号" + leaseOrderDO.getOrderNo());
payUavWalletVO.setOrderStatus(1800);
payUavWalletVO.setUserAccountId((Integer) managerRes.getResult());
return handlePayUavWallet(currentAccount, payUavWalletVO, managerRes);
ResultBody resultIncomeBody = userAppApi.feignPayUavWallet(payUavWalletVO, currentAccount.getToken());
if (!resultIncomeBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())) {
return resultIncomeBody;
}
return ResultBody.success();
}
private void handleOrderIncome(BaseAccountDTO currentAccount, LeaseOrderDO leaseOrderDO, ResultBody managerRes) {
private ResultBody handleOrderIncome(BaseAccountDTO currentAccount, LeaseOrderDO leaseOrderDO, ResultBody managerRes) {
PayUavWalletVO payUavWalletVO = new PayUavWalletVO();
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);
}
payUavWalletVO.setCashAmount(BigDecimal.ZERO);
payUavWalletVO.setSalaryAmount(thirdAmount);
payUavWalletVO.setRemark("租赁订单收入,订单编号" + leaseOrderDO.getOrderNo());
payUavWalletVO.setOrderStatus(1500);
private ResultBody handlePayUavWallet(BaseAccountDTO currentAccount, PayUavWalletVO payUavWalletVO, ResultBody managerRes) {
payUavWalletVO.setUserAccountId((Integer) managerRes.getResult());
ResultBody resultIncomeBody = userAppApi.feignPayUavWallet(payUavWalletVO, currentAccount.getToken());
......@@ -799,9 +811,11 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
return resultIncomeBody;
}
leaseOrderDao.updateLeaseOrderProportion(leaseOrderDO.getId(), UavOrderProportion.PROPORTION.intValue());
return ResultBody.success();
}
private ResultBody moneyRefund(BigDecimal shareCashPledge, BigDecimal salaryCashPledge, BaseAccountDTO currentAccount, LeaseOrderDO leaseOrderDO) {
PayUavWalletVO refundUavWalletVO = new PayUavWalletVO();
refundUavWalletVO.setRemark("租赁押金退回");
......
......@@ -182,7 +182,7 @@ share_cash_pledge,salary_cash_pledge,other_pledge
WHERE
1 = 1
<if test="keyword != null">
and (lo.order_no = #{keyword} or order_name = #{keyword})
and (lo.order_no = #{keyword} or lo.order_name = CONCAT('%',#{keyword},'%'))
</if>
<if test="uid != null">
and lo.user_account_id = #{uid}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论