package com.ruoyi.other.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.ruoyi.other.api.domain.Goods;
|
import com.ruoyi.other.api.domain.GoodsShop;
|
import com.ruoyi.other.api.domain.SeckillActivityInfo;
|
import com.ruoyi.other.api.domain.Shop;
|
import com.ruoyi.other.mapper.GoodsShopMapper;
|
import com.ruoyi.other.mapper.SeckillActivityInfoMapper;
|
import com.ruoyi.other.mapper.ShopMapper;
|
import com.ruoyi.other.service.SeckillActivityInfoService;
|
import com.ruoyi.other.vo.SeckillActivityDetailVO;
|
import com.ruoyi.other.vo.SeckillActivityVO;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
/**
|
* <p>
|
* 服务实现类
|
* </p>
|
*
|
* @author luodangjia
|
* @since 2024-11-20
|
*/
|
@Service
|
public class SeckillActivityInfoServiceImpl extends ServiceImpl<SeckillActivityInfoMapper, SeckillActivityInfo> implements SeckillActivityInfoService {
|
@Resource
|
private SeckillActivityInfoMapper seckillActivityInfoMapper;
|
@Resource
|
private GoodsShopMapper goodsShopMapper;
|
@Resource
|
private ShopMapper shopMapper;
|
|
@Override
|
public List<SeckillActivityVO> listSeckillActivity(Goods goods) {
|
return seckillActivityInfoMapper.listSeckillActivity(goods);
|
}
|
|
@Override
|
public SeckillActivityDetailVO detail(Integer seckillActivityId) {
|
SeckillActivityDetailVO seckillActivityDetailVO = seckillActivityInfoMapper.selectDetail(seckillActivityId);
|
Long goodsId = seckillActivityDetailVO.getGoodsId();
|
|
List<Integer> shopIdList = goodsShopMapper.selectList(new LambdaQueryWrapper<GoodsShop>()
|
.eq(GoodsShop::getGoodsId, goodsId)).stream().map(GoodsShop::getShopId).collect(Collectors.toList());
|
|
List<String> shopNames = shopMapper.selectObjs(new LambdaQueryWrapper<Shop>()
|
.select(Shop::getName)
|
.in(Shop::getId, shopIdList))
|
.stream()
|
.map(Object::toString)
|
.collect(Collectors.toList());
|
seckillActivityDetailVO.setShopList(shopNames);
|
return seckillActivityDetailVO;
|
}
|
}
|