|
|
|
@@ -88,7 +88,9 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { |
|
|
|
} |
|
|
|
|
|
|
|
//锁住人数 |
|
|
|
boolean grouppeopleLock = redisLock.lock("grouppeopleLock_"+orderGroupId, String.valueOf(orderGroupId)); |
|
|
|
long time = System.currentTimeMillis() + RedisLock.LONG_TIMEOUT; |
|
|
|
String timeStr = String.valueOf(time); |
|
|
|
boolean grouppeopleLock = redisLock.lock("grouppeopleLock_"+orderGroupId, timeStr); |
|
|
|
if (!grouppeopleLock) { |
|
|
|
throw new MallinkException(ErrorCode.ORDER_GROUP_COOPERATING_FAILD.getCode(),"参团锁定失败,请稍后再试。"); |
|
|
|
} |
|
|
|
@@ -105,10 +107,10 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { |
|
|
|
//错误,更新状态,定时任务会发起退款,回滚库存 |
|
|
|
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_COOPERATING_UNPAID.getCode()); |
|
|
|
wxOrderMapper.updateById(order); |
|
|
|
redisLock.unlock("grouppeopleLock_"+orderGroupId, String.valueOf(orderGroupId)); |
|
|
|
redisLock.unlock("grouppeopleLock_"+orderGroupId, timeStr); |
|
|
|
throw new MallinkException(ErrorCode.ORDER_GROUP_COOPERATING_FAILD.getCode(),"参团失败,将稍后退款."); |
|
|
|
}else { |
|
|
|
redisLock.unlock("grouppeopleLock_"+orderGroupId, String.valueOf(orderGroupId)); |
|
|
|
redisLock.unlock("grouppeopleLock_"+orderGroupId, timeStr); |
|
|
|
} |
|
|
|
|
|
|
|
// 更新订单信息 |
|
|
|
|