From 730c70af018d50a6ca5a13be2d8fa25c6c42c357 Mon Sep 17 00:00:00 2001 From: rentaiming <806181062@qq.com> Date: 星期五, 07 六月 2024 18:17:31 +0800 Subject: [PATCH] 用户端商品 --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java | 106 ++++++++---- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java | 30 +++ ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/dto/MemberLikeDTO.java | 2 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java | 4 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartArticleController.java | 4 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java | 12 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java | 28 +++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/MemberGoodsCollection.java | 3 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java | 9 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartMemberArticleCollectionController.java | 2 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartSensitiveWordsController.java | 16 + ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartOrderController.java | 2 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/AuctionBrowseRecord.java | 1 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionBidRecordController.java | 4 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java | 12 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/vo/MemberArticleCollectionVO.java | 3 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java | 85 +++++++++- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java | 16 +- ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java | 6 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 9 + ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java | 4 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java | 6 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java | 19 - ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java | 29 +++ ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java | 13 + 25 files changed, 308 insertions(+), 117 deletions(-) diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartArticleController.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartArticleController.java index 98b6aac..1c2dc8c 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartArticleController.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartArticleController.java @@ -66,13 +66,13 @@ @PostMapping("/getArticleCommentsList") @ApiOperation(value = "用户端-获取评论列表") - public R<PageDTO<ArticleCommentsVO>> getArticleCommentsList(ArticleDTO articleDTO) { + public R<PageDTO<ArticleCommentsVO>> getArticleCommentsList(@RequestBody ArticleDTO articleDTO) { return R.ok(iArticleService.getArticleCommentsList(articleDTO)); } @PostMapping("/getreport") @ApiOperation(value = "用户端-用户举报举报文章") - public R getReport(ArticleDTO articleDTO) { + public R getReport(@RequestBody ArticleDTO articleDTO) { iArticleService.getReport(articleDTO); return R.ok(); } diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartMemberArticleCollectionController.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartMemberArticleCollectionController.java index 6b9643f..ca5a360 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartMemberArticleCollectionController.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartMemberArticleCollectionController.java @@ -39,7 +39,7 @@ @PostMapping("/getMemberArticleCollection") @ApiOperation(value = "用户端-获取用户收藏资讯") - public R<PageDTO<MemberArticleCollectionVO>> getMemberArticleCollection( ArticleDTO articleDTO) { + public R<PageDTO<MemberArticleCollectionVO>> getMemberArticleCollection(@RequestBody ArticleDTO articleDTO) { return R.ok(memberArticleCollectionService.getMemberArticleCollection(articleDTO)); } diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartSensitiveWordsController.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartSensitiveWordsController.java index c7c2206..1953312 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartSensitiveWordsController.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/ForepartSensitiveWordsController.java @@ -4,14 +4,14 @@ import com.ruoyi.article.domain.SensitiveWords; import com.ruoyi.article.service.ISensitiveWordsService; import com.ruoyi.common.core.domain.R; +import com.ruoyi.system.api.domain.dto.judgeSensitiveWordsDTO; +import com.ruoyi.system.api.domain.vo.judgeSensitiveWordsVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import java.util.List; import javax.annotation.Resource; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; + +import org.springframework.web.bind.annotation.*; /** * <p> @@ -35,4 +35,12 @@ return R.ok(SensitiveWordsService.getMemberArticleList()); } + + @PostMapping("/judgeSensitiveWordsList") + @ApiOperation(value = "用户端-判断敏感词") + public R<judgeSensitiveWordsVO> judgeSensitiveWordsList(@RequestBody judgeSensitiveWordsDTO SensitiveWordsDTO) { + SensitiveWordsService.judgeSensitiveWordsList(SensitiveWordsDTO); + return R.ok(); + } + } diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/dto/MemberLikeDTO.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/dto/MemberLikeDTO.java index 5306980..23b863c 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/dto/MemberLikeDTO.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/dto/MemberLikeDTO.java @@ -14,7 +14,7 @@ @ApiModelProperty(value = "资讯id/评论id/回复id") private Long articleId; - @ApiModelProperty(value = "1 点赞资讯,2 点赞评论, 3 点赞回复") + @ApiModelProperty(value = "1 点赞资讯,2 点赞评论") private Long type; @ApiModelProperty(value = "1 点赞,2 取消点赞") diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/vo/MemberArticleCollectionVO.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/vo/MemberArticleCollectionVO.java index d4082f0..8be13cc 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/vo/MemberArticleCollectionVO.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/forepart/vo/MemberArticleCollectionVO.java @@ -34,6 +34,9 @@ @ApiModelProperty(value = "会员名称") private String memberNickname; + @ApiModelProperty(value = "头像") + private String memberAvatar; + @ApiModelProperty("是否收藏 1收藏, 2 未收藏") private Integer isCollect; diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java index 3c1a2f9..c46c154 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java @@ -2,6 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.article.domain.SensitiveWords; +import com.ruoyi.system.api.domain.dto.judgeSensitiveWordsDTO; +import com.ruoyi.system.api.domain.vo.judgeSensitiveWordsVO; +import org.springframework.web.bind.annotation.RequestBody; + import java.util.List; /** @@ -15,4 +19,6 @@ public interface ISensitiveWordsService extends IService<SensitiveWords> { List<SensitiveWords> getMemberArticleList(); + judgeSensitiveWordsVO judgeSensitiveWordsList(@RequestBody judgeSensitiveWordsDTO SensitiveWordsDTO); + } diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java index b1d02d9..425bbdf 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java @@ -15,10 +15,16 @@ import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.domain.R; 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.system.api.domain.GoodsGroupPurchase; +import com.ruoyi.system.api.domain.GoodsSku; import com.ruoyi.system.api.domain.Member; +import com.ruoyi.system.api.domain.dto.AuctionGoodsListPageDTO; import com.ruoyi.system.api.feignClient.MemberClient; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; import javax.annotation.Resource; import org.springframework.stereotype.Service; @@ -41,10 +47,10 @@ @Override public void saveMemberArticleCollection(MemberArticleCollectionDTO memberArticleCollectionDTO) { - if (memberArticleCollectionDTO.getMemberId()!=null) { + if (memberArticleCollectionDTO.getMemberId()==null) { throw new ServiceException("用户ID不能为空"); } - if (memberArticleCollectionDTO.getState()!=null) { + if (memberArticleCollectionDTO.getState()==null) { throw new ServiceException("类型不能为空"); } @@ -81,9 +87,24 @@ @Override public PageDTO<MemberArticleCollectionVO> getMemberArticleCollection(ArticleDTO articleDTO) { + Set<Long> goodsSkuIdList = null; + if (StringUtils.isNotEmpty(articleDTO.getTitle())) { + LambdaQueryWrapper<Article> wrapper= Wrappers.lambdaQuery(); + wrapper.like(Article::getTitle,articleDTO.getTitle()); + wrapper.eq(Article::getDelFlag,0); + List<Article> page1 = articleMapper.selectList(wrapper); + goodsSkuIdList = page1.stream().map(Article::getId) + .collect(Collectors.toSet()); + } Page<MemberArticleCollection> page = new Page<>(articleDTO.getPageCurr(), articleDTO.getPageSize()); - LambdaQueryWrapper< MemberArticleCollection> wrapper= Wrappers.lambdaQuery(); + LambdaQueryWrapper<MemberArticleCollection> wrapper= Wrappers.lambdaQuery(); wrapper.eq(MemberArticleCollection::getMemberId,articleDTO.getMemberId()); + if (StringUtils.isNotEmpty(articleDTO.getTitle())){ + if (goodsSkuIdList.size()>0){ + wrapper.in(MemberArticleCollection::getTargetId,goodsSkuIdList); + } + } + wrapper.eq(MemberArticleCollection::getDelFlag,0); Page<MemberArticleCollection> page1 = this.page(page, wrapper); PageDTO<MemberArticleCollectionVO> articleCommentsVOPageDTO = PageDTO.of(page1, MemberArticleCollectionVO.class); List<MemberArticleCollectionVO> list2 = articleCommentsVOPageDTO.getList(); @@ -97,6 +118,7 @@ SecurityConstants.INNER); Member data = membeOne.getData(); memberArticleCollectionVO.setMemberNickname(data.getNickname()); + memberArticleCollectionVO.setMemberAvatar(data.getAvatar()); memberArticleCollectionVO.setIsCollect(1); } diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java index c77382e..da666cb 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberLikeServiceImpl.java @@ -37,10 +37,10 @@ @Override public void saveMemberLike(MemberLikeDTO memberLikeDTO) { - if (memberLikeDTO.getMemberId()!=null) { + if (memberLikeDTO.getMemberId()==null) { throw new ServiceException("用户ID不能为空"); } - if (memberLikeDTO.getState()!=null) { + if (memberLikeDTO.getState()==null) { throw new ServiceException("类型不能为空"); } LambdaQueryWrapper< MemberLike> wrapper= Wrappers.lambdaQuery(); @@ -61,11 +61,6 @@ articleMapper.updateById(byId); } if (memberLikeDTO.getType()==2){ - ArticleComments byId = articleCommentsService.getById(memberLikeDTO.getArticleId()); - byId.setLikeCount(byId.getLikeCount()+1); - articleCommentsService.saveOrUpdate(byId); - } - if (memberLikeDTO.getType()==3){ ArticleComments byId = articleCommentsService.getById(memberLikeDTO.getArticleId()); byId.setLikeCount(byId.getLikeCount()+1); articleCommentsService.saveOrUpdate(byId); diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java index b9870a7..b176bc9 100644 --- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java +++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java @@ -6,8 +6,15 @@ import com.ruoyi.article.domain.SensitiveWords; import com.ruoyi.article.mapper.SensitiveWordsMapper; import com.ruoyi.article.service.ISensitiveWordsService; + +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; +import java.util.regex.Pattern; import javax.annotation.Resource; + +import com.ruoyi.system.api.domain.dto.judgeSensitiveWordsDTO; +import com.ruoyi.system.api.domain.vo.judgeSensitiveWordsVO; import org.springframework.stereotype.Service; /** @@ -27,4 +34,26 @@ wrapper.eq(SensitiveWords::getDelFlag,0); return this.list(wrapper); } + + @Override + public judgeSensitiveWordsVO judgeSensitiveWordsList(judgeSensitiveWordsDTO SensitiveWordsDTO) { + LambdaQueryWrapper<SensitiveWords> wrapper= Wrappers.lambdaQuery(); + wrapper.eq(SensitiveWords::getDelFlag,0); + List<SensitiveWords> list = this.list(wrapper); + List<String> sensitiveWords = new ArrayList<>(); + for (SensitiveWords l:list){ + sensitiveWords.add(l.getWord()); + } + Pattern pattern = Pattern.compile(String.join("|", sensitiveWords), Pattern.CASE_INSENSITIVE); + boolean b = pattern.matcher(SensitiveWordsDTO.getText()).find(); + judgeSensitiveWordsVO SensitiveWordsVO=new judgeSensitiveWordsVO(); + if (b){ + SensitiveWordsVO.setType(1); + }else{ + SensitiveWordsVO.setType(2); + } + return SensitiveWordsVO; + } + + } diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionBidRecordController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionBidRecordController.java index 3bbe2e7..aa3348e 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionBidRecordController.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionBidRecordController.java @@ -1,7 +1,7 @@ package com.ruoyi.auction.controller.forepart; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +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.auction.domain.AuctionBidRecord; @@ -46,7 +46,7 @@ */ @PostMapping("/getAuctionBidRecordList") @ApiOperation(value = "拍卖大屏-滚动出价") - public R<List<AuctionBidRecord>> getAuctionBidRecordList(@RequestBody AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) { + public R<List<AuctionBidRecord>> getAuctionBidRecordList(@RequestBody AuctionSalesroomDTO auctionSalesroomGoodsDTO) { return R.ok(iAuctionBidRecordService.getAuctionBidRecordList(auctionSalesroomGoodsDTO)); } diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java index 4f69bcb..01dd53a 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java @@ -1,7 +1,7 @@ package com.ruoyi.auction.controller.forepart; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.ForepartAuctionBidRecordDTO; import com.ruoyi.auction.service.IAuctionSalesroomGoodsService; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; @@ -49,7 +49,7 @@ */ @PostMapping("getAuctionBidRecordList") @ApiOperation(value = "拍卖大屏-获取拍卖信息") - public R<PageDTO<AuctionSalesroom>> getAuctionBidRecordList(@RequestBody AuctionSalesroomGoodsDTO ctionSalesroomGoodsDTO) { + public R<PageDTO<AuctionSalesroom>> getAuctionBidRecordList(@RequestBody AuctionSalesroomDTO ctionSalesroomGoodsDTO) { return R.ok(iAuctionSalesroomService.getAuctionBidRecordList(ctionSalesroomGoodsDTO)); } @@ -60,7 +60,7 @@ */ @PostMapping("/getBaaner") @ApiOperation(value = "拍卖大屏-暖场视频or封面海报") - public R<ForepartAuctionSalesroomVO> getBaaner(@RequestBody AuctionSalesroomGoodsDTO ctionSalesroomGoodsDTO) { + public R<ForepartAuctionSalesroomVO> getBaaner(@RequestBody AuctionSalesroomDTO ctionSalesroomGoodsDTO) { return R.ok(iAuctionSalesroomService.getBaaner(ctionSalesroomGoodsDTO)); } @@ -114,9 +114,9 @@ * 拍卖师端拍卖场立即开始 * */ - @PostMapping("/auctionSalesroomStart") + @PostMapping("/auctionSalesroomStart") @ApiOperation(value = "拍卖师端-拍卖场立即开始") - public R auctionSalesroomStart(@RequestBody AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public R auctionSalesroomStart(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) { iAuctionSalesroomGoodsService.auctionSalesroomStart(ationSalesroomGoodsDTO); return R.ok(); } @@ -128,7 +128,7 @@ */ @PostMapping("/auctionSalesroomEnd") @ApiOperation(value = "拍卖师端-拍卖场立即结束") - public R auctionSalesroomEnd(@RequestBody AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public R auctionSalesroomEnd(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) { iAuctionSalesroomGoodsService.auctionSalesroomEnd(ationSalesroomGoodsDTO); return R.ok(); } diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java index 90f4cce..f32ebae 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java @@ -1,7 +1,7 @@ package com.ruoyi.auction.controller.forepart; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO; import com.ruoyi.auction.domain.AuctionSalesroomGoods; import com.ruoyi.auction.service.IAuctionSalesroomGoodsService; @@ -39,7 +39,7 @@ */ @PostMapping("/getAuctionSalesroomGoods") @ApiOperation(value = "拍卖大屏-商品介绍") - public R<ForepartAuctionSalesroomGoodsVO> getAuctionSalesroomGoods(@RequestBody AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public R<ForepartAuctionSalesroomGoodsVO> getAuctionSalesroomGoods(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) { return R.ok(iAuctionSalesroomGoodsService.getAuctionSalesroomGoods(ationSalesroomGoodsDTO)); } @@ -49,7 +49,7 @@ */ @PostMapping("/getAuctionSalesroominfo") @ApiOperation(value = "拍卖师端-拍卖场详情信息") - public R<AuctionSalesroomVO> getAuctionSalesroominfo(@RequestBody AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public R<AuctionSalesroomVO> getAuctionSalesroominfo(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) { return R.ok(iAuctionSalesroomGoodsService.getAuctionSalesroominfo(ationSalesroomGoodsDTO)); } @@ -62,7 +62,7 @@ */ @PostMapping("/isAuctionSalesroom") @ApiOperation(value = "拍卖师端-判断拍卖师端是否还有未拍卖商品") - public R<List<AuctionSalesroomGoods>> isAuctionSalesroom(@RequestBody AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public R<List<AuctionSalesroomGoods>> isAuctionSalesroom(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) { return R.ok(iAuctionSalesroomGoodsService.isAuctionSalesroom(ationSalesroomGoodsDTO)); } @@ -73,7 +73,7 @@ */ @PostMapping("/auctionSalesroomGoodsStart") @ApiOperation(value = "拍卖师端-拍卖场商品下一个立即开始") - public R auctionSalesroomGoodsStart(@RequestBody AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) { + public R auctionSalesroomGoodsStart(@RequestBody AuctionSalesroomDTO auctionSalesroomGoodsDTO) { iAuctionSalesroomGoodsService.auctionSalesroomGoodsStart(auctionSalesroomGoodsDTO); return R.ok(); } @@ -86,7 +86,7 @@ */ @PostMapping("/auctionSalesroomGoodsEnd") @ApiOperation(value = "拍卖师端-拍卖场商品立即结束") - public R auctionSalesroomGoodsEnd(@RequestBody AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) { + public R auctionSalesroomGoodsEnd(@RequestBody AuctionSalesroomDTO auctionSalesroomGoodsDTO) { iAuctionSalesroomGoodsService.auctionSalesroomGoodsEnd(auctionSalesroomGoodsDTO); return R.ok(); } diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/AuctionBrowseRecord.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/AuctionBrowseRecord.java index 9390b57..ec0847c 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/AuctionBrowseRecord.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/AuctionBrowseRecord.java @@ -43,6 +43,7 @@ private Long targetId; @ApiModelProperty(value = "会员id") + @TableField(value = "member_id") private Long memberId; @ApiModelProperty(value = "创建者") diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java index 3ccbeba..ff227f4 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java @@ -1,7 +1,7 @@ package com.ruoyi.auction.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.auction.domain.AuctionBidRecord; import java.util.List; @@ -18,7 +18,7 @@ * 拍卖大屏滚动 * */ - public List<AuctionBidRecord> getAuctionBidRecordList(AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO); + public List<AuctionBidRecord> getAuctionBidRecordList(AuctionSalesroomDTO auctionSalesroomGoodsDTO); List<AuctionBidRecord> getBidRecordByGoodsId(Long id); } diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java index 766e187..ded3c6d 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java @@ -1,7 +1,7 @@ package com.ruoyi.auction.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO; import com.ruoyi.auction.domain.AuctionSalesroomGoods; import com.ruoyi.system.api.domain.vo.AuctionBidRecordVO; @@ -21,41 +21,41 @@ * @since 2024-05-16 */ public interface IAuctionSalesroomGoodsService extends IService<AuctionSalesroomGoods> { - ForepartAuctionSalesroomGoodsVO getAuctionSalesroomGoods(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + ForepartAuctionSalesroomGoodsVO getAuctionSalesroomGoods(AuctionSalesroomDTO ationSalesroomGoodsDTO); /** * 拍卖师端拍卖场信息 * */ - AuctionSalesroomVO getAuctionSalesroominfo(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + AuctionSalesroomVO getAuctionSalesroominfo(AuctionSalesroomDTO ationSalesroomGoodsDTO); /** * 拍卖师端拍卖场立即开始 * */ - void auctionSalesroomStart(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + void auctionSalesroomStart(AuctionSalesroomDTO ationSalesroomGoodsDTO); /** * 拍卖师端拍卖场立即开始 * */ - void auctionSalesroomEnd(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + void auctionSalesroomEnd(AuctionSalesroomDTO ationSalesroomGoodsDTO); /** * 拍卖师端拍卖场立即开始 * */ - List<AuctionSalesroomGoods> isAuctionSalesroom(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + List<AuctionSalesroomGoods> isAuctionSalesroom(AuctionSalesroomDTO ationSalesroomGoodsDTO); /** * 拍卖师端拍卖场下一个立即开始 * */ - void auctionSalesroomGoodsStart(AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO); + void auctionSalesroomGoodsStart(AuctionSalesroomDTO auctionSalesroomGoodsDTO); - void auctionSalesroomGoodsEnd(AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO); + void auctionSalesroomGoodsEnd(AuctionSalesroomDTO auctionSalesroomGoodsDTO); AuctionSalesroomGoodsInfoVO getAuctionSalesroomGoodsInfo(AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO); diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java index 04c5116..7b18151 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java @@ -17,7 +17,7 @@ import com.ruoyi.system.api.domain.AppMiniLoginVO; import com.ruoyi.system.api.domain.AuctionSalesroom; import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.BidDTO; import com.ruoyi.system.api.domain.dto.ForepartAuctionBidRecordDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; @@ -44,13 +44,13 @@ * 拍卖大屏获取拍卖信息 * */ - PageDTO<AuctionSalesroom> getAuctionBidRecordList(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + PageDTO<AuctionSalesroom> getAuctionBidRecordList(AuctionSalesroomDTO ationSalesroomGoodsDTO); /** * 暖场视频or封面海报 * */ - ForepartAuctionSalesroomVO getBaaner(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO); + ForepartAuctionSalesroomVO getBaaner(AuctionSalesroomDTO ationSalesroomGoodsDTO); AuctionSalesroom getAuctionBidRecordOne(ForepartAuctionBidRecordDTO arepartAuctionBidRecordDTO); diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java index 679a9a2..bb911df 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java @@ -3,7 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.auction.domain.AuctionBidRecord; import com.ruoyi.auction.domain.AuctionSalesroomGoods; import com.ruoyi.auction.mapper.AuctionBidRecordMapper; @@ -31,7 +31,7 @@ private AuctionSalesroomGoodsMapper auctionSalesroomGoodsMapper; @Override - public List<AuctionBidRecord> getAuctionBidRecordList(AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) { + public List<AuctionBidRecord> getAuctionBidRecordList(AuctionSalesroomDTO auctionSalesroomGoodsDTO) { AuctionSalesroomGoods auctionSalesroomGoods = auctionSalesroomGoodsMapper.selectById( auctionSalesroomGoodsDTO.getGoodsSkuId()); List<AuctionBidRecord> auctionBidRecordList=new ArrayList<>(); diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java index 6813e97..e731039 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBrowseRecordServiceImpl.java @@ -62,19 +62,13 @@ @Override public PageDTO<AuctionGoodsListVO> getWdAuctionBrowseRecordList(AuctionGoodsListDTO auctionGoodsListDTO) { LocalDateTime now = LocalDateTime.now(); - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String formattedDate = now.format(formatter); - LocalDateTime parseTime = LocalDateTime.parse(formattedDate, formatter); LocalDateTime newTime7 = now.minusDays(7); - String formattedDate7 = newTime7.format(formatter); - LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); - LambdaQueryWrapper<AuctionBrowseRecord> wrapper3= Wrappers.lambdaQuery(); wrapper3.eq(AuctionBrowseRecord::getDelFlag,0); wrapper3.eq(AuctionBrowseRecord::getTargetId,auctionGoodsListDTO.getGoodsSkuId()); wrapper3.eq(AuctionBrowseRecord::getMemberId,auctionGoodsListDTO.getMemberId()); - wrapper3.ge(AuctionBrowseRecord::getCreateTime, parseTime7) - .le(AuctionBrowseRecord::getCreateTime, parseTime); + wrapper3.ge(AuctionBrowseRecord::getCreateTime, newTime7) + .le(AuctionBrowseRecord::getCreateTime, now); List<AuctionBrowseRecord> list = this.list(wrapper3); Set<Long> goodsSkuIdList = null; @@ -129,19 +123,14 @@ @Override public PageDTO<WdMemberAuctionSalesroomVO> getWdAuctionSalesroomBrowseRecordList(MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO) { LocalDateTime now = LocalDateTime.now(); - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String formattedDate = now.format(formatter); - LocalDateTime parseTime = LocalDateTime.parse(formattedDate, formatter); LocalDateTime newTime7 = now.minusDays(7); - String formattedDate7 = newTime7.format(formatter); - LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); LambdaQueryWrapper<AuctionBrowseRecord> wrapper3= Wrappers.lambdaQuery(); wrapper3.eq(AuctionBrowseRecord::getDelFlag,0); wrapper3.eq(AuctionBrowseRecord::getTargetId,MemberAuctionSalesroomDTO.getAuctionSalesroomId()); wrapper3.eq(AuctionBrowseRecord::getMemberId,MemberAuctionSalesroomDTO.getMemberId()); - wrapper3.ge(AuctionBrowseRecord::getCreateTime, parseTime7) - .le(AuctionBrowseRecord::getCreateTime, parseTime); + wrapper3.ge(AuctionBrowseRecord::getCreateTime, newTime7) + .le(AuctionBrowseRecord::getCreateTime, now); List<AuctionBrowseRecord> list = this.list(wrapper3); Set<Long> goodsSkuIdList = null; 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 87da14c..fed4c43 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 @@ -3,9 +3,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +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.AuctionSalesroomGoodsDTO; +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; @@ -38,10 +41,14 @@ 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; + /** * <p> @@ -78,6 +85,8 @@ @Resource private IAuctionSalesroomService iAuctionSalesroomService; + private static final ObjectMapper objectMapper = new ObjectMapper(); + @@ -87,7 +96,7 @@ * */ @Override - public ForepartAuctionSalesroomGoodsVO getAuctionSalesroomGoods(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public ForepartAuctionSalesroomGoodsVO getAuctionSalesroomGoods(AuctionSalesroomDTO ationSalesroomGoodsDTO) { ForepartAuctionSalesroomGoodsVO forepartAuctionSalesroomGoodsVO =new ForepartAuctionSalesroomGoodsVO(); AuctionSalesroom auctionSalesroom = auctionSalesroomMapper.selectById( ationSalesroomGoodsDTO.getAuctionSalesroomId()); @@ -121,7 +130,7 @@ .getData(); forepartAuctionSalesroomGoodsVO.setGoodsSkuId(auctionSalesroomGoods.getId()); forepartAuctionSalesroomGoodsVO.setGoodsSkuName(goodsSku.getSkuName()); - forepartAuctionSalesroomGoodsVO.setGoodsSkustatus(auctionSalesroomGoods.getStatus().getCode()); + forepartAuctionSalesroomGoodsVO.setGoodsSkustatus(auctionSalesroomGoods.getStatus()); forepartAuctionSalesroomGoodsVO.setStartingPrice(auctionSalesroomGoods.getStartingPrice()); forepartAuctionSalesroomGoodsVO.setSalesroomStock(auctionSalesroomGoods.getSalesroomStock()); forepartAuctionSalesroomGoodsVO.setListingDuration(auctionSalesroomGoods.getListingDuration()); @@ -156,7 +165,7 @@ * */ @Override - public AuctionSalesroomVO getAuctionSalesroominfo(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public AuctionSalesroomVO getAuctionSalesroominfo(AuctionSalesroomDTO ationSalesroomGoodsDTO) { ForepartAuctionSalesroomGoodsVO forepartAuctionSalesroomGoodsVO =new ForepartAuctionSalesroomGoodsVO(); AuctionSalesroom auctionSalesroom = auctionSalesroomMapper.selectById( ationSalesroomGoodsDTO.getAuctionSalesroomId()); @@ -185,7 +194,7 @@ forepartAuctionSalesroomGoodsVO1.setCoverPic(goodsSku.getCoverPic()); auctionSalesroomGoodsVOS.add(forepartAuctionSalesroomGoodsVO1); } - }if (auctionSalesroom.getStatus().getCode()==2){ + }if (auctionSalesroom.getStatus().getCode()==1){ List list =new ArrayList(); LambdaQueryWrapper<AuctionSalesroomGoods> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionSalesroomGoods::getStatus,1); @@ -199,6 +208,8 @@ GoodsSku goodsSku=goodsSkuOne.getData(); currentAuctionSalesroomGoods.setGoodsSkuName(goodsSku.getSkuName()); currentAuctionSalesroomGoods.setCoverPic(goodsSku.getCoverPic()); + currentAuctionSalesroomGoods.setStartTime(auctionSalesroomGoods.getStartTime()); + currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoods.getListingDuration()); auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods); list.add(auctionSalesroomGoods.getSortNum()); @@ -232,37 +243,13 @@ GoodsSku goodsSku2=goodsSkuOne2.getData(); forepartAuctionSalesroomGoodsVO1.setGoodsSkuName(goodsSku2.getSkuName()); forepartAuctionSalesroomGoodsVO1.setCoverPic(goodsSku2.getCoverPic()); + forepartAuctionSalesroomGoodsVO1.setGoodsSkustatus(salesroomGoods.getStatus()); auctionSalesroomGoodsVOS.add(forepartAuctionSalesroomGoodsVO1); } } auctionSalesroomVO.setElseAuctionSalesroomGoods(auctionSalesroomGoodsVOS); - - LocalDateTime now = LocalDateTime.now(); - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String formattedDate = now.format(formatter); - LocalDateTime parseTime = LocalDateTime.parse(formattedDate, formatter); - LocalDateTime newTime7 = now.minusDays(7); - String formattedDate7 = newTime7.format(formatter); - LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); - - LambdaQueryWrapper<AuctionBrowseRecord> wrapper3=Wrappers.lambdaQuery(); - wrapper3.eq(AuctionBrowseRecord::getDelFlag,0); - wrapper3.eq(AuctionBrowseRecord::getTargetId,ationSalesroomGoodsDTO.getAuctionSalesroomId()); - wrapper3.eq(AuctionBrowseRecord::getMemberId,ationSalesroomGoodsDTO.getMemberId()); - wrapper3.ge(AuctionBrowseRecord::getCreateTime, parseTime7) - .le(AuctionBrowseRecord::getCreateTime, parseTime); - List<AuctionBrowseRecord> list = iAuctionBrowseRecordService.list(wrapper3); - if (list.size()==0){ - AuctionBrowseRecord auctionBrowseRecord=new AuctionBrowseRecord(); - auctionBrowseRecord.setBrowseType(AuctionOrderTypeEnum.AUCTION_ITEMS); - auctionBrowseRecord.setMemberId(ationSalesroomGoodsDTO.getMemberId()); - auctionBrowseRecord.setTargetId(ationSalesroomGoodsDTO.getAuctionSalesroomId()); - iAuctionBrowseRecordService.save(auctionBrowseRecord); - } - - return auctionSalesroomVO; @@ -278,7 +265,7 @@ * */ @Override - public void auctionSalesroomStart(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public void auctionSalesroomStart(AuctionSalesroomDTO ationSalesroomGoodsDTO) { AuctionSalesroom auctionSalesroom = auctionSalesroomMapper.selectById( ationSalesroomGoodsDTO.getAuctionSalesroomId()); auctionSalesroom.setStatus(AuctionStartStatusEnum.IN_AUCTION); @@ -293,7 +280,19 @@ wrapper2.last("limit 1"); AuctionSalesroomGoods auctionSalesroomGoods = this.getOne(wrapper2); 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("message_type", "start"); + String msg = null; + try { + msg = objectMapper.writeValueAsString(map); + } catch (JsonProcessingException e) { + } + WebSocketUsers.sendMessageToUsersByText(msg); } @@ -303,7 +302,7 @@ * */ @Override - public void auctionSalesroomEnd(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public void auctionSalesroomEnd(AuctionSalesroomDTO ationSalesroomGoodsDTO) { AuctionSalesroom auctionSalesroom = auctionSalesroomMapper.selectById( ationSalesroomGoodsDTO.getAuctionSalesroomId()); auctionSalesroom.setStatus(AuctionStartStatusEnum.ENDED); @@ -345,6 +344,17 @@ orderClient.getOrderAuctionBond(orderAuctionBondDTO, SecurityConstants.INNER); } + + Map<String, Object> map = new ConcurrentHashMap<>(); + map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM); + map.put("auctionSalesroomId", auctionSalesroom.getId()); + map.put("message_type", "end"); + String msg = null; + try { + msg = objectMapper.writeValueAsString(map); + } catch (JsonProcessingException e) { + } + WebSocketUsers.sendMessageToUsersByText(msg); } @@ -353,7 +363,7 @@ * */ @Override - public List<AuctionSalesroomGoods> isAuctionSalesroom(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public List<AuctionSalesroomGoods> isAuctionSalesroom(AuctionSalesroomDTO ationSalesroomGoodsDTO) { LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery(); wrapper2.eq(AuctionSalesroomGoods::getStatus,0); wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0); @@ -368,7 +378,7 @@ * */ @Override - public void auctionSalesroomGoodsStart(AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) { + public void auctionSalesroomGoodsStart(AuctionSalesroomDTO auctionSalesroomGoodsDTO) { LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery(); wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,auctionSalesroomGoodsDTO.getAuctionSalesroomId()); wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0); @@ -377,7 +387,18 @@ auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS); this.updateById(auctionSalesroomGoods); - + Map<String, Object> map = new ConcurrentHashMap<>(); + map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS); + map.put("notification_time", LocalDateTime.now()); + map.put("goodsSkuId", auctionSalesroomGoods.getId()); + map.put("message_type", "start"); + String msg = null; + try { + msg = objectMapper.writeValueAsString(map); + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + WebSocketUsers.sendMessageToUsersByText(msg); } @@ -387,7 +408,7 @@ * */ @Override - public void auctionSalesroomGoodsEnd(AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) { + public void auctionSalesroomGoodsEnd(AuctionSalesroomDTO auctionSalesroomGoodsDTO) { LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery(); wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,auctionSalesroomGoodsDTO.getAuctionSalesroomId()); wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0); @@ -435,6 +456,19 @@ auctionSalesroomGood.setStatus(AuctionGoodsStatusEnum.ENDED); this.updateById(auctionSalesroomGood); + Map<String, Object> map = new ConcurrentHashMap<>(); + map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS); + map.put("notification_time", LocalDateTime.now()); + map.put("goodsSkuId", auctionSalesroomGoods.getId()); + map.put("message_type", "end"); + String msg = null; + try { + msg = objectMapper.writeValueAsString(map); + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + WebSocketUsers.sendMessageToUsersByText(msg); + } @Override diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java index f993be8..3795fb8 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java @@ -28,6 +28,7 @@ import com.ruoyi.auction.controller.management.vo.MgtAuctionSalesroomScreenVO; import com.ruoyi.auction.controller.management.vo.MgtAuctionSalesroomVO; import com.ruoyi.auction.domain.AuctionBidRecord; +import com.ruoyi.auction.domain.AuctionBrowseRecord; import com.ruoyi.auction.domain.AuctionSalesroomGoods; import com.ruoyi.auction.domain.AuctionVideo; import com.ruoyi.auction.mapper.AuctionBidRecordMapper; @@ -65,7 +66,7 @@ import com.ruoyi.system.api.domain.PromotionVideo; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO; -import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsDTO; +import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.BidDTO; import com.ruoyi.system.api.domain.dto.ForepartAuctionBidRecordDTO; import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO; @@ -200,7 +201,7 @@ @Override - public PageDTO<AuctionSalesroom> getAuctionBidRecordList(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public PageDTO<AuctionSalesroom> getAuctionBidRecordList(AuctionSalesroomDTO ationSalesroomGoodsDTO) { Page<AuctionSalesroom> page = new Page<>(ationSalesroomGoodsDTO.getPageCurr(), ationSalesroomGoodsDTO.getPageSize()); LambdaQueryWrapper<AuctionSalesroom> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionSalesroom::getSalesroomName,ationSalesroomGoodsDTO.getSalesroomName()); @@ -210,7 +211,7 @@ } @Override - public ForepartAuctionSalesroomVO getBaaner(AuctionSalesroomGoodsDTO ationSalesroomGoodsDTO) { + public ForepartAuctionSalesroomVO getBaaner(AuctionSalesroomDTO ationSalesroomGoodsDTO) { LambdaQueryWrapper<AuctionVideo> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionVideo::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId()); wrapper.eq(AuctionVideo::getDelFlag,0); @@ -411,7 +412,7 @@ forepartAuctionSalesroomGoodsVO.setCoverPic(goodsSku.getCoverPic()); forepartAuctionSalesroomGoodsVO.setStartingPrice(salesroomGoods.getStartingPrice()); forepartAuctionSalesroomGoodsVO.setSalesroomStock(salesroomGoods.getSalesroomStock()); - forepartAuctionSalesroomGoodsVO.setGoodsSkustatus(salesroomGoods.getStatus().getCode()); + forepartAuctionSalesroomGoodsVO.setGoodsSkustatus(salesroomGoods.getStatus()); forepartAuctionSalesroomGoodsVO.setYears(String.valueOf(goodsSku.getYears())); LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); wrapper1.eq(AuctionBidRecord::getMemberId,memberAuctionSalesroomDTO.getMemberId()); @@ -433,6 +434,27 @@ forepartAuctionSalesroomGoodsVOS.add(forepartAuctionSalesroomGoodsVO); } memberAuctionSalesroomInfoVO.setForepartAuctionSalesroomGoodsVO(forepartAuctionSalesroomGoodsVOS); + + + LocalDateTime now = LocalDateTime.now(); + LocalDateTime newTime7 = now.minusDays(7); + + LambdaQueryWrapper<AuctionBrowseRecord> wrapper3=Wrappers.lambdaQuery(); + wrapper3.eq(AuctionBrowseRecord::getDelFlag,0); + wrapper3.eq(AuctionBrowseRecord::getTargetId,memberAuctionSalesroomDTO.getAuctionSalesroomId()); + wrapper3.eq(AuctionBrowseRecord::getMemberId,memberAuctionSalesroomDTO.getMemberId()); + wrapper3.ge(AuctionBrowseRecord::getCreateTime, now) + .le(AuctionBrowseRecord::getCreateTime, newTime7); + List<AuctionBrowseRecord> list = iAuctionBrowseRecordService.list(wrapper3); + if (list.size()==0){ + AuctionBrowseRecord auctionBrowseRecord=new AuctionBrowseRecord(); + auctionBrowseRecord.setBrowseType(AuctionOrderTypeEnum.AUCTION_ITEMS); + auctionBrowseRecord.setMemberId(memberAuctionSalesroomDTO.getMemberId()); + auctionBrowseRecord.setTargetId(memberAuctionSalesroomDTO.getAuctionSalesroomId()); + iAuctionBrowseRecordService.save(auctionBrowseRecord); + } + + return memberAuctionSalesroomInfoVO; } diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java index 343e525..3b3794b 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/MemberAuctionCollectionServiceImpl.java @@ -44,10 +44,10 @@ @Override public void saveAuctionCollection(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("类型不能为空"); } @@ -90,12 +90,17 @@ page.setSize(auctionCollectionDTO.getPageSize()); page.setCurrent(auctionCollectionDTO.getPageCurr()); LambdaQueryWrapper< MemberAuctionCollection> wrapper= Wrappers.lambdaQuery(); - wrapper.in( MemberAuctionCollection::getTargetId, goodsSkuIdList); + wrapper.eq(MemberAuctionCollection::getMemberId,auctionCollectionDTO.getMemberId()); + if (StringUtils.isNotEmpty(auctionCollectionDTO.getGoodsSkuName())){ + if (goodsSkuIdList.size()>0){ + wrapper.in(MemberAuctionCollection::getTargetId,goodsSkuIdList); + } + } List<MemberAuctionCollection> list = this.list(wrapper); List<AuctionGoodsListVO> auctionGoodsVOS=new ArrayList<>(); for (MemberAuctionCollection auctionCollection:list){ - AuctionGoods auctionGoods = auctionGoodsMapper.selectById(auctionCollection.getId()); + AuctionGoods auctionGoods = auctionGoodsMapper.selectById(auctionCollection.getTargetId()); AuctionGoodsListVO auctionGoodsVO=new AuctionGoodsListVO(); auctionGoodsVO.setAuctionStock(auctionGoods.getAuctionStock()); auctionGoodsVO.setGoodsSkuId(auctionGoods.getId()); diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/MemberGoodsCollection.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/MemberGoodsCollection.java index feddf38..f58f938 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/MemberGoodsCollection.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/MemberGoodsCollection.java @@ -60,4 +60,7 @@ @TableLogic private Integer delFlag; + @ApiModelProperty(value = "1是普通商品,2 团购商品,3 秒杀商品") + private Integer type; + } 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..d9ebce2 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; @@ -21,6 +26,8 @@ import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * <p> @@ -37,12 +44,19 @@ @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("类型不能为空"); } @@ -70,23 +84,74 @@ @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); + } + } 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); + auctionGoodsVOS.add(auctionGoodsVO); + } if(auctionCollection.getType()==2){ + HomeGoodsSkuListVO auctionGoodsVO=new HomeGoodsSkuListVO(); + GoodsSeckill goodsSeckill = goodsSeckillMapper.selectById(auctionCollection.getTargetId()); + GoodsSku goodsSku = goodsSkuMapper.selectById(goodsSeckill.getGoodsSkuId()); + auctionGoodsVO.setId(auctionCollection.getTargetId()); + auctionGoodsVO.setPrice(goodsSku.getPrice()); + 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(goodsSeckill.getSeckillPrice()); + auctionGoodsVOS.add(auctionGoodsVO); + } if(auctionCollection.getType()==1){ + GoodsGroupPurchase goodsGroupPurchase = goodsGroupPurchaseMapper.selectById(auctionCollection.getTargetId()); + HomeGoodsSkuListVO auctionGoodsVO=new HomeGoodsSkuListVO(); + GoodsSku goodsSku = goodsSkuMapper.selectById(goodsGroupPurchase.getGoodsSkuId()); + auctionGoodsVO.setId(auctionCollection.getTargetId()); + auctionGoodsVO.setPrice(goodsSku.getPrice()); + auctionGoodsVO.setCoverPic(goodsSku.getCoverPic()); + auctionGoodsVO.setSkuName(goodsSku.getSkuName()); + auctionGoodsVO.setSoldQuantity(goodsSku.getSoldQuantity()); + auctionGoodsVO.setIsCollection(2); + auctionGoodsVO.setXiaosPrice(goodsGroupPurchase.getGroupPurchasePrice()); + auctionGoodsVO.setStartTime(goodsGroupPurchase.getStartTime()); + auctionGoodsVO.setEndTime(goodsGroupPurchase.getEndTime()); + auctionGoodsVO.setXiaosPrice(goodsGroupPurchase.getGroupPurchasePrice()); + auctionGoodsVOS.add(auctionGoodsVO); + } + } page.setRecords(auctionGoodsVOS); return PageDTO.of(page); diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartOrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartOrderController.java index bc81055..9d71a16 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartOrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartOrderController.java @@ -59,7 +59,7 @@ @PostMapping("/CancelOrderOne") @ApiOperation(value = "用户端-取消订单") public R CancelOrderOne(@RequestBody MemberOrderListDTO memberOrderListDTO) { - orderService.MemberOrderOne(memberOrderListDTO); + orderService.CancelOrderOne(memberOrderListDTO); return R.ok(); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index a53b977..ad15e76 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -519,6 +519,15 @@ order.setOrderStatus(OrderStatusEnum.CANCELED); order.setCancelTime(LocalDateTime.now()); baseMapper.updateById(order); + + updMembeOneDTO MembeOneDTO=new updMembeOneDTO(); + MembeOneDTO.setType(2); + MembeOneDTO.setMemberId(order.getMemberId()); + MembeOneDTO.setMoney(order.getTotalAmount()); + MembeOneDTO.setTotalPoints(order.getPoints()); + memberClient.updMembeOne(MembeOneDTO); + + if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 1) {//支付宝 //获取支付信息 LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery(); -- Gitblit v1.7.1