|
|
@@ -1,15 +1,20 @@
|
|
|
package com.travel.controller;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
-import com.alibaba.fastjson.JSONObject;
|
|
|
-import com.alipay.api.AlipayClient;
|
|
|
-import com.alipay.api.DefaultAlipayClient;
|
|
|
-import com.alipay.api.request.AlipayTradePagePayRequest;
|
|
|
+import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
|
|
|
import com.travel.zfb.ZfbPayUtils;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.alipay.api.AlipayClient;
|
|
|
+import com.alipay.api.DefaultAlipayClient;
|
|
|
+import com.alipay.api.domain.AlipayTradePrecreateModel;
|
|
|
+import com.alipay.api.domain.AlipayTradeQueryModel;
|
|
|
+import com.alipay.api.request.AlipayTradePrecreateRequest;
|
|
|
+import com.alipay.api.request.AlipayTradeQueryRequest;
|
|
|
+import com.alipay.api.response.AlipayTradePrecreateResponse;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
@@ -34,34 +39,35 @@ public class ZfbPayController extends ZfbPayUtils {
|
|
|
public Map<String, Object> toPay(String price) throws Exception {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
//获得初始化的AlipayClient
|
|
|
+ System.out.println(APPID);
|
|
|
+ System.out.println(GATEWAYURL);
|
|
|
+ System.out.println(MERCHANTPRIVATEKEY);
|
|
|
+ System.out.println(CHARSET);
|
|
|
+ System.out.println(ALIPAYPUBLICKEY);
|
|
|
+ System.out.println(SIGNTYPE);
|
|
|
AlipayClient alipayClient = new DefaultAlipayClient(GATEWAYURL, APPID, MERCHANTPRIVATEKEY, "json", CHARSET, ALIPAYPUBLICKEY, SIGNTYPE);
|
|
|
|
|
|
//设置请求参数
|
|
|
- AlipayTradePagePayRequest alipayRequest = new AlipayTradePagePayRequest();
|
|
|
- alipayRequest.setNotifyUrl(NOTIFYURL);
|
|
|
- try {
|
|
|
- String out_trade_no = getOrderNo();//订单号
|
|
|
- Map<String,Object> para = new HashMap<>();
|
|
|
- para.put("out_trade_no", out_trade_no);
|
|
|
- para.put("subject", "途丫-" + out_trade_no);//订单标题
|
|
|
- para.put("total_amount", price);//订单金额 单位元
|
|
|
- para.put("timeout_express", "30m");
|
|
|
- //发送请求参数 orderid 订单id,price表示价格,title表示订单标题
|
|
|
-// alipayRequest.setBizContent("{\"out_trade_no\":\"" + out_trade_no + "\","
|
|
|
-// + "\"total_amount\":\"" + price + "\","
|
|
|
-// + "\"subject\":\"途丫-" + out_trade_no+ "\","
|
|
|
-// + "\"product_code\":\"FAST_INSTANT_TRADE_PAY\"}");
|
|
|
- alipayRequest.setBizContent(JSON.toJSONString(para));
|
|
|
- //请求
|
|
|
- String result;
|
|
|
- result = alipayClient.pageExecute(alipayRequest).getBody();
|
|
|
+ AlipayTradePrecreateRequest request = new AlipayTradePrecreateRequest();
|
|
|
+ String out_trade_no = getOrderNo();//订单号
|
|
|
+ Map<String,Object> para = new HashMap<>();
|
|
|
+ para.put("out_trade_no", out_trade_no);
|
|
|
+ para.put("subject", "途丫-" + out_trade_no);//订单标题
|
|
|
+ para.put("total_amount", price);//订单金额 单位元
|
|
|
+ para.put("timeout_express", "15m");
|
|
|
+
|
|
|
+ request.setBizContent(JSON.toJSONString(para));
|
|
|
+ request.setNotifyUrl(NOTIFYURL);
|
|
|
+ //调用接口
|
|
|
+ AlipayTradePrecreateResponse response = alipayClient.execute(request);
|
|
|
+ System.out.println(JSONObject.toJSONString(response));
|
|
|
+ if(response.isSuccess()){
|
|
|
map.put("msg", "200");
|
|
|
- map.put("data", result);
|
|
|
- } catch (Exception e) {
|
|
|
- // TODO Auto-generated catch block
|
|
|
- e.printStackTrace();
|
|
|
+ map.put("data", response);
|
|
|
+ } else {
|
|
|
+ System.out.println(1);
|
|
|
map.put("msg", "500");
|
|
|
- map.put("data", "服务器请求异常,请稍后再试");
|
|
|
+ map.put("errMsg", "调用失败");
|
|
|
}
|
|
|
return map;
|
|
|
}
|