提交 8914e77e 作者: zhenjie

确认订单-抵扣云享金修改

上级 40734109
...@@ -543,12 +543,51 @@ public class UavOrderServiceImpl implements UavOrderService { ...@@ -543,12 +543,51 @@ public class UavOrderServiceImpl implements UavOrderService {
if (CollectionUtils.isEmpty(contractInfoDTOS) || !contractInfoDTOS.get(0).getSignStatus().equals(2)) { if (CollectionUtils.isEmpty(contractInfoDTOS) || !contractInfoDTOS.get(0).getSignStatus().equals(2)) {
return ResultBody.error("平台未签署合同"); return ResultBody.error("平台未签署合同");
} }
// 修改订单信息 // 意向订单扣除云享金
uavOrderDO.setOrderTotalAmount(uavOrderVO.getOrderTotalAmount()); if (uavOrderDO.getOrderType().equals(UavOrderType.SIGN.getCode())) {
uavOrderDO.setDeliveryTime(uavOrderVO.getDeliveryTime()); ResultBody<PayWalletDTO> payResInfo = userAppApi.getCurrentUserPayWalletInfo(currentAccount.getToken());
uavOrderDO.setSellerRemark(uavOrderVO.getSellerRemark()); PayWalletDTO payWalletDTO = payResInfo.getResult();
uavOrderDO.setStatusCode(UavOrderStatus.SIGN.getCode()); if (!payResInfo.getCode().equals(ResultEnum.SUCCESS.getResultCode()) || payWalletDTO == null){
uavOrderDao.updateUavOrder(uavOrderDO); return payResInfo;
}
// 要扣除的云享金
BigDecimal shareAmount = BigDecimal.ZERO;
BigDecimal otherAmount = BigDecimal.ZERO;
// 未支付完成的订单,有云享金则进行抵扣
if (payWalletDTO.getCashAmt().compareTo(BigDecimal.ZERO) > 0 && uavOrderVO.getOrderTotalAmount().compareTo(BigDecimal.ZERO) > 0) {
// 根据订单总额确认扣除多少云享金
if (uavOrderVO.getOrderTotalAmount().compareTo(payWalletDTO.getCashAmt()) >= 0) {
shareAmount = payWalletDTO.getCashAmt();
}else {
shareAmount = uavOrderVO.getOrderTotalAmount();
}
// 抵扣
if (shareAmount.compareTo(BigDecimal.ZERO) > 0 ) {
PayUavWalletVO payUavWalletVO = new PayUavWalletVO();
payUavWalletVO.setUserAccountId(uavOrderDO.getUserAccountId());
payUavWalletVO.setCashAmount(shareAmount);
// 佣金余额不做抵扣,设置为0
payUavWalletVO.setSalaryAmount(BigDecimal.ZERO);
payUavWalletVO.setOrderStatus(100);
payUavWalletVO.setRemark("商城确认订单抵扣");
ResultBody resultBody = userAppApi.feignPayUavWallet(payUavWalletVO, currentAccount.getToken());
if (!resultBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())){
return resultBody;
}
}
}
// 剩余待支付
otherAmount = otherAmount.add(uavOrderVO.getOrderTotalAmount().subtract(shareAmount));
// 修改订单信息
uavOrderDO.setOrderTotalAmount(uavOrderVO.getOrderTotalAmount());
uavOrderDO.setOtherAmount(otherAmount);
uavOrderDO.setShareAmount(shareAmount);
uavOrderDO.setDeliveryTime(uavOrderVO.getDeliveryTime());
uavOrderDO.setSellerRemark(uavOrderVO.getSellerRemark());
uavOrderDO.setStatusCode(UavOrderStatus.SIGN.getCode());
uavOrderDao.updateUavOrder(uavOrderDO);
}
return ResultBody.success(); return ResultBody.success();
} }
......
...@@ -96,6 +96,12 @@ ...@@ -96,6 +96,12 @@
<if test="orderTotalAmount != null"> <if test="orderTotalAmount != null">
order_total_amount = #{orderTotalAmount}, order_total_amount = #{orderTotalAmount},
</if> </if>
<if test="shareAmount != null">
share_amount = #{shareAmount},
</if>
<if test="otherAmount != null">
other_amount = #{otherAmount},
</if>
<if test="statusCode != null"> <if test="statusCode != null">
status_code = #{statusCode}, status_code = #{statusCode},
</if> </if>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论