From 0b9f2eeb5e2ff7995f39d217e90a6c64e37366d4 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 17 六月 2024 15:32:44 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java | 84 +++++++++++++++++++++++++++++++++++------ 1 files changed, 71 insertions(+), 13 deletions(-) diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java index b1eaece..58f439f 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java @@ -3,14 +3,23 @@ import static com.ruoyi.order.util.tencent.WXPay.requestRefundService; import static com.ruoyi.order.util.tencent.WXPay.requestUnifiedorderService; +import com.alipay.api.AlipayClient; +import com.alipay.api.DefaultAlipayClient; +import com.alipay.api.request.AlipayTradeRefundRequest; +import com.alipay.api.response.AlipayTradeRefundResponse; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.enums.OrderStatusEnum; +import com.ruoyi.common.core.enums.PointStatusEnum; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.order.domain.Paylog; +import com.ruoyi.order.mapper.OrderMapper; import com.ruoyi.order.mapper.PaylogMapper; +import com.ruoyi.order.service.IOrderService; import com.ruoyi.order.service.IPaylogService; import com.ruoyi.order.util.SinataUtil; import com.ruoyi.order.util.alipay.config.AlipayConfig; @@ -20,8 +29,13 @@ import com.ruoyi.order.util.tencent.common.XMLParser; import com.ruoyi.order.util.tencent.protocol.AppPayReqData; import com.ruoyi.order.util.tencent.protocol.UnifiedorderReqData; +import com.ruoyi.system.api.domain.Order; import com.ruoyi.system.api.domain.dto.BondDTO; +import com.ruoyi.system.api.domain.dto.MemberPointsDTO; import com.ruoyi.system.api.domain.dto.RefundDTO; +import com.ruoyi.system.api.domain.dto.updMembeOneDTO; +import com.ruoyi.system.api.feignClient.AuctionClient; +import com.ruoyi.system.api.feignClient.MemberClient; import com.ruoyi.system.api.feignClient.OrderClient; import java.io.IOException; import java.io.PrintWriter; @@ -57,17 +71,23 @@ @Resource - private OrderClient orderClient; + private OrderMapper OrderMapper; + @Resource + private AuctionClient auctionClient; + + @Resource + private MemberClient memberClient; @Override - public R<Map<String, Object>> getPayInfo(Integer uid, Integer type, String subject, String body, String orderNO,String openId, HttpServletRequest request) { + public R<Map<String, Object>> getPayInfo(Integer uid, Integer type, String orderNO,String openId, HttpServletRequest request) { Double price = 0.0; - + String subject; + String body; try { if(judgeContainsStr(orderNO)){ price= Double.valueOf(1); - body = body; - subject = subject; + body = " 订单支付"; + subject = " 订单支付"; Map<String, Object> map = new HashMap<String, Object>(); if (type == 1) { // 支付宝预下单 @@ -127,12 +147,31 @@ Paylog one = this.getOne(wrapper); if(SinataUtil.isEmpty(one)) { this.save(paylog1); - if (paylog1.getOutTradeNo().contains("BO")) { BondDTO bondVO=new BondDTO(); bondVO.setOrderNO(paylog1.getOutTradeNo()); - orderClient.UpdateBond(bondVO, SecurityConstants.INNER); + auctionClient.UpdateBond(bondVO, SecurityConstants.INNER); - } + LambdaQueryWrapper<Order> wrapper1= Wrappers.lambdaQuery(); + wrapper1.eq(Order::getOrderNo,paylog1.getOutTradeNo()); + wrapper1.eq(Order::getDelFlag,0); + Order page1 = OrderMapper.selectOne(wrapper1); + page1.setOrderStatus(OrderStatusEnum.GOODS_TO_BE_RECEIVED); + page1.setPayTime(LocalDateTime.now()); + OrderMapper.updateById(page1); + + MemberPointsDTO memberPointsDTO=new MemberPointsDTO(); + memberPointsDTO.setMemberId(page1.getMemberId()); + memberPointsDTO.setPointsType(1); + memberPointsDTO.setPointsStatus(PointStatusEnum.INCREASE); + memberPointsDTO.setPoints(page1.getPoints()); + memberClient.addMemberPoints(memberPointsDTO); + updMembeOneDTO MembeOneDTO=new updMembeOneDTO(); + MembeOneDTO.setType(1); + MembeOneDTO.setMemberId(page1.getMemberId()); + MembeOneDTO.setMoney(page1.getTotalAmount()); + MembeOneDTO.setTotalPoints(page1.getPoints()); + memberClient.updMembeOne(MembeOneDTO); + } @@ -222,13 +261,32 @@ System.out.println("支付完成时间" + time_end); paylog.setAddTime(LocalDateTime.now()); this.save(paylog); - if (paylog.getOutTradeNo().contains("BO")) { - BondDTO bondVO=new BondDTO(); - bondVO.setOrderNO(paylog.getOutTradeNo()); - orderClient.UpdateBond(bondVO, SecurityConstants.INNER); + BondDTO bondVO=new BondDTO(); - } + bondVO.setOrderNO(paylog.getOutTradeNo()); + auctionClient.UpdateBond(bondVO, SecurityConstants.INNER); + LambdaQueryWrapper<Order> wrapper1= Wrappers.lambdaQuery(); + wrapper1.eq(Order::getOrderNo,paylog.getOutTradeNo()); + wrapper1.eq(Order::getDelFlag,0); + Order page1 = OrderMapper.selectOne(wrapper1); + page1.setOrderStatus(OrderStatusEnum.GOODS_TO_BE_RECEIVED); + page1.setPayTime(LocalDateTime.now()); + OrderMapper.updateById(page1); + + MemberPointsDTO memberPointsDTO=new MemberPointsDTO(); + memberPointsDTO.setMemberId(page1.getMemberId()); + memberPointsDTO.setPointsType(1); + memberPointsDTO.setPointsStatus(PointStatusEnum.INCREASE); + memberPointsDTO.setPoints(page1.getPoints()); + memberClient.addMemberPoints(memberPointsDTO); + + updMembeOneDTO MembeOneDTO=new updMembeOneDTO(); + MembeOneDTO.setType(1); + MembeOneDTO.setMemberId(page1.getMemberId()); + MembeOneDTO.setMoney(page1.getTotalAmount()); + MembeOneDTO.setTotalPoints(page1.getPoints()); + memberClient.updMembeOne(MembeOneDTO); log.debug("WxpayController.notify__回调处理成功:SUCCESS"); response.getOutputStream().print("success"); -- Gitblit v1.7.1