| | |
| | | import com.ruoyi.common.core.utils.page.PageDTO; |
| | | import com.ruoyi.system.api.constants.ConfigEnum; |
| | | import com.ruoyi.system.api.constants.NotificationTypeConstant; |
| | | import com.ruoyi.system.api.domain.AuctionGoods; |
| | | import com.ruoyi.system.api.domain.CustomConfig; |
| | | import com.ruoyi.system.api.domain.GoodsBrand; |
| | | import com.ruoyi.system.api.domain.GoodsCategory; |
| | | import com.ruoyi.system.api.domain.GoodsFlavorType; |
| | | import com.ruoyi.system.api.domain.GoodsSeries; |
| | | import com.ruoyi.system.api.domain.GoodsSku; |
| | | import com.ruoyi.system.api.domain.Member; |
| | | import com.ruoyi.system.api.domain.MemberAddress; |
| | | import com.ruoyi.system.api.domain.Order; |
| | | import com.ruoyi.system.api.domain.OrderAuctionBond; |
| | | import com.ruoyi.system.api.domain.WebsocketMessageDTO; |
| | | import com.ruoyi.system.api.domain.*; |
| | | import com.ruoyi.system.api.domain.dto.AuctionGoodsListDTO; |
| | | import com.ruoyi.system.api.domain.dto.AuctionGoodsListPageDTO; |
| | | import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO; |
| | |
| | | import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomDTO; |
| | | import com.ruoyi.system.api.domain.dto.OrderDTO; |
| | | import com.ruoyi.system.api.domain.dto.RefundDTO; |
| | | import com.ruoyi.system.api.domain.vo.AuctionGoodsListVO; |
| | | import com.ruoyi.system.api.domain.vo.AuctionGoodsinfoVO; |
| | | import com.ruoyi.system.api.domain.vo.GoodsInfoTitleValueVO; |
| | | import com.ruoyi.system.api.domain.vo.getHomeGoodsSkuXxiVO; |
| | | import com.ruoyi.system.api.domain.vo.*; |
| | | import com.ruoyi.system.api.feignClient.AuctionClient; |
| | | import com.ruoyi.system.api.feignClient.GoodsSkuClient; |
| | | import com.ruoyi.system.api.feignClient.MemberClient; |
| | |
| | | |
| | | @Override |
| | | public PageDTO<AuctionGoodsListVO> getWdAuctionSalesList(AuctionGoodsListDTO auctionGoodsListDTO) { |
| | | |
| | | MemberAuctionSalesroomDTO memberAuctionSalesroomDTO =new MemberAuctionSalesroomDTO(); |
| | | memberAuctionSalesroomDTO.setMemberId(auctionGoodsListDTO.getMemberId()); |
| | | List<OrderAuctionBond> data = orderClient.getAuctionGoodsOrderAuctionBondList(auctionGoodsListDTO, SecurityConstants.INNER).getData(); |
| | | Set<Long> goodsSkuIdList = null; |
| | | List<Long> goodsSkuIdList = null; |
| | | if (data.size()>0){ |
| | | goodsSkuIdList = data.stream().map(OrderAuctionBond::getAuctionGoodsId) |
| | | .collect(Collectors.toSet()); |
| | | .collect(Collectors.toList()); |
| | | }else { |
| | | Set<Long> goodsSkuIdList1 =new HashSet<>(); |
| | | List<Long> goodsSkuIdList1 =new ArrayList<>(); |
| | | goodsSkuIdList1.add(0L); |
| | | goodsSkuIdList=goodsSkuIdList1; |
| | | } |
| | | |
| | | AuctionGoodsListPageDTO auctionGoodsListPageDTO=new AuctionGoodsListPageDTO(); |
| | | if (goodsSkuIdList!=null){ |
| | | auctionGoodsListPageDTO.setGoodsSkuIdList(goodsSkuIdList); |
| | | |
| | | List<Long> goodsSkuIdList1 =null; |
| | | if (StringUtils.isNotEmpty(auctionGoodsListDTO.getGoodsSkuName())) { |
| | | List<GoodsSku> goodsSku = goodsSkuClient.getGoodsByName(auctionGoodsListDTO.getGoodsSkuName(), |
| | | SecurityConstants.INNER) |
| | | .getData(); |
| | | goodsSkuIdList1= goodsSku.stream().map(GoodsSku::getId) |
| | | .collect(Collectors.toList()); |
| | | } |
| | | |
| | | if (auctionGoodsListDTO.getStartStatus()!=4){ |
| | | if (auctionGoodsListDTO.getStartStatus()==0){ |
| | | auctionGoodsListPageDTO.setStartStatus(5); |
| | | |
| | | |
| | | Page<AuctionGoods> page = new Page<>(auctionGoodsListDTO.getPageCurr(), |
| | | auctionGoodsListDTO.getPageSize()); |
| | | LambdaQueryWrapper<AuctionGoods> wrapper1=Wrappers.lambdaQuery(); |
| | | if (goodsSkuIdList.size()>0){ |
| | | wrapper1.in(AuctionGoods::getId,goodsSkuIdList); |
| | | } |
| | | if (StringUtils.isNotEmpty(auctionGoodsListDTO.getGoodsSkuName())) { |
| | | if (goodsSkuIdList1.size()>0){ |
| | | wrapper1.in(AuctionGoods::getGoodsSkuId,goodsSkuIdList1); |
| | | }else{ |
| | | auctionGoodsListPageDTO.setStartStatus(auctionGoodsListDTO.getStartStatus()); |
| | | goodsSkuIdList1=new ArrayList<>(); |
| | | goodsSkuIdList1.add(0L); |
| | | wrapper1.in(AuctionGoods::getGoodsSkuId,goodsSkuIdList1); |
| | | } |
| | | |
| | | } |
| | | if (auctionGoodsListDTO.getStartStatus() != 4) { |
| | | wrapper1.eq(AuctionGoods::getStartStatus,auctionGoodsListDTO.getStartStatus()); |
| | | } |
| | | wrapper1.last("ORDER BY\n" + |
| | | " CASE\n" + |
| | | " WHEN start_status = 0 THEN 2\n" + |
| | | " WHEN start_status = 1 THEN 1\n" + |
| | | " WHEN start_status = 2 THEN 3\n" + |
| | | " END,start_status asc "); |
| | | |
| | | Page<AuctionGoodsListVO> page = new Page<>(); |
| | | page.setSize(auctionGoodsListDTO.getPageSize()); |
| | | page.setCurrent(auctionGoodsListDTO.getPageCurr()); |
| | | List<AuctionGoods> auctionGoodsPgeList = auctionGoodsMapper.getAuctionGoodsPgeList1(page, auctionGoodsListPageDTO); |
| | | List<AuctionGoodsListVO> auctionGoodsVOS=new ArrayList<>(); |
| | | for (AuctionGoods auctionGoods:auctionGoodsPgeList){ |
| | | AuctionGoodsListVO auctionGoodsVO=new AuctionGoodsListVO(); |
| | | auctionGoodsVO.setAuctionStock(auctionGoods.getAuctionStock()); |
| | | auctionGoodsVO.setGoodsSkuId(auctionGoods.getId()); |
| | | auctionGoodsVO.setEndTime(auctionGoods.getEndTime()); |
| | | auctionGoodsVO.setStartTime(auctionGoods.getStartTime()); |
| | | auctionGoodsVO.setStartingPrice(auctionGoods.getStartingPrice()); |
| | | auctionGoodsVO.setStartStatus(auctionGoods.getStartStatus()); |
| | | GoodsSku goodsSkuOne = goodsSkuClient.getGoodsSkuOne(auctionGoods.getGoodsSkuId(), SecurityConstants.INNER).getData(); |
| | | Page<AuctionGoods> auctionSalesroomList=this.page(page,wrapper1); |
| | | PageDTO<AuctionGoodsListVO> wdMemberAuctionSalesroomVOPageDTO = PageDTO.of(auctionSalesroomList, AuctionGoodsListVO.class); |
| | | List<AuctionGoodsListVO> list = wdMemberAuctionSalesroomVOPageDTO.getList(); |
| | | for (AuctionGoodsListVO auctionGoodsVO:list){ |
| | | |
| | | GoodsSku goodsSkuOne = goodsSkuClient.getGoodsSkuOne(auctionGoodsVO.getGoodsSkuId(), SecurityConstants.INNER).getData(); |
| | | auctionGoodsVO.setUnit(goodsSkuOne.getUnit()); |
| | | auctionGoodsVO.setSpec(goodsSkuOne.getSpec()); |
| | | auctionGoodsVO.setSpecUnit(goodsSkuOne.getSpecUnit()); |
| | | auctionGoodsVO.setGoodsSkuName(goodsSkuOne.getSkuName()); |
| | | auctionGoodsVO.setCoverPic(goodsSkuOne.getCoverPic()); |
| | | |
| | | LambdaQueryWrapper<AuctionBidRecord> wrapper1= Wrappers.lambdaQuery(); |
| | | wrapper1.eq(AuctionBidRecord::getMemberId,auctionGoodsListDTO.getMemberId()); |
| | | wrapper1.eq(AuctionBidRecord::getAuctionType,1); |
| | | wrapper1.eq(AuctionBidRecord::getTargetId,auctionGoods.getId()); |
| | | wrapper1.eq(AuctionBidRecord::getDelFlag,0); |
| | | AuctionBidRecord list1 = auctionBidRecordService.getOne(wrapper1); |
| | | LambdaQueryWrapper<AuctionBidRecord> wrapper2= Wrappers.lambdaQuery(); |
| | | wrapper2.eq(AuctionBidRecord::getMemberId,auctionGoodsListDTO.getMemberId()); |
| | | wrapper2.eq(AuctionBidRecord::getAuctionType,1); |
| | | wrapper2.eq(AuctionBidRecord::getTargetId,auctionGoodsVO.getId()); |
| | | wrapper2.eq(AuctionBidRecord::getDelFlag,0); |
| | | AuctionBidRecord list1 = auctionBidRecordService.getOne(wrapper2); |
| | | if (list1!=null){ |
| | | if (list1.getStatus().getCode()==2){ |
| | | auctionGoodsVO.setIsStatus(2); |
| | |
| | | }else{ |
| | | auctionGoodsVO.setIsStatus(1); |
| | | } |
| | | |
| | | auctionGoodsVOS.add(auctionGoodsVO); |
| | | auctionGoodsVO.setGoodsSkuId(auctionGoodsVO.getId()); |
| | | |
| | | } |
| | | page.setRecords(auctionGoodsVOS); |
| | | return PageDTO.of(page); |
| | | return wdMemberAuctionSalesroomVOPageDTO; |
| | | } |
| | | |
| | | @Override |