|
@@ -299,24 +299,26 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
throw new BizException("订单金额异常");
|
|
|
}
|
|
|
|
|
|
- //重试避免人数过多频繁冲突
|
|
|
- boolean flag = false;
|
|
|
- for (int i = 1; i <= 10; i++) {
|
|
|
- chargeInfo = sporadicChargeInfoDao.get(sporadicPayDto.getSporadicId());
|
|
|
- if (chargeInfo.getMaxNum() != null && chargeInfo.getMaxNum() <= chargeInfo.getPaidNum()) {
|
|
|
- throw new BizException("活动人数暂时已满,请稍后再试");
|
|
|
+ if(chargeInfo.getMaxNum() != null) {
|
|
|
+ //重试避免人数过多频繁冲突
|
|
|
+ boolean flag = false;
|
|
|
+ for (int i = 1; i <= 10; i++) {
|
|
|
+ chargeInfo = sporadicChargeInfoDao.get(sporadicPayDto.getSporadicId());
|
|
|
+ if (chargeInfo.getMaxNum() <= chargeInfo.getPaidNum()) {
|
|
|
+ throw new BizException("活动人数暂时已满,请稍后再试");
|
|
|
+ }
|
|
|
+ chargeInfo.setPaidNum(chargeInfo.getPaidNum() + 1);
|
|
|
+ chargeInfo.setUpdateTime(new Date());
|
|
|
+ int update = sporadicChargeInfoDao.update(chargeInfo);
|
|
|
+ if (update > 0) {
|
|
|
+ flag = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
- chargeInfo.setPaidNum(chargeInfo.getPaidNum() + 1);
|
|
|
- chargeInfo.setUpdateTime(new Date());
|
|
|
- int update = sporadicChargeInfoDao.update(chargeInfo);
|
|
|
- if (update > 0) {
|
|
|
- flag = true;
|
|
|
- break;
|
|
|
+ if (!flag) {
|
|
|
+ throw new BizException("活动火爆,请稍后再试");
|
|
|
}
|
|
|
}
|
|
|
- if (!flag) {
|
|
|
- throw new BizException("活动火爆,请稍后再试");
|
|
|
- }
|
|
|
|
|
|
OrderTypeEnum type = OrderTypeEnum.SPORADIC;
|
|
|
if (chargeInfo.getChargeType().equals(SporadicChargeTypeEnum.DOUBLE_ELEVEN2020)) {
|