From ee9688b912bb993b54252a26f8ad9e0e04df21c3 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 21 六月 2024 18:11:21 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java | 136 ++++++++++++++++++++++++++++----------------- 1 files changed, 85 insertions(+), 51 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 9401896..296d067 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 @@ -6,16 +6,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.Lists; -import com.ruoyi.system.api.constants.NotificationTypeConstant; -import com.ruoyi.system.api.domain.*; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO; -import com.ruoyi.system.api.domain.vo.AuctionBidRecordVO; -import com.ruoyi.system.api.domain.vo.AuctionSalesroomGoodsInfoVO; -import com.ruoyi.system.api.domain.vo.AuctionSalesroomVO; -import com.ruoyi.system.api.domain.vo.ForepartAuctionSalesroomGoodsVO; import com.ruoyi.auction.domain.AuctionBidRecord; -import com.ruoyi.auction.domain.AuctionBrowseRecord; import com.ruoyi.auction.domain.AuctionSalesroomGoods; import com.ruoyi.auction.mapper.AuctionBidRecordMapper; import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper; @@ -30,23 +21,38 @@ import com.ruoyi.common.core.enums.AuctionStartStatusEnum; import com.ruoyi.common.core.enums.BidStatusEnum; import com.ruoyi.common.core.enums.OrderFromEnum; +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.system.api.constants.NotificationTypeConstant; +import com.ruoyi.system.api.domain.AuctionSalesroom; +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.dto.AuctionSalesroomDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO; import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO; import com.ruoyi.system.api.domain.dto.OrderAuctionBondDTO; import com.ruoyi.system.api.domain.dto.OrderDTO; +import com.ruoyi.system.api.domain.vo.AuctionBidRecordVO; +import com.ruoyi.system.api.domain.vo.AuctionSalesroomGoodsInfoVO; +import com.ruoyi.system.api.domain.vo.AuctionSalesroomVO; +import com.ruoyi.system.api.domain.vo.ForepartAuctionSalesroomGoodsVO; import com.ruoyi.system.api.feignClient.GoodsSkuClient; import com.ruoyi.system.api.feignClient.MemberClient; import com.ruoyi.system.api.feignClient.OrderClient; +import com.ruoyi.system.api.feignClient.SysUserClient; import java.math.BigDecimal; import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import javax.annotation.Resource; - -import com.ruoyi.system.api.feignClient.SysUserClient; -import com.ruoyi.system.api.util.WebSocketUsers; import org.springframework.stereotype.Service; @@ -241,9 +247,11 @@ currentAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoodss.getStatus()); currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoodss.getListingDuration()); auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods); + wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum()); + list.add(auctionSalesroomGoodss.getSortNum()); } - wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum()); - list.add(auctionSalesroomGoodss.getSortNum()); + + } wrapper1.last("limit 1"); AuctionSalesroomGoods auctionSalesroomGoods1 = this.getOne(wrapper1); @@ -260,9 +268,9 @@ auctionSalesroomVO.setNextAuctionSalesroomGoods(nextAuctionSalesroomGoods); } LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery(); - wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list); - wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list); - wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0); + if(list.size()>0){ + wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list); + } wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId()); wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum); wrapper2.orderByAsc(AuctionSalesroomGoods::getStatus); @@ -311,20 +319,25 @@ wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum); wrapper2.last("limit 1"); AuctionSalesroomGoods auctionSalesroomGoods = this.getOne(wrapper2); - auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS); - auctionSalesroomGoods.setStartTime(LocalDateTime.now()); - this.updateById(auctionSalesroomGoods); + if(auctionSalesroomGoods!=null){ + auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS); + auctionSalesroomGoods.setStartTime(LocalDateTime.now()); + this.updateById(auctionSalesroomGoods); + } + Map<String, Object> map = new ConcurrentHashMap<>(); map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM); map.put("auctionSalesroomId", auctionSalesroom.getId()); + map.put("AuctionTypeEnum",auctionSalesroom.getStatus()); map.put("message_type", "start"); + map.put("type", "1"); String msg = null; try { msg = objectMapper.writeValueAsString(map); } catch (JsonProcessingException e) { } - WebSocketUsers.sendMessageToUsersByText(msg); + sysUserClient.pushAll(msg, SecurityConstants.INNER); } @@ -379,14 +392,16 @@ Map<String, Object> map = new ConcurrentHashMap<>(); map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM); + map.put("AuctionTypeEnum",auctionSalesroom.getStatus()); map.put("auctionSalesroomId", auctionSalesroom.getId()); map.put("message_type", "end"); + map.put("type", "1"); String msg = null; try { msg = objectMapper.writeValueAsString(map); } catch (JsonProcessingException e) { } - WebSocketUsers.sendMessageToUsersByText(msg); + sysUserClient.pushAll(msg, SecurityConstants.INNER); } @@ -417,20 +432,23 @@ wrapper2.eq(AuctionSalesroomGoods::getGoodsSkuId,auctionSalesroomGoodsDTO.getGoodsSkuId()); AuctionSalesroomGoods auctionSalesroomGoods=this.getOne(wrapper2); auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS); + auctionSalesroomGoods.setStartTime(LocalDateTime.now()); this.updateById(auctionSalesroomGoods); - /* Map<String, Object> map = new ConcurrentHashMap<>(); + Map<String, Object> map = new ConcurrentHashMap<>(); map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS); - map.put("notification_time", LocalDateTime.now()); + map.put("notification_time", DateUtils.dateTimeNow("yyyy-MM-dd HH:mm:ss")); map.put("goodsSkuId", auctionSalesroomGoods.getId()); map.put("message_type", "start"); + map.put("type",1); + map.put("AuctionGoodsStatusEnum",auctionSalesroomGoods.getStatus()); String msg = null; try { msg = objectMapper.writeValueAsString(map); } catch (JsonProcessingException e) { throw new RuntimeException(e); } - WebSocketUsers.sendMessageToUsersByText(msg);*/ + sysUserClient.pushAll(msg, SecurityConstants.INNER); } @@ -487,18 +505,20 @@ auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.ENDED); this.updateById(auctionSalesroomGoods); - /* Map<String, Object> map = new ConcurrentHashMap<>(); + Map<String, Object> map = new ConcurrentHashMap<>(); map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS); - map.put("notification_time", LocalDateTime.now()); + map.put("notification_time", DateUtils.dateTimeNow("yyyy-MM-dd HH:mm:ss")); map.put("goodsSkuId", auctionSalesroomGoods.getId()); map.put("message_type", "end"); + map.put("type",2); + map.put("AuctionGoodsStatusEnum",auctionSalesroomGoods.getStatus()); String msg = null; try { msg = objectMapper.writeValueAsString(map); } catch (JsonProcessingException e) { throw new RuntimeException(e); } - WebSocketUsers.sendMessageToUsersByText(msg);*/ + sysUserClient.pushAll(msg, SecurityConstants.INNER); } @@ -521,6 +541,8 @@ AuctionSalesroomGoodsInfoVO.setUnit(goodsSku.getUnit()); AuctionSalesroomGoodsInfoVO.setDescription(goodsSku.getDescription()); AuctionSalesroomGoodsInfoVO.setDetail(goodsSku.getDetail()); + AuctionSalesroomGoodsInfoVO.setSharePic(goodsSku.getSharePic()); + AuctionSalesroomGoodsInfoVO.setShareTitle(goodsSku.getShareTitle()); AuctionSalesroomGoodsInfoVO.setYears(String.valueOf(goodsSku.getYears().getYear())); GoodsBrand data = goodsSkuClient.getBrandOne(goodsSku.getBrandId(), SecurityConstants.INNER).getData(); GoodsCategory data1 = goodsSkuClient.getCategoryOne(goodsSku.getCategoryId(), SecurityConstants.INNER).getData(); @@ -534,6 +556,9 @@ AuctionSalesroomGoodsInfoVO.setAlbum(goodsSku.getAlbum()); AuctionSalesroomGoodsInfoVO.setSpec(goodsSku.getSpec()); AuctionSalesroomGoodsInfoVO.setSpecUnit(goodsSku.getSpecUnit()); + + CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData(); + AuctionSalesroomGoodsInfoVO.setExplain(returnAddressUserName.getConfigValue()); AuctionSalesroomGoodsInfoVO.setMinimumMarkupAmount(byId1.getMinimumMarkupAmount()); LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId()); @@ -547,6 +572,15 @@ AuctionSalesroomGoodsInfoVO.setPresentBid(list1.getLastBidAmount()); if (list1.getStatus().getCode()==2){ AuctionSalesroomGoodsInfoVO.setIsStatus(2); + OrderDTO orderDTO =new OrderDTO(); + orderDTO.setMemberId(auctionSalesroomGoodsInfoDTO.getMemberId()); + orderDTO.setGoodsSkuId(byId1.getId()); + Order data4 = orderClient.getOrderOne(orderDTO, SecurityConstants.INNER).getData(); + if (data4!=null){ + AuctionSalesroomGoodsInfoVO.setOrderId(data4.getId()); + AuctionSalesroomGoodsInfoVO.setOrderNo(data4.getOrderNo()); + } + }else{ AuctionSalesroomGoodsInfoVO.setIsStatus(1); } @@ -573,10 +607,8 @@ auctionBidRecordVO.setSort(i+1); auctionBidRecordVO.setLastBidAmount(auctionBidRecordList.get(i).getLastBidAmount()); auctionBidRecordVO.setLastBidTime(auctionBidRecordList.get(i).getLastBidTime()); - Member data = emberClient.getMembeOne(auctionBidRecordList.get(i).getMemberId(), - SecurityConstants.INNER).getData(); - auctionBidRecordVO.setMemberName(data.getNickname()); - auctionBidRecordVO.setMemberId(data.getId()); + auctionBidRecordVO.setMemberName(auctionBidRecordList.get(i).getNickname()); + auctionBidRecordVO.setMemberId(auctionBidRecordList.get(i).getId()); auctionBidRecordVOList.add(auctionBidRecordVO); } LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); @@ -586,25 +618,27 @@ wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId()); wrapper.last("limit 1"); AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper); - - LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery(); - wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); - wrapper3.eq(AuctionBidRecord::getDelFlag,0); - wrapper3.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); - wrapper3.le(AuctionBidRecord::getId,auctionBidRecord.getId()); - wrapper3.orderByDesc(AuctionBidRecord::getLastBidAmount); - Long count = auctionBidRecordMapper.selectCount(wrapper); - if (count>0){ - AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO(); - auctionBidRecordVO.setSort(Integer.valueOf(count.intValue())); - auctionBidRecordVO.setLastBidAmount(auctionBidRecord.getLastBidAmount()); - 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 (auctionBidRecord!=null){ + LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery(); + wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); + wrapper3.eq(AuctionBidRecord::getDelFlag,0); + wrapper3.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); + wrapper3.le(AuctionBidRecord::getId,auctionBidRecord.getId()); + wrapper3.orderByDesc(AuctionBidRecord::getLastBidAmount); + Long count = auctionBidRecordMapper.selectCount(wrapper); + if (count>0){ + AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO(); + auctionBidRecordVO.setSort(Integer.valueOf(count.intValue())); + auctionBidRecordVO.setLastBidAmount(auctionBidRecord.getLastBidAmount()); + auctionBidRecordVO.setLastBidTime(auctionBidRecord.getLastBidTime()); + Member data = emberClient.getMembeOne(auctionBidRecord.getMemberId(), + SecurityConstants.INNER).getData(); + auctionBidRecordVO.setMemberName(data.getNickname()); + auctionBidRecordVO.setMemberId(data.getId()); + auctionBidRecordVOList.add(auctionBidRecordVO); + } } + return auctionBidRecordVOList; } -- Gitblit v1.7.1