You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

47 lines
2.1 KiB

package org.jeecg;
import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult;
import org.jeecg.modules.pay.MpWxPayService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@SpringBootApplication
public class PayDemoApplication {
public static void main(String[] args) {
ConfigurableApplicationContext app = SpringApplication.run(PayDemoApplication.class, args);
// 用法说明 @Autowired MpWxPayService mpWxPayService
MpWxPayService bean = app.getBean(MpWxPayService.class);
//Object callback = bean.createAppOrder("产品名", "127.0.0.1", "89", 1, "20219092", "{}","");
//System.err.println(callback.toString());
Object webOrder = bean.createWebOrder("产品名", "117.61.97.157", "89", 1, "20219092", "{}", "");
System.err.println(webOrder.toString());
//缓存该数据用于与异步通知对比处理
//WxPayAppOrderResult(sign=6E404CB2E71FD391BB0FE2C2B12F5264, prepayId=wx17011430290850d50f73c68d61e80a0000, partnerId=1560997691, appId=wx7081b3f6277c100d, packageValue=Sign=WXPay, timeStamp=1637082870, nonceStr=1637082870392)
//取以上数据交由前端调起支付
}
//部署该地址至外网接受异步通知
@RequestMapping("/notify")
public Object notify(@RequestBody String requestBody, @Autowired MpWxPayService mpWxPayService){
WxPayOrderNotifyResult notify = mpWxPayService.notify(requestBody);
String outTradeNo = notify.getOutTradeNo();
System.err.println(outTradeNo);
//对比outTradeNo进行业务处理
if (notify == null){
//会继续通知
return "FAIL";
}
//不再通知该结果
return "SUCCESS";
}
}