From 9bbd528db300cce1f373d1c2e812f67eb380cecd Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期三, 31 七月 2024 23:40:07 +0800
Subject: [PATCH] 修改bug
---
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java | 100 +++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 90 insertions(+), 10 deletions(-)
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java
index 48bb229..1aa37c2 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java
@@ -5,13 +5,18 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.goods.domain.MemberGoodsCollection;
+import com.ruoyi.goods.mapper.GoodsGroupPurchaseMapper;
+import com.ruoyi.goods.mapper.GoodsSeckillMapper;
import com.ruoyi.goods.mapper.GoodsSkuMapper;
import com.ruoyi.goods.mapper.MemberGoodsCollectionMapper;
import com.ruoyi.goods.service.IMemberGoodsCollectionService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.api.domain.AuctionGoods;
+import com.ruoyi.system.api.domain.GoodsGroupPurchase;
+import com.ruoyi.system.api.domain.GoodsSeckill;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.dto.AuctionCollectionDTO;
import com.ruoyi.system.api.domain.vo.AuctionGoodsListVO;
@@ -20,7 +25,10 @@
import javax.annotation.Resource;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
/**
* <p>
@@ -37,24 +45,35 @@
@Resource
private GoodsSkuMapper goodsSkuMapper;
+ @Resource
+ private GoodsSeckillMapper goodsSeckillMapper;
+
+
+ @Resource
+ private GoodsGroupPurchaseMapper goodsGroupPurchaseMapper;
+
@Override
public void saveGoodsCollection(AuctionCollectionDTO auctionCollectionDTO) {
- if (auctionCollectionDTO.getMemberId()!=null) {
+ if (auctionCollectionDTO.getMemberId()==null) {
throw new ServiceException("用户ID不能为空");
}
- if (auctionCollectionDTO.getState()!=null) {
+ if (auctionCollectionDTO.getState()==null) {
throw new ServiceException("类型不能为空");
}
LambdaQueryWrapper< MemberGoodsCollection> wrapper= Wrappers.lambdaQuery();
wrapper.eq(MemberGoodsCollection::getMemberId,auctionCollectionDTO.getMemberId());
wrapper.eq(MemberGoodsCollection::getTargetId,auctionCollectionDTO.getGoodsSkuId());
+ if (auctionCollectionDTO.getType()!=null){
+ wrapper.eq(MemberGoodsCollection::getType,auctionCollectionDTO.getType());
+ }
if (auctionCollectionDTO.getState()==1){
List<MemberGoodsCollection> list = this.list(wrapper);
if (list.size()==0){
MemberGoodsCollection m =new MemberGoodsCollection();
m.setMemberId(auctionCollectionDTO.getMemberId());
m.setTargetId(auctionCollectionDTO.getGoodsSkuId());
+ m.setType(auctionCollectionDTO.getType());
this.save(m);
}
}else{
@@ -70,23 +89,84 @@
@Override
public PageDTO<HomeGoodsSkuListVO> getGoodsCollectionList(AuctionCollectionDTO auctionCollectionDTO) {
+
+ Set<Long> goodsSkuIdList = null;
+ if (StringUtils.isNotEmpty(auctionCollectionDTO.getGoodsSkuName())) {
+ LambdaQueryWrapper<GoodsSku> wrapper= Wrappers.lambdaQuery();
+ wrapper.like(GoodsSku::getSkuName,auctionCollectionDTO.getGoodsSkuName());
+ wrapper.eq(GoodsSku::getDelFlag,0);
+ List<GoodsSku> page1 = goodsSkuMapper.selectList(wrapper);
+ goodsSkuIdList = page1.stream().map(GoodsSku::getId)
+ .collect(Collectors.toSet());
+ }
+
+
Page<HomeGoodsSkuListVO> page = new Page<>();
page.setSize(auctionCollectionDTO.getPageSize());
page.setCurrent(auctionCollectionDTO.getPageCurr());
LambdaQueryWrapper< MemberGoodsCollection> wrapper= Wrappers.lambdaQuery();
wrapper.eq(MemberGoodsCollection::getMemberId,auctionCollectionDTO.getMemberId());
+ if (StringUtils.isNotEmpty(auctionCollectionDTO.getGoodsSkuName())){
+ if (goodsSkuIdList.size()>0){
+ wrapper.in(MemberGoodsCollection::getTargetId,goodsSkuIdList);
+ }else{
+ goodsSkuIdList=new HashSet<>();
+ goodsSkuIdList.add(0L);
+ wrapper.in(MemberGoodsCollection::getTargetId,goodsSkuIdList);
+ }
+ }
List<MemberGoodsCollection> list = this.list(wrapper);
List<HomeGoodsSkuListVO> auctionGoodsVOS=new ArrayList<>();
for (MemberGoodsCollection auctionCollection:list){
- HomeGoodsSkuListVO auctionGoodsVO=new HomeGoodsSkuListVO();
- GoodsSku goodsSku = goodsSkuMapper.selectById(auctionCollection.getTargetId());
- auctionGoodsVO.setId(goodsSku.getId());
- auctionGoodsVO.setPrice(goodsSku.getPrice());
- auctionGoodsVO.setCoverPic(goodsSku.getCoverPic());
- auctionGoodsVO.setSkuName(goodsSku.getSkuName());
- auctionGoodsVO.setSoldQuantity(goodsSku.getSoldQuantity());
- auctionGoodsVO.setIsCollection(2);
+ if(auctionCollection.getType()==1){
+ HomeGoodsSkuListVO auctionGoodsVO=new HomeGoodsSkuListVO();
+ GoodsSku goodsSku = goodsSkuMapper.selectById(auctionCollection.getTargetId());
+ auctionGoodsVO.setId(goodsSku.getId());
+ auctionGoodsVO.setPrice(goodsSku.getPrice());
+ auctionGoodsVO.setCoverPic(goodsSku.getCoverPic());
+ auctionGoodsVO.setSkuName(goodsSku.getSkuName());
+ auctionGoodsVO.setSoldQuantity(goodsSku.getSoldQuantity());
+ auctionGoodsVO.setIsCollection(2);
+ auctionGoodsVO.setType(auctionCollection.getType());
+ auctionGoodsVOS.add(auctionGoodsVO);
+ } if(auctionCollection.getType()==3){
+ HomeGoodsSkuListVO auctionGoodsVO=new HomeGoodsSkuListVO();
+ GoodsSeckill goodsSeckill = goodsSeckillMapper.selectById(auctionCollection.getTargetId());
+ GoodsSku goodsSku = goodsSkuMapper.selectById(goodsSeckill.getGoodsSkuId());
+ auctionGoodsVO.setId(auctionCollection.getTargetId());
+ auctionGoodsVO.setPrice( goodsSeckill.getSeckillPrice());
+ auctionGoodsVO.setCoverPic(goodsSku.getCoverPic());
+ auctionGoodsVO.setSkuName(goodsSku.getSkuName());
+ auctionGoodsVO.setSoldQuantity(goodsSku.getSoldQuantity());
+ auctionGoodsVO.setIsCollection(2);
+ auctionGoodsVO.setStartStatus(goodsSeckill.getStartStatus());
+ auctionGoodsVO.setStartTime(goodsSeckill.getStartTime());
+ auctionGoodsVO.setEndTime(goodsSeckill.getEndTime());
+ auctionGoodsVO.setXiaosPrice(goodsSku.getPrice());
+ auctionGoodsVO.setType(auctionCollection.getType());
+ auctionGoodsVOS.add(auctionGoodsVO);
+ } if(auctionCollection.getType()==2){
+ GoodsGroupPurchase goodsGroupPurchase = goodsGroupPurchaseMapper.selectById(auctionCollection.getTargetId());
+ HomeGoodsSkuListVO auctionGoodsVO=new HomeGoodsSkuListVO();
+ if(goodsGroupPurchase!=null){
+ GoodsSku goodsSku = goodsSkuMapper.selectById(goodsGroupPurchase.getGoodsSkuId());
+ auctionGoodsVO.setId(auctionCollection.getTargetId());
+ auctionGoodsVO.setPrice(goodsGroupPurchase.getGroupPurchasePrice());
+ auctionGoodsVO.setCoverPic(goodsSku.getCoverPic());
+ auctionGoodsVO.setSkuName(goodsSku.getSkuName());
+ auctionGoodsVO.setSoldQuantity(goodsSku.getSoldQuantity());
+ auctionGoodsVO.setIsCollection(2);
+ auctionGoodsVO.setXiaosPrice(goodsSku.getPrice());
+ auctionGoodsVO.setStartTime(goodsGroupPurchase.getStartTime());
+ auctionGoodsVO.setEndTime(goodsGroupPurchase.getEndTime());
+ auctionGoodsVO.setXiaosPrice(goodsGroupPurchase.getGroupPurchasePrice());
+ auctionGoodsVO.setType(auctionCollection.getType());
+ auctionGoodsVOS.add(auctionGoodsVO);
+ }
+
+ }
+
}
page.setRecords(auctionGoodsVOS);
return PageDTO.of(page);
--
Gitblit v1.7.1