puzhibing
2025-01-08 b22df417e0bc423c788b013feaad686531d69eed
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
@@ -132,8 +132,10 @@
      List<OrderRefundPassList> orderRefundPassList = this.baseMapper.getOrderRefundPassList(pageInfo, refundPassListVo.getCode(), appUserIds, shopId, refundPassListVo.getRefundMethod(), refundPassListVo.getStatus());
      for (OrderRefundPassList refundPassList : orderRefundPassList) {
         AppUser appUser = appUserClient.getAppUserById(refundPassList.getAppUserId());
         refundPassList.setUserName(appUser.getName());
         refundPassList.setPhone(appUser.getPhone());
         if(null != appUser){
            refundPassList.setUserName(appUser.getName());
            refundPassList.setPhone(appUser.getPhone());
         }
      }
      return pageInfo.setRecords(orderRefundPassList);
   }
@@ -160,16 +162,22 @@
      if(refundPass.getRefundMethod() == 2 && 2 == status){
         refundPass.setStatus(2);
      }
      if(3 == status){
         refundPass.setStatus(3);
      }
      refundPass.setPassRemark(passRemark);
      this.updateById(refundPass);
      //仅退款的售后需要将支付金额原路返回,然后再扣减支付获得的积分
      if(refundPass.getRefundMethod() == 2 && 2 == status){
         Order order = orderService.getById(refundPass.getOrderId());
         order.setOrderStatus(6);
         orderService.updateById(order);
         //返回订单支付金额和回退积分和会员等级
         orderService.refundPayMoney(order);
         R r = orderService.refundPayMoney(order);
         if(200 != r.getCode()){
            return r;
         }
         orderService.updateById(order);
      }
      this.updateById(refundPass);
      return R.ok();
   }
   
@@ -189,13 +197,16 @@
         return R.fail("操作失败");
      }
      refundPass.setStatus(2);
      this.updateById(refundPass);
      //仅退款的售后需要将支付金额原路返回,然后再扣减支付获得的积分
      Order order = orderService.getById(refundPass.getOrderId());
      order.setOrderStatus(6);
      orderService.updateById(order);
      //返回订单支付金额和回退积分和会员等级
      orderService.refundPayMoney(order);
      R r = orderService.refundPayMoney(order);
      if(200 != r.getCode()){
         return r;
      }
      this.updateById(refundPass);
      orderService.updateById(order);
      return R.ok();
   }