|
|
@@ -3,14 +3,21 @@ package com.zheng.pay.web.controller;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.alipay.api.AlipayClient;
|
|
|
+import com.alipay.api.internal.util.AlipaySignature;
|
|
|
import com.alipay.api.request.AlipayTradePagePayRequest;
|
|
|
import com.alipay.api.request.AlipayTradeWapPayRequest;
|
|
|
import com.zheng.common.base.BaseController;
|
|
|
+import com.zheng.common.util.PropertiesFileUtil;
|
|
|
+import com.zheng.common.util.RequestUtil;
|
|
|
+import com.zheng.pay.common.constant.PayConstant;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
/**
|
|
|
* 支付宝
|
|
|
* Created by ZhangShuzheng on 2017/04/04.
|
|
|
@@ -54,4 +61,21 @@ public class AlipayController extends BaseController {
|
|
|
return alipayClient.pageExecute(alipayTradeWapPayRequest).getBody();
|
|
|
}
|
|
|
|
|
|
+ // 异步通知
|
|
|
+ @RequestMapping("/notifyUrl")
|
|
|
+ @ResponseBody
|
|
|
+ public Object notifyUrl(HttpServletRequest request) throws Exception {
|
|
|
+ Map<String, String> parameterMap = RequestUtil.getParameterMap(request);
|
|
|
+ // 验签
|
|
|
+ boolean signVerified = AlipaySignature.rsaCheckV1(
|
|
|
+ parameterMap,
|
|
|
+ PropertiesFileUtil.getInstance().get("alipay.alipay_public_key"),
|
|
|
+ PropertiesFileUtil.getInstance().get("alipay.charset"),
|
|
|
+ PropertiesFileUtil.getInstance().get("alipay.sign_type"));
|
|
|
+ if (!signVerified) {
|
|
|
+ return PayConstant.FAILED;
|
|
|
+ }
|
|
|
+ return PayConstant.SUCCESS;
|
|
|
+ }
|
|
|
+
|
|
|
}
|