Ver Fonte

退款任务接口

cup há 3 anos atrás
pai
commit
d0dd7d7d25

+ 31 - 0
mp-quartz/src/main/java/com/qs/mp/quartz/task/PayTask.java

@@ -0,0 +1,31 @@
+package com.qs.mp.quartz.task;
+
+import com.qs.mp.pay.service.IPayOrderService;
+import com.qs.mp.pay.service.IWalletService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * 支付相关任务
+ * @author Cup
+ * @date 2022/4/20
+ */
+@Component("payTask")
+public class PayTask {
+
+    protected final Logger logger = LoggerFactory.getLogger(this.getClass().getSimpleName());
+
+
+    @Autowired
+    private IWalletService walletService;
+
+    @Autowired
+    private IPayOrderService payOrderService;
+
+    public void refund(String orderNo, Integer refundAmount){
+        walletService.refund(orderNo, refundAmount);
+    }
+
+}

+ 6 - 0
mp-service/src/main/java/com/qs/mp/pay/service/IWalletService.java

@@ -21,6 +21,12 @@ public interface IWalletService {
    */
   JSONObject pay(BizTypeEnum bizType, String bizId, String openId, int money);
 
+  /**
+   * 订单退款
+   * @return
+   */
+  boolean refund(String orderNo, Integer refundAmount);
+
   /**
    *
    *订单支付回调统一处理函数

+ 21 - 0
mp-service/src/main/java/com/qs/mp/pay/service/impl/WalletServiceImpl.java

@@ -126,6 +126,27 @@ public class WalletServiceImpl implements IWalletService {
 
   }
 
+  @Override
+  public boolean refund(String orderNo, Integer refundAmount) {
+
+    String reqUrl = baseUrl + "/pay/refundOrder";
+
+    JSONObject sendData = new JSONObject();
+    sendData.put("shop_no", userPayShopNo);
+    sendData.put("timestamp",DateUtils.getTime());
+    sendData.put("order_no",orderNo);
+    sendData.put("refund_amount", refundAmount);
+    sendData.put("order_remark", "测试退款");
+    sendData.put("type","sno");
+    sendData.put("sign",userPaySign);
+    LogUtil.error(logger, "sendData:" + sendData.toJSONString());
+    System.err.println(sendData.toJSONString());
+    String result = OkHttpUtil.postJsonParams(reqUrl, sendData.toJSONString());
+    LogUtil.error(logger, "result:" + result);
+    System.err.println(result);
+    return false;
+  }
+
   @Override
   public void payOrderStatusHandle(PayOrder payOrder) {
     String orderNo = payOrder.getOrderId();