|
|
@@ -44,61 +44,66 @@ public class CancelTradeHandle {
|
|
|
private IAgentLeagueRecordService agentLeagueRecordService;
|
|
|
|
|
|
public void handle(SuccessParams successParams) throws ServiceException {
|
|
|
- Bills bills = successParams.getBills();
|
|
|
- synchronized (bills.getId().toString().intern()) {
|
|
|
- FrozenRec frozenRec = frozenRecService.getOne(Wrappers.<FrozenRec>lambdaQuery().eq(FrozenRec::getTradeNo, bills.getId()));
|
|
|
- UserChannelPoint channelPoint = userChannelPointService.getById(successParams.getChannelId());
|
|
|
+ Bills successParamsBills = successParams.getBills();
|
|
|
+ synchronized (successParams.getBills().getId().toString().intern()) {
|
|
|
|
|
|
- //修改用户冻结余额或积分
|
|
|
- LoginUser user = loginUserService.getById(bills.getPayId());
|
|
|
- if (ObjectUtils.isNotEmpty(user) && ObjectUtils.isNotEmpty(frozenRec)) {
|
|
|
- frozenRec.setFrozenSatus(FrozenSatus.RETURNED_FROZEN);
|
|
|
- if (Objects.equals(frozenRec.getFrozenType(), FrozenType.POINT)) {
|
|
|
- user.setChannelPoint(user.getChannelPoint().add(frozenRec.getFrozenNum()));
|
|
|
- user.setFrozenPoint(user.getFrozenPoint().subtract(frozenRec.getFrozenNum()));
|
|
|
- if (ObjectUtils.isNotEmpty(channelPoint)) {
|
|
|
- channelPoint.setAvailable(channelPoint.getAvailable().add(frozenRec.getFrozenNum()));
|
|
|
- userChannelPointService.saveOrUpdate(channelPoint);
|
|
|
+ Bills bills = billsService.getById(successParamsBills.getId());
|
|
|
+ if (ObjectUtils.isNotEmpty(bills) && !bills.getPayStatus().equals(AppConstant.BillPayStatus.取消付款.name())) {
|
|
|
+
|
|
|
+ FrozenRec frozenRec = frozenRecService.getOne(Wrappers.<FrozenRec>lambdaQuery().eq(FrozenRec::getTradeNo, bills.getId()));
|
|
|
+ UserChannelPoint channelPoint = userChannelPointService.getById(successParams.getChannelId());
|
|
|
+
|
|
|
+ //修改用户冻结余额或积分
|
|
|
+ LoginUser user = loginUserService.getById(bills.getPayId());
|
|
|
+ if (ObjectUtils.isNotEmpty(user) && ObjectUtils.isNotEmpty(frozenRec)) {
|
|
|
+ frozenRec.setFrozenSatus(FrozenSatus.RETURNED_FROZEN);
|
|
|
+ if (Objects.equals(frozenRec.getFrozenType(), FrozenType.POINT)) {
|
|
|
+ user.setChannelPoint(user.getChannelPoint().add(frozenRec.getFrozenNum()));
|
|
|
+ user.setFrozenPoint(user.getFrozenPoint().subtract(frozenRec.getFrozenNum()));
|
|
|
+ if (ObjectUtils.isNotEmpty(channelPoint)) {
|
|
|
+ channelPoint.setAvailable(channelPoint.getAvailable().add(frozenRec.getFrozenNum()));
|
|
|
+ userChannelPointService.saveOrUpdate(channelPoint);
|
|
|
+ }
|
|
|
+ } else if (Objects.equals(frozenRec.getFrozenType(), FrozenType.BALANCE)) {
|
|
|
+ user.setBalance(user.getBalance().add(frozenRec.getFrozenNum()));
|
|
|
+ user.setFrozenBalance(user.getFrozenBalance().subtract(frozenRec.getFrozenNum()));
|
|
|
}
|
|
|
- } else if (Objects.equals(frozenRec.getFrozenType(), FrozenType.BALANCE)) {
|
|
|
- user.setBalance(user.getBalance().add(frozenRec.getFrozenNum()));
|
|
|
- user.setFrozenBalance(user.getFrozenBalance().subtract(frozenRec.getFrozenNum()));
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- if (ObjectUtils.isNotEmpty(frozenRec)) {
|
|
|
- frozenRecService.saveOrUpdate(frozenRec);
|
|
|
+ if (ObjectUtils.isNotEmpty(frozenRec)) {
|
|
|
+ frozenRecService.saveOrUpdate(frozenRec);
|
|
|
+ }
|
|
|
+ loginUserService.saveOrUpdate(user);
|
|
|
}
|
|
|
- loginUserService.saveOrUpdate(user);
|
|
|
- }
|
|
|
- bills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
- billsService.saveOrUpdate(bills);
|
|
|
+ bills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
+ billsService.saveOrUpdate(bills);
|
|
|
|
|
|
- PointBills pointBills = pointBillsService.getById(successParams.getPointBillsId());
|
|
|
- if (ObjectUtils.isNotEmpty(pointBills)) {
|
|
|
- pointBills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
- pointBillsService.saveOrUpdate(pointBills);
|
|
|
- }
|
|
|
+ PointBills pointBills = pointBillsService.getById(successParams.getPointBillsId());
|
|
|
+ if (ObjectUtils.isNotEmpty(pointBills)) {
|
|
|
+ pointBills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
+ pointBillsService.saveOrUpdate(pointBills);
|
|
|
+ }
|
|
|
|
|
|
- BalanceBills balanceBills = balanceBillsService.getById(successParams.getBalanceBillsId());
|
|
|
- if (ObjectUtils.isNotEmpty(balanceBills)) {
|
|
|
- balanceBills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
- balanceBillsService.saveOrUpdate(balanceBills);
|
|
|
- }
|
|
|
+ BalanceBills balanceBills = balanceBillsService.getById(successParams.getBalanceBillsId());
|
|
|
+ if (ObjectUtils.isNotEmpty(balanceBills)) {
|
|
|
+ balanceBills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
+ balanceBillsService.saveOrUpdate(balanceBills);
|
|
|
+ }
|
|
|
|
|
|
- AgentLeagueRecord agentLeagueRecord = agentLeagueRecordService.getOne(Wrappers.<AgentLeagueRecord>lambdaQuery()
|
|
|
- .eq(AgentLeagueRecord::getTradeNo, successParams.getBills().getId()));
|
|
|
- if (ObjectUtils.isNotEmpty(agentLeagueRecord)) {
|
|
|
- agentLeagueRecord.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
- agentLeagueRecordService.saveOrUpdate(agentLeagueRecord);
|
|
|
- }
|
|
|
+ AgentLeagueRecord agentLeagueRecord = agentLeagueRecordService.getOne(Wrappers.<AgentLeagueRecord>lambdaQuery()
|
|
|
+ .eq(AgentLeagueRecord::getTradeNo, successParams.getBills().getId()));
|
|
|
+ if (ObjectUtils.isNotEmpty(agentLeagueRecord)) {
|
|
|
+ agentLeagueRecord.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
+ agentLeagueRecordService.saveOrUpdate(agentLeagueRecord);
|
|
|
+ }
|
|
|
|
|
|
- //取消商品订单
|
|
|
- GoodsBills goodsBills = goodsBillsService.getOne(Condition.getQueryWrapper(new GoodsBills()).lambda().eq(GoodsBills::getBillsId, bills.getId()));
|
|
|
- if (ObjectUtil.isNotEmpty(goodsBills)) {
|
|
|
- goodsBills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
- goodsBills.setOrderStatus(GoodsConstant.GOODS_STATUS.取消付款.name());
|
|
|
- goodsBillsService.updateById(goodsBills);
|
|
|
+ //取消商品订单
|
|
|
+ GoodsBills goodsBills = goodsBillsService.getOne(Condition.getQueryWrapper(new GoodsBills()).lambda().eq(GoodsBills::getBillsId, bills.getId()));
|
|
|
+ if (ObjectUtil.isNotEmpty(goodsBills)) {
|
|
|
+ goodsBills.setPayStatus(AppConstant.BillPayStatus.取消付款.name());
|
|
|
+ goodsBills.setOrderStatus(GoodsConstant.GOODS_STATUS.取消付款.name());
|
|
|
+ goodsBillsService.updateById(goodsBills);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|