From c5f7cdfaf69deb6fb3bb4a8379beb0e9bbe0f3c0 Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期五, 31 五月 2024 16:28:12 +0800
Subject: [PATCH] 修改循环注入
---
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java | 8 ++
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java | 8 ++
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java | 1
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/inner/InnerOrderAuctionBondController.java | 36 +++++++++--
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java | 2
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomGoodsController.java | 2
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java | 100 +++++++++++++++++++++++++++++---
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java | 9 +++
8 files changed, 147 insertions(+), 19 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java
index 1d66ebb..db3c93c 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java
@@ -58,6 +58,15 @@
return R.fail("获取保证金订单列表失败:" + cause.getMessage());
}
+ @Override
+ public R<OrderAuctionBond> getOrderAuctionBondone(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, String source) {
+ return R.fail("获取保证金订单失败" + cause.getMessage());
+ }
+
+ @Override
+ public R<OrderAuctionBond> getOrderAuctionBondone1(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, String source) {
+ return R.fail("获取保证金订单失败" + cause.getMessage());
+ }
@Override
public R<Map<String, Object>> refund(List<RefundDTO> refundDTOS, String source) {
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java
index bdec9d5..c0b965c 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java
@@ -72,6 +72,14 @@
R<List<OrderAuctionBond>> getOrderAuctionBondList1(@RequestBody MemberAuctionSalesroomDTO memberAuctionSalesroomDTO,
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+ @PostMapping("/order-auction-bond/getOrderAuctionBondone")
+ R<OrderAuctionBond> getOrderAuctionBondone(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO,
+ @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+
+ @PostMapping("/order-auction-bond/getOrderAuctionBondone1")
+ R<OrderAuctionBond> getOrderAuctionBondone1(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO,
+ @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+
/**
* 批量退款
*
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 b706ca7..db5f444 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
@@ -121,6 +121,14 @@
}
+ @RequestMapping("/CancelSignUpNow")
+ @ResponseBody
+ @ApiOperation(value = "用户端-拍卖取消报名")
+ public R CancelSignUpNow(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) {
+ iAuctionSalesroomService.CancelSignUpNow(memberAuctionSalesroomBondDTO);
+ 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 c83f520..444bb4c 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
@@ -93,7 +93,7 @@
@ResponseBody
@ApiOperation(value = "拍卖师端-拍卖场商品立即结束")
public R auctionSalesroomGoodsEnd(@RequestBody AuctionSalesroomGoodsDTO auctionSalesroomGoodsDTO) {
- iAuctionSalesroomGoodsService.auctionSalesroomGoodsStart(auctionSalesroomGoodsDTO);
+ iAuctionSalesroomGoodsService.auctionSalesroomGoodsEnd(auctionSalesroomGoodsDTO);
return R.ok();
}
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 0596e10..495b3bc 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
@@ -73,6 +73,8 @@
PayInfoVO SaveSignUpNow(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO);
+ void CancelSignUpNow(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO);
+
void SaveBid(@RequestBody BidDTO BidVO);
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 1d0e3e8..0dbf12e 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
@@ -399,6 +399,7 @@
if (auctionSalesroomGoods.getStatus().getCode()==1) {
LambdaQueryWrapper<AuctionBidRecord> wrapper = Wrappers.lambdaQuery();
+ wrapper.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsDTO.getAuctionSalesroomId());
wrapper.eq(AuctionBidRecord::getTargetId, auctionSalesroomGoodsDTO.getGoodsSkuId());
wrapper.eq(AuctionBidRecord::getDelFlag, 0);
wrapper.orderByDesc(AuctionBidRecord::getLastBidAmount);
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 527a996..dd17481 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
@@ -30,6 +30,7 @@
import com.ruoyi.auction.domain.AuctionBidRecord;
import com.ruoyi.auction.domain.AuctionSalesroomGoods;
import com.ruoyi.auction.domain.AuctionVideo;
+import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper;
import com.ruoyi.auction.mapper.AuctionSalesroomMapper;
import com.ruoyi.auction.service.*;
@@ -40,6 +41,7 @@
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.BondStatusEnum;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.IDhelper;
import com.ruoyi.common.core.utils.StringUtils;
@@ -54,12 +56,7 @@
import com.ruoyi.system.api.domain.Member;
import com.ruoyi.system.api.domain.OrderAuctionBond;
import com.ruoyi.system.api.domain.SysUser;
-import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO;
-import com.ruoyi.system.api.domain.dto.BidDTO;
-import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
-import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO;
-import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomDTO;
-import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomWdDTO;
+import com.ruoyi.system.api.domain.dto.*;
import com.ruoyi.system.api.domain.vo.PayInfoVO;
import com.ruoyi.system.api.domain.vo.WdMemberAuctionSalesroomVO;
import com.ruoyi.system.api.feignClient.GoodsSkuClient;
@@ -69,11 +66,7 @@
import io.seata.spring.annotation.GlobalTransactional;
import java.math.BigDecimal;
import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import javax.annotation.Resource;
@@ -133,6 +126,9 @@
private static final String WX_APPID = "wxb7f0ea286fc4e535";
private static final String WX_SECRET = "852a2512a6ab559cafc68bae5d4160ac";
+
+ @Resource
+ private AuctionBidRecordMapper auctionBidRecordMapper;
//支付寶
@@ -425,6 +421,88 @@
}
@Override
+ public void CancelSignUpNow(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) {
+ if (memberAuctionSalesroomBondDTO.getBondType()==2){
+ OrderAuctionBond orderAuctionBond = orderClient.getOrderAuctionBondone(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData();
+
+ List<RefundDTO> refundDTOList = new ArrayList<>();
+ RefundDTO refundDTO = new RefundDTO();
+ refundDTO.setOrderNo(orderAuctionBond.getOrderNo());
+ refundDTO.setAmount(orderAuctionBond.getBond());
+
+ LambdaQueryWrapper<AuctionBidRecord> wrapper = Wrappers.lambdaQuery();
+ wrapper.eq(AuctionBidRecord::getAuctionSalesroomId,memberAuctionSalesroomBondDTO.getAuctionSalesroomId());
+ wrapper.eq(AuctionBidRecord::getAuctionType,2);
+ wrapper.eq(AuctionBidRecord::getStatus,BidStatusEnum.SUCCESSFUL);
+ wrapper.eq(AuctionBidRecord::getDelFlag, 0);
+ AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper);
+ if (auctionBidRecord!=null){
+ throw new ServiceException("当前拍卖场中标拍品订单未完成,请完成后再试。");
+ }
+
+
+ // 远程调用订单服务进行退款
+ Map<String, Object> data = orderClient.refund(refundDTOList,
+ SecurityConstants.INNER).getData();
+ // 处理退款返回结果
+ List<String> successfulOrders = new ArrayList<>();
+ List<String> failedOrders = new ArrayList<>();
+
+ data.forEach((key, value) -> {
+ if ((boolean) value) {
+ successfulOrders.add(key);
+ } else {
+ failedOrders.add(key);
+ }
+ });
+ // 退款成功的订单修改状态
+ List<Long> ids = new ArrayList<>();
+ ids.add(orderAuctionBond.getId());
+ // 远程调用订单服务修改订单状态
+ orderClient.updateOrderAuctionBondStatus(ids, BondStatusEnum.PAID);
+
+ }else{
+ OrderAuctionBond orderAuctionBond = orderClient.getOrderAuctionBondone1(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData();
+ List<RefundDTO> refundDTOList = new ArrayList<>();
+ RefundDTO refundDTO = new RefundDTO();
+ refundDTO.setOrderNo(orderAuctionBond.getOrderNo());
+ refundDTO.setAmount(orderAuctionBond.getBond());
+
+ LambdaQueryWrapper<AuctionBidRecord> wrapper = Wrappers.lambdaQuery();
+ wrapper.eq(AuctionBidRecord::getTargetId, memberAuctionSalesroomBondDTO.getAuctionGoodsId());
+ wrapper.eq(AuctionBidRecord::getAuctionType,1);
+ wrapper.eq(AuctionBidRecord::getStatus,BidStatusEnum.SUCCESSFUL);
+ wrapper.eq(AuctionBidRecord::getDelFlag, 0);
+ AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper);
+ if (auctionBidRecord!=null){
+ throw new ServiceException("当前拍卖场中标拍品订单未完成,请完成后再试。");
+ }
+
+ // 远程调用订单服务进行退款
+ Map<String, Object> data = orderClient.refund(refundDTOList,
+ SecurityConstants.INNER).getData();
+ // 处理退款返回结果
+ List<String> successfulOrders = new ArrayList<>();
+ List<String> failedOrders = new ArrayList<>();
+
+ data.forEach((key, value) -> {
+ if ((boolean) value) {
+ successfulOrders.add(key);
+ } else {
+ failedOrders.add(key);
+ }
+ });
+ // 退款成功的订单修改状态
+ List<Long> ids = new ArrayList<>();
+ ids.add(orderAuctionBond.getId());
+ // 远程调用订单服务修改订单状态
+ orderClient.updateOrderAuctionBondStatus(ids, BondStatusEnum.PAID);
+ }
+
+
+ }
+
+ @Override
public void SaveBid(BidDTO bidVO) {
Member membeOne = memberClient.getMembeOne(bidVO.getMemberId(), SecurityConstants.INNER).getData();
if (bidVO.getAuctionType()==2){
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/inner/InnerOrderAuctionBondController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/inner/InnerOrderAuctionBondController.java
index 7e3e869..3a81973 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/inner/InnerOrderAuctionBondController.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/inner/InnerOrderAuctionBondController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.enums.AuctionOrderTypeEnum;
import com.ruoyi.common.core.enums.BondStatusEnum;
@@ -16,13 +17,7 @@
import com.ruoyi.system.api.domain.vo.PayInfoVO;
import org.apache.poi.ss.formula.functions.T;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
/**
* <p>
@@ -122,7 +117,34 @@
wrapper.eq(OrderAuctionBond::getDelFlag,0);
List<OrderAuctionBond> list = iOrderAuctionBondService.list(wrapper);
return R.ok(list);
+ }
+ @InnerAuth
+ @PostMapping("/getOrderAuctionBondone1")
+ @ResponseBody
+ public R<OrderAuctionBond> getOrderAuctionBondone1(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) {
+ LambdaQueryWrapper<OrderAuctionBond> wrapper= Wrappers.lambdaQuery();
+ wrapper.eq(OrderAuctionBond::getMemberId,memberAuctionSalesroomBondDTO.getMemberId());
+ wrapper.eq(OrderAuctionBond::getAuctionGoodsId,memberAuctionSalesroomBondDTO.getAuctionGoodsId());
+ wrapper.eq(OrderAuctionBond::getBoundStatus,1);
+ wrapper.eq(OrderAuctionBond::getDelFlag,0);
+ OrderAuctionBond one = iOrderAuctionBondService.getOne(wrapper);
+ return R.ok(one);
+ }
+
+
+ @InnerAuth
+ @PostMapping("/getOrderAuctionBondone")
+ @ResponseBody
+ public R<OrderAuctionBond> getOrderAuctionBondone(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO,
+ @RequestHeader(SecurityConstants.FROM_SOURCE) String source){
+ LambdaQueryWrapper<OrderAuctionBond> wrapper= Wrappers.lambdaQuery();
+ wrapper.eq(OrderAuctionBond::getMemberId,memberAuctionSalesroomBondDTO.getMemberId());
+ wrapper.eq(OrderAuctionBond::getAuctionSalesroomId,memberAuctionSalesroomBondDTO.getAuctionSalesroomId());
+ wrapper.eq(OrderAuctionBond::getBoundStatus,2);
+ wrapper.eq(OrderAuctionBond::getDelFlag,0);
+ OrderAuctionBond one = iOrderAuctionBondService.getOne(wrapper);
+ return R.ok(one);
}
@InnerAuth
--
Gitblit v1.7.1