| @@ -489,15 +489,16 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| // 减库存 | // 减库存 | ||||
| int num = wxCouponMapper.reduceInventory(coupon.getId(), 1, coupon.getRemainInventory()); | int num = wxCouponMapper.reduceInventory(coupon.getId(), 1, coupon.getRemainInventory()); | ||||
| if (num == 0) { | if (num == 0) { | ||||
| // 解锁 | |||||
| redisLock.unlock(couponIdStr, timeStr); | |||||
| logger.error("此券减库存失败, couponId: " + couponIdStr); | logger.error("此券减库存失败, couponId: " + couponIdStr); | ||||
| throw new MallinkException(ErrorCode.ORDER_IS_FAIL); | throw new MallinkException(ErrorCode.ORDER_IS_FAIL); | ||||
| } | } | ||||
| } catch (RuntimeException e) { | } catch (RuntimeException e) { | ||||
| // 解锁 | |||||
| redisLock.unlock(couponIdStr, timeStr); | |||||
| logger.error("此券减库存失败, couponId: " + couponIdStr); | logger.error("此券减库存失败, couponId: " + couponIdStr); | ||||
| throw new MallinkException(ErrorCode.ORDER_IS_FAIL); | throw new MallinkException(ErrorCode.ORDER_IS_FAIL); | ||||
| } finally { | |||||
| //解锁 | |||||
| redisLock.unlock(couponIdStr, timeStr); | |||||
| } | } | ||||
| } | } | ||||