From d15661f60f025e2d2625a5b67c661ecbd7c0365e Mon Sep 17 00:00:00 2001 From: rentaiming <806181062@qq.com> Date: 星期二, 21 五月 2024 16:00:37 +0800 Subject: [PATCH] 写拍卖师端接口 --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java | 41 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 37 insertions(+), 4 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 c46947e..e8da7fd 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,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.auction.controller.forepart.DTO.AuctionSalesroomGoodsDTO; +import com.ruoyi.auction.controller.forepart.DTO.OrderDTO; import com.ruoyi.auction.controller.forepart.VO.AuctionSalesroomVO; import com.ruoyi.auction.controller.forepart.VO.ForepartAuctionSalesroomGoodsVO; import com.ruoyi.auction.domain.pojo.AuctionBidRecord; @@ -14,17 +15,18 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.auction.service.IAuctionSalesroomService; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.enums.AuctionOrderTypeEnum; import com.ruoyi.common.core.enums.AuctionStartStatusEnum; import com.ruoyi.common.core.enums.BidStatusEnum; +import com.ruoyi.common.core.enums.OrderFromEnum; import com.ruoyi.system.api.domain.GoodsSku; +import com.ruoyi.system.api.domain.MemberAddress; import com.ruoyi.system.api.feignClient.GoodsSkuClient; -import io.swagger.annotations.ApiOperation; -import org.apache.poi.ss.formula.functions.T; +import com.ruoyi.system.api.feignClient.MemberClient; import org.springframework.stereotype.Service; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; +import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @@ -50,6 +52,9 @@ @Resource private IAuctionBidRecordService iAuctionBidRecordService; + + @Resource + private MemberClient emberClient; /** @@ -300,6 +305,8 @@ auctionSalesroomGood.setStatus(AuctionStartStatusEnum.ENDED); iAuctionSalesroomGoodsService.updateById(auctionSalesroomGood); + AuctionSalesroom auctionSalesroom=iAuctionSalesroomService.getById(auctionSalesroomGood.getAuctionSalesroomId()); + AuctionSalesroomGoods auctionSalesroomGoods=iAuctionSalesroomGoodsService.getById(auctionSalesroomGoodsDTO.getGoodsSkuId()); List<AuctionBidRecord> auctionBidRecordList=new ArrayList<>(); if (auctionSalesroomGoods.getStatus().getCode()==1) { @@ -309,10 +316,12 @@ wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount); auctionBidRecordList = iAuctionBidRecordService.list(wrapper); //判断 + if (auctionBidRecordList.size() >= auctionSalesroomGoods.getItemQuantity()) { for (int i = 0; i <= auctionSalesroomGoods.getItemQuantity(); i++) { AuctionBidRecord auctionBidRecord = auctionBidRecordList.get(i); auctionBidRecord.setStatus(BidStatusEnum.SUCCESSFUL); + AddOrder(auctionBidRecord.getGoodsSkuId(),auctionBidRecord.getMemberId(),auctionBidRecord.getLastBidAmount(),auctionSalesroom.getBound()); } } else { for (int i = 0; i <= auctionBidRecordList.size(); i++) { @@ -323,4 +332,28 @@ } } + + + public void AddOrder(Long goodsSkuId, Long memberId, BigDecimal lastBidAmount,BigDecimal bound) { + OrderDTO order=new OrderDTO(); + order.setGoodsSkuId(goodsSkuId); + order.setOrderTime(LocalDateTime.now()); + order.setOrderFrom(OrderFromEnum.AUCTION_ORDERS); + order.setMemberId(memberId); + AuctionSalesroomGoods auctionSalesroomGoods=iAuctionSalesroomGoodsService.getById(goodsSkuId); + order.setGoodsQuantity(1); + order.setTotalAmount(lastBidAmount); + + R<MemberAddress> memberAddressR=emberClient.getMemberAddressOne(memberId); + MemberAddress memberAddress=memberAddressR.getData(); + order.setReceiverCity(memberAddress.getCity()); + order.setReceiverDetailAddress(memberAddress.getDetailedAddress()); + order.setReceiverphone(memberAddress.getRecipientPhone()); + order.setReceiverName(memberAddress.getRecipientName()); + order.setBound(bound); + order.setAuctionType(AuctionOrderTypeEnum.AUCTION_ITEMS); + + } + + } -- Gitblit v1.7.1