无关风月
4 天以前 5de4a49148636dce6568d37e4c62039934b0a188
ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java
@@ -5,11 +5,13 @@
import com.ruoyi.common.core.constant.RedisConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.GlobalException;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.goods.domain.Recipient;
import com.ruoyi.goods.domain.TGoods;
import com.ruoyi.goods.domain.TOrder;
import com.ruoyi.goods.dto.GoodExchangeDTO;
import com.ruoyi.goods.dto.GoodsTypeQuery;
import com.ruoyi.goods.mapper.TGoodsMapper;
import com.ruoyi.goods.service.ITGoodsService;
import com.ruoyi.goods.service.ITOrderService;
@@ -25,6 +27,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.concurrent.TimeUnit;
@@ -49,10 +52,14 @@
    private ITOrderService orderService;
    @Resource
    private TokenService tokenService;
    @Override
    public List<TGoodsVO> goodRecommend(Integer userId) {
        return baseMapper.goodRecommend(userId);
    }
    @Override
    public TGoods getById1(Integer goodsId) {
        return this.baseMapper.getById1(goodsId);
    }
    @Override
@@ -229,7 +236,8 @@
            }
            boolean canBuy = good.getTotal() - item >= number;
            if (!canBuy) {
                throw new GlobalException("商品库存不足,兑换失败!");
                return R.exchangeError("商品库存不足,兑换失败!");
//                throw new GlobalException("商品库存不足,兑换失败!");
            }
            // 检查用户兑换数量是否超过单用户最大兑换数量
            List<TOrder> orderList = orderService.lambdaQuery().eq(TOrder::getUserId, user.getId())
@@ -338,6 +346,12 @@
        this.baseMapper.updateOne(dto);
    }
    @Override
    public List<TGoods> listAll(GoodsTypeQuery query, PageInfo<TGoods> res) {
        List<TGoods> list = this.baseMapper.listAll(query,res);
        return list;
    }
    private TOrder orderInfo(GoodExchangeDTO goodExchange, Recipient recipient, Integer number, Integer goodId, int needIntegral) {
        TOrder order = new TOrder();
        order.setOrderNumber(goodExchange.getOrderNumber());