From c26092c422c4b72fa5d51a38f6de1b48ab1ccd87 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 27 五月 2024 15:53:36 +0800 Subject: [PATCH] 提交普通拍品、资讯文章、商城商品收藏基础代码 --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java | 75 ++++++++++++++++++++++++++++++++++++- 1 files changed, 73 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java index a12c60c..d6b7aef 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java @@ -1,9 +1,24 @@ package com.ruoyi.auction.service.impl; -import com.ruoyi.auction.domain.pojo.AuctionGoods; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.auction.controller.management.dto.AuctionGoodsDTO; +import com.ruoyi.auction.controller.management.dto.AuctionGoodsQuery; +import com.ruoyi.auction.controller.management.vo.AuctionGoodsVO; +import com.ruoyi.auction.domain.AuctionGoods; import com.ruoyi.auction.mapper.AuctionGoodsMapper; import com.ruoyi.auction.service.IAuctionGoodsService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.common.core.utils.page.BeanUtils; +import com.ruoyi.common.core.utils.page.PageDTO; +import com.ruoyi.system.api.domain.GoodsSku; +import com.ruoyi.system.api.feignClient.GoodsSkuClient; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; /** @@ -14,7 +29,63 @@ * @author mitao * @since 2024-05-16 */ +@Slf4j @Service +@RequiredArgsConstructor public class AuctionGoodsServiceImpl extends ServiceImpl<AuctionGoodsMapper, AuctionGoods> implements IAuctionGoodsService { + private final GoodsSkuClient goodsSkuClient; + + /** + * 获取拍卖商品列表的分页数据 + * + * @param query 拍卖商品查询对象 + * @return PageDTO<AuctionGoodsVO> + */ + @Override + public PageDTO<AuctionGoodsVO> getAuctionGoodsPage(AuctionGoodsQuery query) { + Set<Long> goodsSkuIdList = null; + if (StringUtils.isNotEmpty(query.getGoodsSkuName())) { + List<GoodsSku> goodsSku = goodsSkuClient.getGoodsByName(query.getGoodsSkuName()) + .getData(); + goodsSkuIdList = goodsSku.stream().map(GoodsSku::getId) + .collect(Collectors.toSet()); + } + Page<AuctionGoods> page = this.lambdaQuery() + .select(AuctionGoods::getId, AuctionGoods::getGoodsSkuId, + AuctionGoods::getListingStatus, AuctionGoods::getStartStatus, + AuctionGoods::getStartTime, AuctionGoods::getEndTime, + AuctionGoods::getAuctionStock, AuctionGoods::getMinimumMarkupAmount).in( + StringUtils.isNotEmpty(goodsSkuIdList), AuctionGoods::getGoodsSkuId, + goodsSkuIdList).eq(StringUtils.isNotNull(query.getAuthentication()), + AuctionGoods::getAuthentication, query.getAuthentication()) + .eq(StringUtils.isNotNull(query.getListingStatus()), AuctionGoods::getListingStatus, + query.getListingStatus()) + .eq(StringUtils.isNotNull(query.getStartStatus()), AuctionGoods::getStartStatus, + query.getStartStatus()) + .page(new Page<>(query.getPageCurr(), query.getPageSize())); + return PageDTO.of(page, AuctionGoodsVO.class); + } + + @Override + public void saveAuctionGoods(AuctionGoodsDTO dto) { + Long id = dto.getId(); + Long goodsSkuId = dto.getGoodsSkuId(); + // 添加 + if (StringUtils.isNull(id)) { + if (StringUtils.isNull(goodsSkuId)) { + throw new ServiceException("商品id不能为空"); + } + GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(goodsSkuId).getData(); + if (StringUtils.isNull(goodsSku)) { + throw new ServiceException("商品不存在"); + } + AuctionGoods auctionGoods = BeanUtils.copyBean(dto, AuctionGoods.class); + this.save(auctionGoods); + + } else { + // 编辑 + + } + } } -- Gitblit v1.7.1