mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-15 07:18:31 +08:00
余额退款逻辑优化
This commit is contained in:
@@ -1126,15 +1126,15 @@ public class OrderService {
|
|||||||
log.info("支付撤销成功 data:{}", JSON.toJSONString(data));
|
log.info("支付撤销成功 data:{}", JSON.toJSONString(data));
|
||||||
JSONObject jsonObject = JSON.parseObject(data);
|
JSONObject jsonObject = JSON.parseObject(data);
|
||||||
JSONObject reason = jsonObject.getJSONObject("reason");
|
JSONObject reason = jsonObject.getJSONObject("reason");
|
||||||
if (ScenarioEnum.BALANCE.getValue().equals(reason.getString("scenarioType"))) {
|
// if (ScenarioEnum.BALANCE.getValue().equals(reason.getString("scenarioType"))) {
|
||||||
// 这笔支付订单原来是充值余额的,退款成功了,需要扣掉会员的本金金额
|
// // 这笔支付订单原来是充值余额的,退款成功了,需要扣掉会员的本金金额
|
||||||
UpdateMemberBalanceDTO dto = new UpdateMemberBalanceDTO();
|
// UpdateMemberBalanceDTO dto = new UpdateMemberBalanceDTO();
|
||||||
dto.setMemberId(reason.getString("memberId"));
|
// dto.setMemberId(reason.getString("memberId"));
|
||||||
dto.setUpdatePrincipalBalance(new BigDecimal(jsonObject.getString("reverse_amt"))); // 更新会员本金金额,单位元
|
// dto.setUpdatePrincipalBalance(new BigDecimal(jsonObject.getString("reverse_amt"))); // 更新会员本金金额,单位元
|
||||||
dto.setType(MemberWalletEnum.TYPE_OUT.getValue());
|
// dto.setType(MemberWalletEnum.TYPE_OUT.getValue());
|
||||||
dto.setSubType(MemberWalletEnum.SUBTYPE_USER_REFUND.getValue());
|
// dto.setSubType(MemberWalletEnum.SUBTYPE_USER_REFUND.getValue());
|
||||||
memberBasicInfoService.updateMemberBalance(dto);
|
// memberBasicInfoService.updateMemberBalance(dto);
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2380,6 +2380,14 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
throw new BusinessException(ReturnCodeEnum.CODE_REFUND_MEMBER_BALANCE_ERROR);
|
throw new BusinessException(ReturnCodeEnum.CODE_REFUND_MEMBER_BALANCE_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 扣余额
|
||||||
|
UpdateMemberBalanceDTO updateMemberBalanceDTO = new UpdateMemberBalanceDTO();
|
||||||
|
updateMemberBalanceDTO.setMemberId(dto.getMemberId());
|
||||||
|
updateMemberBalanceDTO.setUpdatePrincipalBalance(refundAmount); // 更新会员本金金额,单位元
|
||||||
|
updateMemberBalanceDTO.setType(MemberWalletEnum.TYPE_OUT.getValue());
|
||||||
|
updateMemberBalanceDTO.setSubType(MemberWalletEnum.SUBTYPE_USER_REFUND.getValue());
|
||||||
|
memberBasicInfoService.updateMemberBalance(updateMemberBalanceDTO);
|
||||||
|
|
||||||
// 查询用户充值余额订单 过滤掉已经退款的充值订单
|
// 查询用户充值余额订单 过滤掉已经退款的充值订单
|
||||||
List<BalanceDeductionAmountVO> list = calculateTheBalanceDeductionAmount(dto.getMemberId(), refundAmount);
|
List<BalanceDeductionAmountVO> list = calculateTheBalanceDeductionAmount(dto.getMemberId(), refundAmount);
|
||||||
for (BalanceDeductionAmountVO vo : list) {
|
for (BalanceDeductionAmountVO vo : list) {
|
||||||
|
|||||||
Reference in New Issue
Block a user