## Opt - 重复下单,保持上次金额不随机减
This commit is contained in:
parent
10e846a95f
commit
763e6b7e36
|
@ -1,5 +1,6 @@
|
|||
package com.hzs.third.pay.controller.api;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.hzs.activity.base.IActivityServiceApi;
|
||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
|
@ -126,51 +127,53 @@ public class PayController {
|
|||
}
|
||||
onlinePayment.setExtParam(payParam.getExtParam());
|
||||
|
||||
// 业务金额
|
||||
BigDecimal businessMoney = null;
|
||||
// 实际支付金额(随机立减之后)
|
||||
BigDecimal amount = null;
|
||||
if(ObjectUtil.isEmpty(onlinePayment.getPkId())){
|
||||
// 业务金额
|
||||
BigDecimal businessMoney = null;
|
||||
// 实际支付金额(随机立减之后)
|
||||
BigDecimal amount = null;
|
||||
|
||||
// 部分业务金额随机立减
|
||||
switch (payBusinessType) {
|
||||
case DIRECT_SELLING:
|
||||
// 直销订单
|
||||
R<BigDecimal> orderResult = iSaOrderServiceApi.querySaOrderByOrderCode(userId, payParam.getBusinessCode());
|
||||
if (orderResult.isSuccess()) {
|
||||
businessMoney = orderResult.getData();
|
||||
businessMoney = businessMoney.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
// 订单支付金额最后2角处理
|
||||
amount = PayUtil.handleAmountRandom(businessMoney);
|
||||
} else {
|
||||
return AjaxResult.error(orderResult.getMsg());
|
||||
}
|
||||
break;
|
||||
case RECHARGE:
|
||||
// 充值
|
||||
R<CuMemberRecharge> rechargeResult = iMemberTradeServiceApi.selectMemberRechargeByCodeAndPkMember(payParam.getBusinessCode(), userId);
|
||||
if (rechargeResult.isSuccess()) {
|
||||
businessMoney = rechargeResult.getData().getRechargeAmount();
|
||||
amount = PayUtil.handleAmountRandom(businessMoney);
|
||||
} else {
|
||||
return AjaxResult.error(rechargeResult.getMsg());
|
||||
}
|
||||
break;
|
||||
case LUCK:
|
||||
// 抽奖
|
||||
R<BigDecimal> luckResult = iActivityServiceApi.queryDrawRewardPayNumMoney(userId, payParam.getBusinessCode());
|
||||
if (luckResult.isSuccess()) {
|
||||
businessMoney = luckResult.getData();
|
||||
amount = businessMoney;
|
||||
} else {
|
||||
return AjaxResult.error(luckResult.getMsg());
|
||||
}
|
||||
break;
|
||||
default:
|
||||
// 部分业务金额随机立减
|
||||
switch (payBusinessType) {
|
||||
case DIRECT_SELLING:
|
||||
// 直销订单
|
||||
R<BigDecimal> orderResult = iSaOrderServiceApi.querySaOrderByOrderCode(userId, payParam.getBusinessCode());
|
||||
if (orderResult.isSuccess()) {
|
||||
businessMoney = orderResult.getData();
|
||||
businessMoney = businessMoney.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
// 订单支付金额最后2角处理
|
||||
amount = PayUtil.handleAmountRandom(businessMoney);
|
||||
} else {
|
||||
return AjaxResult.error(orderResult.getMsg());
|
||||
}
|
||||
break;
|
||||
case RECHARGE:
|
||||
// 充值
|
||||
R<CuMemberRecharge> rechargeResult = iMemberTradeServiceApi.selectMemberRechargeByCodeAndPkMember(payParam.getBusinessCode(), userId);
|
||||
if (rechargeResult.isSuccess()) {
|
||||
businessMoney = rechargeResult.getData().getRechargeAmount();
|
||||
amount = PayUtil.handleAmountRandom(businessMoney);
|
||||
} else {
|
||||
return AjaxResult.error(rechargeResult.getMsg());
|
||||
}
|
||||
break;
|
||||
case LUCK:
|
||||
// 抽奖
|
||||
R<BigDecimal> luckResult = iActivityServiceApi.queryDrawRewardPayNumMoney(userId, payParam.getBusinessCode());
|
||||
if (luckResult.isSuccess()) {
|
||||
businessMoney = luckResult.getData();
|
||||
amount = businessMoney;
|
||||
} else {
|
||||
return AjaxResult.error(luckResult.getMsg());
|
||||
}
|
||||
break;
|
||||
default:
|
||||
}
|
||||
// 更新业务金额
|
||||
onlinePayment.setBusinessMoney(businessMoney);
|
||||
// 暂存于实际支付金额(部分业务进行随机立减)
|
||||
onlinePayment.setPayMoney(amount);
|
||||
}
|
||||
// 更新业务金额
|
||||
onlinePayment.setBusinessMoney(businessMoney);
|
||||
// 暂存于实际支付金额(部分业务进行随机立减)
|
||||
onlinePayment.setPayMoney(amount);
|
||||
|
||||
// 结果实体
|
||||
R payResult = null;
|
||||
|
|
Loading…
Reference in New Issue