From 2a97ecf8833f24dfbd5bf251e1fc1bdb632bbefb Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 29 七月 2024 18:51:22 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java | 87 ++++++++++++++++++++++++++++++++++--------- 1 files changed, 69 insertions(+), 18 deletions(-) diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java index 0b030c6..a29074b 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java @@ -265,8 +265,8 @@ wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list); } wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId()); - wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum); wrapper2.orderByAsc(AuctionSalesroomGoods::getStatus); + wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum); wrapper2.eq(AuctionSalesroomGoods::getBackupStatus,false); List<AuctionSalesroomGoods> auctionSalesroomGoods2 = this.list(wrapper2); for (AuctionSalesroomGoods salesroomGoods:auctionSalesroomGoods2){ @@ -321,6 +321,11 @@ wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum); wrapper2.last("limit 1"); AuctionSalesroomGoods auctionSalesroomGoods = this.getOne(wrapper2); + + if (auctionSalesroomGoods==null){ + throw new ServiceException("以没有待拍卖商品"); + } + if(auctionSalesroomGoods!=null){ auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS); auctionSalesroomGoods.setStartTime(LocalDateTime.now()); @@ -373,16 +378,22 @@ } } - List<Long> list=new ArrayList<>(); + Set<Long> list=new HashSet<>(); LambdaQueryWrapper<AuctionBidRecord> wrapper = Wrappers.lambdaQuery(); wrapper.eq(AuctionBidRecord::getAuctionSalesroomId, ationSalesroomGoodsDTO.getAuctionSalesroomId()); wrapper.eq(AuctionBidRecord::getDelFlag, 0); - wrapper.eq(AuctionBidRecord::getStatus,0); + wrapper.eq(AuctionBidRecord::getStatus,2); List<AuctionBidRecord> auctionBidRecordList = auctionBidRecordMapper.selectList(wrapper); for (AuctionBidRecord auctionBidRecord:auctionBidRecordList){ list.add(auctionBidRecord.getMemberId()); } if (list.size()>0){ + OrderAuctionBondDTO orderAuctionBondDTO=new OrderAuctionBondDTO(); + orderAuctionBondDTO.setAuctionSalesroomId(auctionSalesroom.getId()); + orderAuctionBondDTO.setUserList(list); + orderClient.getOrderAuctionBond(orderAuctionBondDTO, + SecurityConstants.INNER); + }else{ OrderAuctionBondDTO orderAuctionBondDTO=new OrderAuctionBondDTO(); orderAuctionBondDTO.setAuctionSalesroomId(auctionSalesroom.getId()); orderAuctionBondDTO.setUserList(list); @@ -535,6 +546,12 @@ @Override public AuctionSalesroomGoodsInfoVO getAuctionSalesroomGoodsInfo(AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO) { AuctionSalesroom byId = auctionSalesroomMapper.selectById(auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + if (byId==null){ + LambdaQueryWrapper<AuctionSalesroom> wrapper=Wrappers.lambdaQuery(); + wrapper.eq(AuctionSalesroom::getAuctionSalesroomNo,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + wrapper.eq(AuctionSalesroom::getDelFlag,0); + byId =auctionSalesroomMapper.selectOne(wrapper); + } AuctionSalesroomGoods byId1 = this.getById(auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(byId1.getGoodsSkuId(), SecurityConstants.INNER).getData(); AuctionSalesroomGoodsInfoVO AuctionSalesroomGoodsInfoVO=new AuctionSalesroomGoodsInfoVO(); @@ -612,19 +629,24 @@ wrapper2.eq(AuctionBidRecord::getAuctionType,2); wrapper2.eq(AuctionBidRecord::getTargetId,byId1.getId()); wrapper2.eq(AuctionBidRecord::getDelFlag,0); - AuctionBidRecord list2 = auctionBidRecordMapper.selectOne(wrapper1); + wrapper2.orderByDesc(AuctionBidRecord::getLastBidAmount); + wrapper2.last("limit 1"); + AuctionBidRecord list2 = auctionBidRecordMapper.selectOne(wrapper2); if (list2!=null){ AuctionSalesroomGoodsInfoVO.setZgBid(list2.getLastBidAmount()); } List<getHomeGoodsSkuXxiVO> homeGoodsSkuXxiVOS=new ArrayList<>(); List<GoodsInfoTitleValueVO> goodsInfoTitleValueVOList = goodsSkuClient.getlistByGoodsId(goodsSku.getId(), SecurityConstants.INNER).getData(); - Collections.sort(goodsInfoTitleValueVOList, Comparator.comparingInt(GoodsInfoTitleValueVO::getSortNum)); - for (GoodsInfoTitleValueVO goodsInfoTitleValueVO:goodsInfoTitleValueVOList){ - getHomeGoodsSkuXxiVO getHomeGoodsSkuXxiVOs=new getHomeGoodsSkuXxiVO(); - getHomeGoodsSkuXxiVOs.setContent(goodsInfoTitleValueVO.getContent()); - getHomeGoodsSkuXxiVOs.setTitleName(goodsInfoTitleValueVO.getTitleName()); - homeGoodsSkuXxiVOS.add(getHomeGoodsSkuXxiVOs); - } + if (goodsInfoTitleValueVOList!=null){ + Collections.sort(goodsInfoTitleValueVOList, Comparator.comparingInt(GoodsInfoTitleValueVO::getSortNum)); + for (GoodsInfoTitleValueVO goodsInfoTitleValueVO:goodsInfoTitleValueVOList){ + getHomeGoodsSkuXxiVO getHomeGoodsSkuXxiVOs=new getHomeGoodsSkuXxiVO(); + getHomeGoodsSkuXxiVOs.setContent(goodsInfoTitleValueVO.getContent()); + getHomeGoodsSkuXxiVOs.setTitleName(goodsInfoTitleValueVO.getTitleName()); + homeGoodsSkuXxiVOS.add(getHomeGoodsSkuXxiVOs); + } + } + AuctionSalesroomGoodsInfoVO.setXxiVOS(homeGoodsSkuXxiVOS); return AuctionSalesroomGoodsInfoVO; @@ -633,7 +655,18 @@ @Override public List<AuctionBidRecordVO> getAuctionBidRecord(AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO) { LambdaQueryWrapper<AuctionBidRecord> wrapper=Wrappers.lambdaQuery(); - wrapper.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + + AuctionSalesroom byId = auctionSalesroomMapper.selectById(auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + if (byId==null){ + LambdaQueryWrapper<AuctionSalesroom> wrapper1=Wrappers.lambdaQuery(); + wrapper1.eq(AuctionSalesroom::getAuctionSalesroomNo,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + wrapper1.eq(AuctionSalesroom::getDelFlag,0); + byId =auctionSalesroomMapper.selectOne(wrapper1); + } + + if (auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()!=null){ + wrapper.eq(AuctionBidRecord::getAuctionSalesroomId,byId.getId()); + } wrapper.eq(AuctionBidRecord::getDelFlag,0); wrapper.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount); @@ -650,12 +683,14 @@ auctionBidRecordVOList.add(auctionBidRecordVO); } LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); - wrapper1.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + if (auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()!=null){ + wrapper1.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + } wrapper1.eq(AuctionBidRecord::getDelFlag,0); wrapper1.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId()); - wrapper.last("limit 1"); - AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper); + wrapper1.last("limit 1"); + AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper1); if (auctionBidRecord!=null){ LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery(); wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); @@ -671,9 +706,25 @@ auctionBidRecordVO.setLastBidTime(auctionBidRecord.getLastBidTime()); Member data = emberClient.getMembeOne(auctionBidRecord.getMemberId(), SecurityConstants.INNER).getData(); - auctionBidRecordVO.setMemberName(data.getNickname()); - auctionBidRecordVO.setMemberId(data.getId()); - auctionBidRecordVOList.add(auctionBidRecordVO); + if (data!=null){ + auctionBidRecordVO.setMemberName(data.getNickname()); + auctionBidRecordVO.setMemberId(data.getId()); + } + if (data!=null){ + Boolean b=false; + for (AuctionBidRecordVO auctionBidRecordVOs:auctionBidRecordVOList){ + if (auctionBidRecordVOs.getMemberId().equals(data.getId())){ + b=true; + break; + } + } + if (!b){ + auctionBidRecordVOList.add(auctionBidRecordVO); + } + }else{ + auctionBidRecordVOList.add(auctionBidRecordVO); + } + } } -- Gitblit v1.7.1