package com.ruoyi.auction.service.impl;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.ruoyi.auction.controller.management.dto.AuctionGoodsQuery;
|
import com.ruoyi.auction.controller.management.vo.AuctionGoodsVO;
|
import com.ruoyi.auction.domain.pojo.AuctionGoods;
|
import com.ruoyi.auction.mapper.AuctionGoodsMapper;
|
import com.ruoyi.auction.service.IAuctionGoodsService;
|
import com.ruoyi.common.core.utils.StringUtils;
|
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;
|
|
/**
|
* <p>
|
* 拍卖商品表 服务实现类
|
* </p>
|
*
|
* @author mitao
|
* @since 2024-05-16
|
*/
|
@Slf4j
|
@Service
|
@RequiredArgsConstructor
|
public class AuctionGoodsServiceImpl extends ServiceImpl<AuctionGoodsMapper, AuctionGoods> implements IAuctionGoodsService {
|
|
private final GoodsSkuClient goodsSkuClient;
|
|
@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());
|
}
|
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 null;
|
}
|
}
|