ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java
@@ -90,4 +90,11 @@ return R.ok(iAuctionSalesroomService.getMemberAuctionSalesroomInfo(memberAuctionSalesroomDTO)); } @RequestMapping("/getMemberAuctionSalesroomSweep") @ResponseBody @ApiOperation(value = "用户端扫一扫拍卖场信息") public R<MemberAuctionSalesroomVO> getMemberAuctionSalesroomSweep(@RequestBody MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO) { return R.ok(iAuctionSalesroomService.getMemberAuctionSalesroomSweep(MemberAuctionSalesroomDTO)); } } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java
@@ -128,4 +128,12 @@ return R.ok(iAuctionSalesroomGoodsService.getAuctionSalesroomGoodsInfo(auctionSalesroomGoodsInfoDTO)); } @RequestMapping("/getAuctionBidRecord") @ResponseBody @ApiOperation(value = "用户端商品详情里面的出价记录") public R<List<AuctionBidRecordVO>> getAuctionBidRecord(@RequestBody AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO) { return R.ok(iAuctionSalesroomGoodsService.getAuctionBidRecord(auctionSalesroomGoodsInfoDTO)); } } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/dto/AuctionSalesroomGoodsInfoDTO.java
@@ -16,5 +16,4 @@ @ApiModelProperty(value = "会员id") private Long memberId; } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/dto/MemberAuctionSalesroomDTO.java
@@ -14,4 +14,7 @@ @ApiModelProperty(value = "拍卖会id") private Long auctionSalesroomId; @ApiModelProperty(value = "拍卖场编号") private String salesroomNO; } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/vo/AuctionBidRecordVO.java
New file @@ -0,0 +1,25 @@ package com.ruoyi.auction.controller.forepart.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; @Data public class AuctionBidRecordVO { @ApiModelProperty("排序") private Integer sort; @ApiModelProperty(value = "会员id") private Long memberId; @ApiModelProperty(value = "会员名称") private String memberName; @ApiModelProperty(value = "最终出价时间") private LocalDateTime lastBidTime; @ApiModelProperty(value = "最终出价金额") private BigDecimal lastBidAmount; } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/MemberBond.java
@@ -79,4 +79,6 @@ @TableLogic private Integer delFlag; @ApiModelProperty(value = "是否需要退回保证金 1不需要,2 需要") private Long isSendBack; } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java
@@ -58,6 +58,6 @@ AuctionSalesroomGoodsInfoVO getAuctionSalesroomGoodsInfo(AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO); List<AuctionBidRecordVO> getAuctionBidRecord(@RequestBody AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO); } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java
@@ -45,6 +45,7 @@ PageDTO<MemberAuctionSalesroomVO> getMemberAuctionSalesroomList(MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO); MemberAuctionSalesroomInfoVO getMemberAuctionSalesroomInfo(@RequestBody MemberAuctionSalesroomDTO memberAuctionSalesroomDTO); MemberAuctionSalesroomInfoVO getMemberAuctionSalesroomInfo( MemberAuctionSalesroomDTO memberAuctionSalesroomDTO); MemberAuctionSalesroomVO getMemberAuctionSalesroomSweep( MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO); } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java
@@ -38,7 +38,7 @@ List<AuctionBidRecord> auctionBidRecordList=new ArrayList<>(); if (auctionSalesroomGoods.getStatus().getCode()==1){ LambdaQueryWrapper<AuctionBidRecord> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionBidRecord::getGoodsSkuId,auctionSalesroomGoodsDTO.getGoodsSkuId()); wrapper.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsDTO.getGoodsSkuId()); wrapper.eq(AuctionBidRecord::getDelFlag,0); wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount); auctionBidRecordList=iAuctionBidRecordService.list(wrapper); @@ -56,7 +56,7 @@ } }if (auctionSalesroomGoods.getStatus().getCode()==2){ LambdaQueryWrapper<AuctionBidRecord> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionBidRecord::getGoodsSkuId,auctionSalesroomGoodsDTO.getGoodsSkuId()); wrapper.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsDTO.getGoodsSkuId()); wrapper.eq(AuctionBidRecord::getStatus,2); wrapper.eq(AuctionBidRecord::getDelFlag,0); wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount); ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
@@ -6,10 +6,7 @@ import com.ruoyi.auction.controller.forepart.dto.AuctionSalesroomGoodsDTO; import com.ruoyi.auction.controller.forepart.dto.AuctionSalesroomGoodsInfoDTO; import com.ruoyi.auction.controller.forepart.dto.OrderDTO; import com.ruoyi.auction.controller.forepart.vo.AuctionSalesroomGoodsInfoVO; import com.ruoyi.auction.controller.forepart.vo.AuctionSalesroomVO; import com.ruoyi.auction.controller.forepart.vo.ForepartAuctionSalesroomGoodsVO; import com.ruoyi.auction.controller.forepart.vo.MemberAuctionSalesroomInfoVO; import com.ruoyi.auction.controller.forepart.vo.*; import com.ruoyi.auction.domain.AuctionBidRecord; import com.ruoyi.auction.domain.AuctionSalesroom; import com.ruoyi.auction.domain.AuctionSalesroomGoods; @@ -346,7 +343,7 @@ if (auctionSalesroomGoods.getStatus().getCode()==1) { LambdaQueryWrapper<AuctionBidRecord> wrapper = Wrappers.lambdaQuery(); wrapper.eq(AuctionBidRecord::getGoodsSkuId, auctionSalesroomGoodsDTO.getGoodsSkuId()); wrapper.eq(AuctionBidRecord::getTargetId, auctionSalesroomGoodsDTO.getGoodsSkuId()); wrapper.eq(AuctionBidRecord::getDelFlag, 0); wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount); auctionBidRecordList = iAuctionBidRecordService.list(wrapper); @@ -355,13 +352,13 @@ for (int i = 0; i <= auctionSalesroomGoods.getSalesroomStock(); i++) { AuctionBidRecord auctionBidRecord = auctionBidRecordList.get(i); auctionBidRecord.setStatus(BidStatusEnum.SUCCESSFUL); AddOrder(auctionBidRecord.getGoodsSkuId(),auctionBidRecord.getMemberId(),auctionBidRecord.getLastBidAmount(),auctionSalesroom.getBound()); AddOrder(auctionBidRecord.getTargetId(),auctionBidRecord.getMemberId(),auctionBidRecord.getLastBidAmount(),auctionSalesroom.getBound()); } } else { for (int i = 0; i <= auctionBidRecordList.size(); i++) { AuctionBidRecord auctionBidRecord = auctionBidRecordList.get(i); auctionBidRecord.setStatus(BidStatusEnum.SUCCESSFUL); AddOrder(auctionBidRecord.getGoodsSkuId(),auctionBidRecord.getMemberId(),auctionBidRecord.getLastBidAmount(),auctionSalesroom.getBound()); AddOrder(auctionBidRecord.getTargetId(),auctionBidRecord.getMemberId(),auctionBidRecord.getLastBidAmount(),auctionSalesroom.getBound()); } } } @@ -403,7 +400,7 @@ LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId()); wrapper1.eq(AuctionBidRecord::getAuctionSalesroomId,byId.getId()); wrapper1.eq(AuctionBidRecord::getGoodsSkuId,byId1.getId()); wrapper1.eq(AuctionBidRecord::getTargetId,byId1.getId()); wrapper1.eq(AuctionBidRecord::getDelFlag,0); AuctionBidRecord list1 = auctionBidRecordService.getOne(wrapper1); if (list1!=null){ @@ -421,6 +418,56 @@ return AuctionSalesroomGoodsInfoVO; } @Override public List<AuctionBidRecordVO> getAuctionBidRecord(AuctionSalesroomGoodsInfoDTO auctionSalesroomGoodsInfoDTO) { LambdaQueryWrapper<AuctionBidRecord> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); wrapper.eq(AuctionBidRecord::getDelFlag,0); wrapper.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount); wrapper.last("limit 10"); List<AuctionBidRecord> auctionBidRecordList=auctionBidRecordService.list(wrapper); List<AuctionBidRecordVO> auctionBidRecordVOList=new ArrayList<>(); for (int i=0;i<auctionBidRecordList.size();i++){ AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO(); 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()); auctionBidRecordVOList.add(auctionBidRecordVO); } LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); 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=auctionBidRecordService.getOne(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=auctionBidRecordService.count(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; } public void AddOrder(Long goodsSkuId, Long memberId, BigDecimal lastBidAmount,BigDecimal bound) { OrderDTO order=new OrderDTO(); ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
@@ -358,7 +358,7 @@ LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); wrapper1.eq(AuctionBidRecord::getMemberId,memberAuctionSalesroomDTO.getMemberId()); wrapper1.eq(AuctionBidRecord::getAuctionSalesroomId,byId.getId()); wrapper1.eq(AuctionBidRecord::getGoodsSkuId,salesroomGoods.getId()); wrapper1.eq(AuctionBidRecord::getTargetId,salesroomGoods.getId()); wrapper1.eq(AuctionBidRecord::getDelFlag,0); AuctionBidRecord list1 = auctionBidRecordService.getOne(wrapper1); if (list1!=null){ @@ -378,6 +378,20 @@ return memberAuctionSalesroomInfoVO; } @Override public MemberAuctionSalesroomVO getMemberAuctionSalesroomSweep(MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO) { LambdaQueryWrapper<AuctionSalesroom> wrapper=Wrappers.lambdaQuery(); wrapper.eq(AuctionSalesroom::getAuctionSalesroomNo,MemberAuctionSalesroomDTO.getSalesroomNO()); wrapper.eq(AuctionSalesroom::getDelFlag,0); AuctionSalesroom auctionSalesroom=iAuctionSalesroomService.getOne(wrapper); MemberAuctionSalesroomVO memberAuctionSalesroomVO=new MemberAuctionSalesroomVO(); memberAuctionSalesroomVO.setSalesroomName(auctionSalesroom.getSalesroomName()); memberAuctionSalesroomVO.setStatus(auctionSalesroom.getStatus().getCode()); memberAuctionSalesroomVO.setDescription(auctionSalesroom.getDescription()); memberAuctionSalesroomVO.setSalesroomId(auctionSalesroom.getId()); return memberAuctionSalesroomVO; } public static String getAccessTokenByWX() throws Exception { String host = ACCESS_TOKEN_HOST + "?appid=" + WX_APPID + "&secret=" + WX_SECRET + "&grant_type=client_credential";