|
@@ -383,6 +383,8 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
|
|
|
|
|
private final GptUserRechargeRecordService gptUserRechargeRecordService;
|
|
private final GptUserRechargeRecordService gptUserRechargeRecordService;
|
|
|
|
|
|
|
|
|
|
+ private final UserBalanceSourceRecordMapper userBalanceSourceRecordMapper;
|
|
|
|
|
+
|
|
|
private final List<String> noChekGoodsTemp = List.of("Apple One", "Youtube", "Spotify");
|
|
private final List<String> noChekGoodsTemp = List.of("Apple One", "Youtube", "Spotify");
|
|
|
|
|
|
|
|
@Transactional(rollbackFor = Throwable.class)
|
|
@Transactional(rollbackFor = Throwable.class)
|
|
@@ -3138,6 +3140,9 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
if (orderDon.getGoodsId() == Constant.GPT_PLUS_GID && sku.getNum() == 1) {
|
|
if (orderDon.getGoodsId() == Constant.GPT_PLUS_GID && sku.getNum() == 1) {
|
|
|
incrGroupsRelationRechargeRemainIfRecharge(orderDon.getRelationId(), sku.getMonths(), orderDon.getOrderType());
|
|
incrGroupsRelationRechargeRemainIfRecharge(orderDon.getRelationId(), sku.getMonths(), orderDon.getOrderType());
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ //查看该订单是否有关闭的余额
|
|
|
|
|
+ deductIfCloseOrderReturnBalance(orderDon.getId(), UserBalanceSourceRecord.Source.order_close);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void handleUserMirrorSHopOrderDon(OrderDon orderDon) throws Exception {
|
|
private void handleUserMirrorSHopOrderDon(OrderDon orderDon) throws Exception {
|
|
@@ -4264,6 +4269,8 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
|
|
|
|
|
//银河币返回
|
|
//银河币返回
|
|
|
returnUpgradeGalaxyCoin(orderDon);
|
|
returnUpgradeGalaxyCoin(orderDon);
|
|
|
|
|
+ //查看该订单是否有关闭的余额
|
|
|
|
|
+ deductIfCloseOrderReturnBalance(orderDon.getId(), UserBalanceSourceRecord.Source.upgrade_close);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void returnUpgradeGalaxyCoin(UpgradeOrderDon orderDon) {
|
|
private void returnUpgradeGalaxyCoin(UpgradeOrderDon orderDon) {
|
|
@@ -4320,7 +4327,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
upgradeOrderDonMapper.updateById(orderDon);
|
|
upgradeOrderDonMapper.updateById(orderDon);
|
|
|
//返还余额
|
|
//返还余额
|
|
|
if (orderDon.getBalance().compareTo(BigDecimal.ZERO) > 0) {
|
|
if (orderDon.getBalance().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
- userBenefitsService.addUserBalance(orderDon.getUserId(), orderDon.getBalance(), null, null, null, null, false);
|
|
|
|
|
|
|
+ userBenefitsService.addUserBalance(orderDon.getUserId(), orderDon.getBalance(), UserBalanceSourceRecord.Source.upgrade_close, null, orderId, UserBalanceSourceRecord.Source.upgrade_close.getDesc(), true);
|
|
|
}
|
|
}
|
|
|
//返回银河币
|
|
//返回银河币
|
|
|
UserGalaxyCoinRecord userGalaxyCoinRecord = userGalaxyCoinRecordMapper.selectOne(Wrappers.lambdaQuery(UserGalaxyCoinRecord.class)
|
|
UserGalaxyCoinRecord userGalaxyCoinRecord = userGalaxyCoinRecordMapper.selectOne(Wrappers.lambdaQuery(UserGalaxyCoinRecord.class)
|
|
@@ -5219,4 +5226,17 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 存在关闭订单退款余额的记录
|
|
|
|
|
+ */
|
|
|
|
|
+ private void deductIfCloseOrderReturnBalance(Long orderId, UserBalanceSourceRecord.Source source) {
|
|
|
|
|
+ UserBalanceSourceRecord userBalanceSourceRecord = userBalanceSourceRecordMapper.selectOne(Wrappers.lambdaQuery(UserBalanceSourceRecord.class).eq(UserBalanceSourceRecord::getOrderId, orderId).eq(UserBalanceSourceRecord::getSource, source).last("limit 1"));
|
|
|
|
|
+ if (userBalanceSourceRecord != null) {
|
|
|
|
|
+ BigDecimal balance = userBalanceSourceRecord.getBalance();
|
|
|
|
|
+ //扣除余额并删除记录
|
|
|
|
|
+ userBenefitsService.deductUserBalance(userBalanceSourceRecord.getUserId(), balance);
|
|
|
|
|
+ userBalanceSourceRecordMapper.deleteById(userBalanceSourceRecord.getId());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|