gongzuming
2024-09-19 b61182b5c602d0bb4af7c68cb51dbfa1eb5a755f
src/main/java/com/mzl/flower/service/point/PointGoodsService.java
@@ -143,7 +143,7 @@
            if(!Constants.POINT_GOODS_STATUS.A.name().equals(p.getStatus())){
                throw new ValidationException("商品未上架");
            }
            if(p.getStock()< dto.getNum()){
            if(p.getStock() <=0 || p.getStock()< dto.getNum()){
                throw new ValidationException("商品库存不足");
            }
            CustomerPoint cp = customerPointMapper.selectOne(new LambdaQueryWrapper<CustomerPoint>()
@@ -190,8 +190,6 @@
            //更新库存
            p.setStock(p.getStock()- dto.getNum());
            pointGoodsMapper.updateById(p);
        }catch (Exception e){
            throw new ValidationException("兑换失败");
        }finally {
            lockService.releaseObjectLock(key,"");
        }
@@ -220,6 +218,7 @@
        record.setOrderId(orderId);
        pointGoodsRecordMapper.updateById(record);
    }
    public void revertExchangeGoods(Long recordId) {
        PointGoodsRecord record = pointGoodsRecordMapper.selectById(recordId);
        if(record == null){
@@ -228,7 +227,7 @@
        if(!Constants.POINT_GOODS_RECORD_STATUS.U.name().equals(record.getStatus())){
            throw new ValidationException("兑换券未使用或过期");
        }
        if(!SecurityUtils.getUserId().equals(record.getUserId())){
        if(SecurityUtils.getUserId() != null && !SecurityUtils.getUserId().equals(record.getUserId())){
            throw new ValidationException("兑换券不属于当前用户");
        }
        record.setStatus(Constants.POINT_GOODS_RECORD_STATUS.A.name());