From 85f12011f76f3cf4eb665c20138a0e939a1fb6db Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 08 七月 2024 16:29:32 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 278 +++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 217 insertions(+), 61 deletions(-) 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 4f51fdc..b47b927 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 @@ -17,7 +17,6 @@ import com.ruoyi.common.core.enums.RequestTypeEnum; import com.ruoyi.common.core.enums.ReturnRequestStatusEnum; import com.ruoyi.common.core.exception.ServiceException; -import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; @@ -37,7 +36,17 @@ import com.ruoyi.order.util.OrderUtil; import com.ruoyi.order.util.SinataUtil; import com.ruoyi.system.api.constants.DelayTaskEnum; -import com.ruoyi.system.api.domain.*; +import com.ruoyi.system.api.domain.AuctionSalesroom; +import com.ruoyi.system.api.domain.CouponMember; +import com.ruoyi.system.api.domain.CustomConfig; +import com.ruoyi.system.api.domain.DelayTask; +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.Member; +import com.ruoyi.system.api.domain.MemberAddress; +import com.ruoyi.system.api.domain.Order; +import com.ruoyi.system.api.domain.OrderAuctionBond; import com.ruoyi.system.api.domain.dto.CouponMemberDTO; import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO; import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO; @@ -61,7 +70,10 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalDateTime; -import java.util.*; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.Set; import java.util.concurrent.TimeUnit; import java.util.function.Function; import java.util.regex.Matcher; @@ -130,17 +142,21 @@ if (OrderDTO.getOrderFrom().getCode()==1){ order.setOrderFrom(OrderFromEnum.COMMODITY_ORDER); order.setOrderNo(OrderUtil.getOrderNoForPrefix("SP")); + order.setIsOrder(1); } if (OrderDTO.getOrderFrom().getCode()==2){ order.setOrderFrom(OrderFromEnum.SNAP_ORDERS); order.setOrderNo(OrderUtil.getOrderNoForPrefix("MS")); + order.setIsOrder(1); } if (OrderDTO.getOrderFrom().getCode()==3){ order.setOrderFrom(OrderFromEnum.GROUP_PURCHASE_ORDERS); order.setOrderNo(OrderUtil.getOrderNoForPrefix("TG")); + order.setIsOrder(2); }if (OrderDTO.getOrderFrom().getCode()==4){ - order.setOrderFrom(OrderFromEnum.GROUP_PURCHASE_ORDERS); + order.setOrderFrom(OrderFromEnum.AUCTION_ORDERS); order.setOrderNo(OrderUtil.getOrderNoForPrefix("PM")); + order.setIsOrder(1); } order.setOrderTime(OrderDTO.getOrderTime()); order.setOrderFrom(OrderDTO.getOrderFrom()); @@ -258,6 +274,7 @@ if (memberOrderDTO.getOrderFrom()==3){ order.setOrderFrom(OrderFromEnum.GROUP_PURCHASE_ORDERS); order.setOrderNo(OrderUtil.getOrderNoForPrefix("TG")); + order.setIsOrder(2); } if (memberOrderDTO.getPaymentMethod()==1){ order.setPaymentMethod(PaymentMethodEnum.WECHAT); @@ -291,7 +308,7 @@ String goodsLock = "goods_lock_" + CacheConstants.SECKILL_GOODS + data.getId(); RLock redissonLock = redissonClient.getLock(goodsLock); Integer surpNum = 0; - try { + /* try { redissonLock.lock(30, TimeUnit.SECONDS); surpNum = redisService.getCacheObject(CacheConstants.SECKILL_GOODS + data.getId()); if (surpNum == null || surpNum < memberOrderDTO.getGoodsQuantity()) { @@ -300,10 +317,26 @@ }catch (Exception e){ throw new ServiceException("reids 出错"); + }*/ + + MemberOrderDTO memberOrderDTO1=new MemberOrderDTO(); + memberOrderDTO1.setMemberId(order.getMemberId()); + memberOrderDTO1.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); + Integer num=baseMapper.getSeckillMembers1(memberOrderDTO1); + Integer num1=0; + if (num!=null){ + num1 =num+1; + }else{ + num1=order.getGoodsQuantity(); } - order.setOrderFrom(OrderFromEnum.SNAP_ORDERS); + GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(data.getGoodsSkuId(), SecurityConstants.INNER).getData(); + if (data.getLimitNumber()<num1) { + throw new ServiceException("对不起,大于商品购买数"); + } + + order.setOrderFrom(OrderFromEnum.SNAP_ORDERS); memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); memberOrderVO.setPrice(data.getSeckillPrice()); memberOrderVO.setSjPrice(goodsSku.getPrice()); @@ -312,12 +345,12 @@ memberOrderVO.setYouhiPrice(data.getSeckillPrice()); pice=data.getSeckillPrice(); - if (data.getSeckillStock()<memberOrderDTO.getGoodsQuantity()){ + if (data.getSeckillStock()<1){ throw new ServiceException("对不起,购买数大于库存"); }else{ GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); - goodsStockUpdDTO.setGoodsSkuId(goodsSku.getId()); - goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()-memberOrderDTO.getGoodsQuantity()); + goodsStockUpdDTO.setGoodsSkuId(data.getId()); + goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()-1); goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER); } @@ -330,6 +363,10 @@ if (memberOrderDTO.getOrderFrom()==3){ order.setOrderFrom(OrderFromEnum.GROUP_PURCHASE_ORDERS); GoodsGroupPurchase data = goodsSkuClient.getGoodsSeckiGoodsGroupPurchaseOne(memberOrderDTO.getGoodsSkuId(), SecurityConstants.INNER).getData(); + Integer m=data.getCurrentNumber()+1; + if (m>data.getGroupSize()){ + throw new ServiceException("对不起,大成团人数"); + } GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(data.getGoodsSkuId(), SecurityConstants.INNER).getData(); memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); memberOrderVO.setPrice(data.getGroupPurchasePrice()); @@ -338,6 +375,8 @@ memberOrderVO.setSkuName(goodsSku.getSkuName()); memberOrderVO.setYouhiPrice(data.getGroupPurchasePrice()); pice=data.getGroupPurchasePrice(); + + goodsSkuClient.GroupPurchaseNum(memberOrderDTO.getGoodsSkuId(), SecurityConstants.INNER); order.setSkuName(goodsSku.getSkuName()); order.setPrice(data.getGroupPurchasePrice()); @@ -421,21 +460,20 @@ }if (memberOrderDTO.getGoodsQuantity()!=null){ if (order.getOrderFrom().getCode()==1){ GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); - if (goodsSku.getStock()<memberOrderDTO.getGoodsQuantity()){ - throw new ServiceException("对不起,购买数大于库存"); - }else{ + GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); goodsStockUpdDTO.setGoodsSkuId(goodsSku.getId()); goodsStockUpdDTO.setAuctionStock(goodsSku.getStock()+order.getGoodsQuantity()); goodsSkuClient.updGoodsStock1(goodsStockUpdDTO, SecurityConstants.INNER); - GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); - goodsStockUpdDTO1.setGoodsSkuId(goodsSku.getId()); - goodsStockUpdDTO1.setAuctionStock(goodsSku.getStock()-memberOrderDTO.getGoodsQuantity()); + if (goodsSku.getStock()+order.getGoodsQuantity()<memberOrderDTO.getGoodsQuantity()){ + throw new ServiceException("对不起,购买数大于库存"); + } + Integer m= goodsSku.getStock()+order.getGoodsQuantity(); + goodsStockUpdDTO.setAuctionStock(m-memberOrderDTO.getGoodsQuantity()); goodsSkuClient.updGoodsStock1(goodsStockUpdDTO, SecurityConstants.INNER); - order.setTotalAmount(goodsSku.getPrice().multiply(new BigDecimal(memberOrderDTO.getGoodsQuantity()))); order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity()); memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); @@ -444,7 +482,7 @@ memberOrderVO.setSkuName(goodsSku.getSkuName()); } - } + if (order.getOrderFrom().getCode()==2){ MemberOrderDTO memberOrderDTO1=new MemberOrderDTO(); memberOrderDTO1.setMemberId(order.getMemberId()); @@ -459,22 +497,25 @@ GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(data.getGoodsSkuId(), SecurityConstants.INNER).getData(); - if (data.getLimitNumber()<=num1){ - throw new ServiceException("对不起,大于商品购买数"); - }else{ - if (data.getSeckillStock()<memberOrderDTO.getGoodsQuantity()){ - throw new ServiceException("对不起,购买数大于库存"); - }else{ - order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity()); - GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); - goodsStockUpdDTO.setGoodsSkuId(data.getId()); - goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity()); - goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER); - GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); - goodsStockUpdDTO1.setGoodsSkuId(data.getId()); - goodsStockUpdDTO1.setAuctionStock(data.getSeckillStock()-memberOrderDTO.getGoodsQuantity()); - goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER); + if (order.getGoodsQuantity()!=order.getGoodsQuantity()){ + if (data.getLimitNumber()<num1){ + throw new ServiceException("对不起,大于商品购买数"); + }else{ + GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO(); + goodsStockUpdDTO.setGoodsSkuId(data.getId()); + goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity()); + goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER); + + if (data.getSeckillStock()+order.getGoodsQuantity()<memberOrderDTO.getGoodsQuantity()){ + throw new ServiceException("对不起,购买数大于库存"); + } + + Integer m=data.getSeckillStock()+order.getGoodsQuantity(); + GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); + goodsStockUpdDTO1.setGoodsSkuId(data.getId()); + goodsStockUpdDTO1.setAuctionStock(m-memberOrderDTO.getGoodsQuantity()); + goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO1,SecurityConstants.INNER); order.setTotalAmount(data.getSeckillPrice().multiply(new BigDecimal(memberOrderDTO.getGoodsQuantity()))); order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity()); @@ -483,13 +524,16 @@ order.setCoverPic(goodsSku.getCoverPic()); order.setSjPrice(goodsSku.getPrice()); + + } + memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); + memberOrderVO.setPrice(goodsSku.getPrice()); + memberOrderVO.setCoverPic(goodsSku.getCoverPic()); + memberOrderVO.setSkuName(goodsSku.getSkuName()); + memberOrderVO.setYouhiPrice(data.getSeckillPrice()); + } - } - memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); - memberOrderVO.setPrice(goodsSku.getPrice()); - memberOrderVO.setCoverPic(goodsSku.getCoverPic()); - memberOrderVO.setSkuName(goodsSku.getSkuName()); - memberOrderVO.setYouhiPrice(data.getSeckillPrice()); + } if (order.getOrderFrom().getCode()==3){ order.setOrderFrom(OrderFromEnum.GROUP_PURCHASE_ORDERS); GoodsGroupPurchase data = goodsSkuClient.getGoodsSeckiGoodsGroupPurchaseOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); @@ -499,28 +543,27 @@ memberOrderDTO1.setGoodsSkuId(order.getGoodsSkuId()); Integer num=baseMapper.getGoodsGroupPurchase(memberOrderDTO1); Integer num1=num+order.getGoodsQuantity(); - if (data.getLimitNumber()<=num1){ - throw new ServiceException("对不起,大于商品购买数"); - }else{ - if (data.getLimitNumber()<memberOrderDTO.getGoodsQuantity()){ - throw new ServiceException("对不起,购买数大于库存"); + if (order.getGoodsQuantity()!=order.getGoodsQuantity()){ + if (data.getLimitNumber()<=num1){ + throw new ServiceException("对不起,大于商品购买数"); }else{ - memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); - memberOrderVO.setPrice(data.getGroupPurchasePrice()); - memberOrderVO.setSjPrice(goodsSku.getPrice()); - memberOrderVO.setCoverPic(goodsSku.getCoverPic()); - memberOrderVO.setSkuName(goodsSku.getSkuName()); - memberOrderVO.setYouhiPrice(data.getGroupPurchasePrice()); - order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity()); - order.setSkuName(goodsSku.getSkuName()); - order.setPrice(data.getGroupPurchasePrice()); - order.setCoverPic(goodsSku.getCoverPic()); - order.setSjPrice(goodsSku.getPrice()); + if (data.getLimitNumber()<memberOrderDTO.getGoodsQuantity()){ + throw new ServiceException("对不起,购买数大于库存"); + }else{ + memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); + memberOrderVO.setPrice(data.getGroupPurchasePrice()); + memberOrderVO.setSjPrice(goodsSku.getPrice()); + memberOrderVO.setCoverPic(goodsSku.getCoverPic()); + memberOrderVO.setSkuName(goodsSku.getSkuName()); + memberOrderVO.setYouhiPrice(data.getGroupPurchasePrice()); + order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity()); + order.setSkuName(goodsSku.getSkuName()); + order.setPrice(data.getGroupPurchasePrice()); + order.setCoverPic(goodsSku.getCoverPic()); + order.setSjPrice(goodsSku.getPrice()); + } } } - - - } } if (memberOrderDTO.getGoodsQuantity()!=null){ @@ -645,6 +688,7 @@ if(memberOrderListDTO.getOrderStatus()!=null){ wrapper.eq(Order::getOrderStatus,memberOrderListDTO.getOrderStatus().getCode()-1); } + wrapper.eq(Order::getIsOrder,1); wrapper.eq(Order::getDelFlag,0); wrapper.orderByDesc(Order::getCancelTime); Page<Order> page1 = this.page(page, wrapper); @@ -652,6 +696,20 @@ PageDTO<MemberOrderListVO> memberOrderListVOPageDTO = PageDTO.of(page1, MemberOrderListVO.class); List<MemberOrderListVO> list = memberOrderListVOPageDTO.getList(); for (MemberOrderListVO MemberOrderList:list){ + if (MemberOrderList.getOrderStatus().getCode()==1){ + if (MemberOrderList.getOrderFrom().getCode()==1||MemberOrderList.getOrderFrom().getCode()==2||MemberOrderList.getOrderFrom().getCode()==3){ + LocalDateTime localDateTime = MemberOrderList.getOrderTime().plusMinutes(30); + if (LocalDateTime.now().isAfter(localDateTime)) { + // dateTime1 在 dateTime2 之后 + MemberOrderList.setOrderStatus(OrderStatusEnum.CANCELED); + Order order = this.getOrder(MemberOrderList.getId()); + order.setOrderStatus(OrderStatusEnum.CANCELED); + this.updateById(order); + } + + } + + } OrderReturnRequest orderReturnRequest = orderReturnRequestService.getOne( Wrappers.lambdaQuery(OrderReturnRequest.class) .eq(OrderReturnRequest::getOrderId, @@ -730,21 +788,63 @@ order.setOrderStatus(OrderStatusEnum.CANCELED); order.setCancelTime(LocalDateTime.now()); baseMapper.updateById(order); + + if(order.getOrderNo().contains("SP")){ + GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); + GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); + goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId()); + goodsStockUpdDTO1.setAuctionStock(goodsSku.getStock()+order.getGoodsQuantity()); + goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER); + } + + if(order.getOrderNo().contains("MS")){ + GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); + GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); + goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId()); + goodsStockUpdDTO1.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity()); + goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER); + } + + } if (order.getOrderStatus().getCode() == 2) { order.setOrderStatus(OrderStatusEnum.CANCELED); order.setCancelTime(LocalDateTime.now()); baseMapper.updateById(order); + if(order.getOrderNo().contains("SP")){ + GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); + GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); + goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId()); + goodsStockUpdDTO1.setAuctionStock(goodsSku.getStock()+order.getGoodsQuantity()); + goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER); + } + + if(order.getOrderNo().contains("MS")){ + GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); + GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO(); + goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId()); + goodsStockUpdDTO1.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity()); + goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER); + } + + if (order.getCouponId()!=0){ + CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); + couponMemberDTO1.setId(order.getCouponId()); + couponMemberDTO1.setCouponStatus(0); + promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); + } + + updMembeOneDTO MembeOneDTO = new updMembeOneDTO(); MembeOneDTO.setType(2); MembeOneDTO.setMemberId(order.getMemberId()); MembeOneDTO.setMoney(order.getTotalAmount()); MembeOneDTO.setTotalPoints(order.getPoints()); - memberClient.updMembeOne(MembeOneDTO); + memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER); - if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 1) {//支付宝 + if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 2) {//支付宝 //获取支付信息 LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery(); paylogEntityWrapper.eq(Paylog::getOutTradeNo, order.getOrderNo()); @@ -756,7 +856,7 @@ } } - } else if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 2) {//微信 + } else if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 1) {//微信 //获取支付信息 LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery(); paylogEntityWrapper.eq(Paylog::getOutTradeNo, order.getOrderNo()); @@ -766,7 +866,7 @@ Integer refundFee = Integer.parseInt(refundMoney.substring(0, refundMoney.length() - 3)); String money = SinataUtil.doubleRetainTwo(paylog.getPayMoney() * 100d); Integer totalFee = Integer.parseInt(money.substring(0, money.length() - 3)); - refundFee = 1; + refundFee = Integer.parseInt(money.substring(0, money.length() - 3)); String regEx = "[^0-9]"; Pattern p = Pattern.compile(regEx); @@ -781,6 +881,62 @@ } } } + + @Override + public void delOrderOne(MemberOrderListDTO memberOrderListDTO) { + + Order byId = this.getById(memberOrderListDTO.getId()); + goodsSkuClient.GroupPurchaseNum1(byId.getGoodsSkuId(), SecurityConstants.INNER); + this.removeById(memberOrderListDTO.getId()); + if (byId.getOrderStatus().getCode() == 2) { + + updMembeOneDTO MembeOneDTO = new updMembeOneDTO(); + MembeOneDTO.setType(2); + MembeOneDTO.setMemberId(byId.getMemberId()); + MembeOneDTO.setMoney(byId.getTotalAmount()); + MembeOneDTO.setTotalPoints(byId.getPoints()); + memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER); + + + if (byId.getPaymentMethod() != null && byId.getPaymentMethod().getCode() == 2) {//支付宝 + //获取支付信息 + LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery(); + paylogEntityWrapper.eq(Paylog::getOutTradeNo, byId.getOrderNo()); + Paylog paylog = iPaylogService.getOne(paylogEntityWrapper); + if (paylog != null) { + boolean bo = paylogService.refundForAlipay(paylog.getOutTradeNo(), paylog.getTradeNo(), paylog.getPayMoney()); + if (!bo) { + System.out.println("支付宝退款失败"); + } + } + + } else if (byId.getPaymentMethod() != null && byId.getPaymentMethod().getCode() == 1) {//微信 + //获取支付信息 + LambdaQueryWrapper<Paylog> paylogEntityWrapper = Wrappers.lambdaQuery(); + paylogEntityWrapper.eq(Paylog::getOutTradeNo, byId.getOrderNo()); + Paylog paylog = iPaylogService.getOne(paylogEntityWrapper); + if (paylog != null) { + String refundMoney = SinataUtil.doubleRetainTwo(paylog.getPayMoney() * 100d); + Integer refundFee = Integer.parseInt(refundMoney.substring(0, refundMoney.length() - 3)); + String money = SinataUtil.doubleRetainTwo(paylog.getPayMoney() * 100d); + Integer totalFee = Integer.parseInt(money.substring(0, money.length() - 3)); + refundFee = Integer.parseInt(money.substring(0, money.length() - 3)); + + String regEx = "[^0-9]"; + Pattern p = Pattern.compile(regEx); + Matcher m = p.matcher(byId.getOrderNo()); + String ma = m.replaceAll("").trim(); + boolean bo = paylogService.refundForWxpay(4, paylog.getTradeNo(), paylog.getOutTradeNo(), "R" + ma, totalFee, refundFee, "2"); + if (!bo) { + System.out.println("微信退款失败"); + } + + } + } + } + baseMapper.deleteById(memberOrderListDTO.getId()); + } + @Override public void AffirmOrderOne(MemberOrderListDTO memberOrderListDTO) { Order order = baseMapper.selectById(memberOrderListDTO.getId()); -- Gitblit v1.7.1