Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
Z
zion
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
1
合并请求
1
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
zhengfg
zion
Commits
a562e2f2
提交
a562e2f2
authored
11月 07, 2019
作者:
zgy
1
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
完成paypal支付
上级
dd27e692
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
244 行增加
和
42 行删除
+244
-42
TokenVerification.java
...com/diaoyun/zion/chinafrica/client/TokenVerification.java
+2
-1
PayPalController.java
.../diaoyun/zion/chinafrica/controller/PayPalController.java
+34
-5
TbCfExpCatRelController.java
...n/zion/chinafrica/controller/TbCfExpCatRelController.java
+0
-1
PayPalService.java
...va/com/diaoyun/zion/chinafrica/service/PayPalService.java
+3
-1
PayPalServiceImpl.java
...aoyun/zion/chinafrica/service/impl/PayPalServiceImpl.java
+121
-16
PayPalResult.java
...ain/java/com/diaoyun/zion/chinafrica/vo/PayPalResult.java
+48
-0
domain.properties
src/main/resources/properties/domain.properties
+12
-8
PayTest.java
src/test/java/com/diaoyun/zion/PayTest.java
+24
-10
没有找到文件。
src/main/java/com/diaoyun/zion/chinafrica/client/TokenVerification.java
浏览文件 @
a562e2f2
...
...
@@ -46,7 +46,8 @@ public class TokenVerification {
"&&!execution(* com.diaoyun.zion.chinafrica.controller.GoodsTypeController.*(..))"
+
"&&!execution(* com.diaoyun.zion.chinafrica.controller.VersionController.*(..))"
+
"&&!execution(* com.diaoyun.zion.chinafrica.controller.TbCfFeeController.*(..))"
+
"&&!execution(* com.diaoyun.zion.chinafrica.controller.TbCfOrderController.*(..))"
"&&!execution(* com.diaoyun.zion.chinafrica.controller.TbCfOrderController.*(..))"
+
"&&!execution(* com.diaoyun.zion.chinafrica.controller.PayPalController.*(..))"
)
public
void
controllerAspect
()
{
...
...
src/main/java/com/diaoyun/zion/chinafrica/controller/PayPalController.java
浏览文件 @
a562e2f2
package
com
.
diaoyun
.
zion
.
chinafrica
.
controller
;
import
com.diaoyun.zion.chinafrica.service.PayPalService
;
import
com.diaoyun.zion.chinafrica.vo.PayPalResult
;
import
com.diaoyun.zion.master.base.Result
;
import
com.egzosn.pay.common.api.PayService
;
import
com.egzosn.pay.common.bean.MethodType
;
...
...
@@ -28,23 +29,51 @@ public class PayPalController {
@Autowired
private
PayPalService
payPalService
;
@PostMapping
(
"/pay"
)
public
Result
payForOrder
(
@RequestParam
(
"orderId"
)
String
orderId
){
/**
* 发起支付
*
* @param orderId
* @return
*/
@PostMapping
(
"/pay"
)
public
Result
payForOrder
(
@RequestParam
(
"orderId"
)
String
orderId
)
{
return
payPalService
.
payForOrder
(
orderId
);
}
/**
* 支付成功的回调
*
* @param request
* @return
*/
@GetMapping
(
"/success"
)
public
Result
payForSuccess
(
HttpServletRequest
request
,
@RequestParam
(
"orderId"
)
String
orderId
)
{
public
Result
payForSuccess
(
HttpServletRequest
request
)
{
return
payPalService
.
payForSuccess
(
request
,
orderId
);
return
payPalService
.
payForSuccess
(
request
);
}
/**
* 取消支付
*
* @return
*/
@GetMapping
(
"/cancel"
)
public
Result
cancelPay
(){
public
Result
cancelPay
()
{
return
new
Result
().
setMessage
(
"订单支付已取消"
);
}
/**
* 退款
* @param orderId
* @param payId
* @return
*/
@GetMapping
(
"/refund"
)
public
Result
refund
(
@RequestParam
(
"orderId"
)
String
orderId
,
@RequestParam
(
"payId"
)
String
payId
)
{
return
payPalService
.
refund
(
orderId
,
payId
);
}
}
src/main/java/com/diaoyun/zion/chinafrica/controller/TbCfExpCatRelController.java
浏览文件 @
a562e2f2
...
...
@@ -31,7 +31,6 @@ public class TbCfExpCatRelController {
@ApiOperation
(
"关联运费模板和商品种类"
)
@PostMapping
(
"/buildRelate"
)
public
Result
buildRelate
(
@ApiParam
(
"包含分类id数组和模板id"
)
@RequestBody
Map
<
String
,
Object
>
param
)
{
List
<
String
>
categoryIdArray
=
(
List
<
String
>)
param
.
get
(
"categoryIds"
);
String
tempalteId
=
(
String
)
param
.
get
(
"tempalteId"
);
...
...
src/main/java/com/diaoyun/zion/chinafrica/service/PayPalService.java
浏览文件 @
a562e2f2
package
com
.
diaoyun
.
zion
.
chinafrica
.
service
;
import
com.diaoyun.zion.chinafrica.vo.PayPalResult
;
import
com.diaoyun.zion.master.base.Result
;
import
org.springframework.web.bind.annotation.RequestParam
;
...
...
@@ -7,5 +8,6 @@ import javax.servlet.http.HttpServletRequest;
public
interface
PayPalService
{
public
Result
payForOrder
(
String
orderId
);
public
Result
payForSuccess
(
HttpServletRequest
request
,
String
orderId
);
public
Result
payForSuccess
(
HttpServletRequest
request
);
Result
refund
(
String
orderId
,
String
payId
);
}
src/main/java/com/diaoyun/zion/chinafrica/service/impl/PayPalServiceImpl.java
浏览文件 @
a562e2f2
差异被折叠。
点击展开。
src/main/java/com/diaoyun/zion/chinafrica/vo/PayPalResult.java
0 → 100644
浏览文件 @
a562e2f2
package
com
.
diaoyun
.
zion
.
chinafrica
.
vo
;
/**
* 支付返回类
*/
public
class
PayPalResult
{
//订单id
private
String
orderId
;
//支付id
private
String
payId
;
//paypal回调url
private
String
paypalUrl
;
//订单描述
private
String
orderDesc
;
public
String
getOrderId
()
{
return
orderId
;
}
public
void
setOrderId
(
String
orderId
)
{
this
.
orderId
=
orderId
;
}
public
String
getPayId
()
{
return
payId
;
}
public
void
setPayId
(
String
payId
)
{
this
.
payId
=
payId
;
}
public
String
getPaypalUrl
()
{
return
paypalUrl
;
}
public
void
setPaypalUrl
(
String
paypalUrl
)
{
this
.
paypalUrl
=
paypalUrl
;
}
public
String
getOrderDesc
()
{
return
orderDesc
;
}
public
void
setOrderDesc
(
String
orderDesc
)
{
this
.
orderDesc
=
orderDesc
;
}
}
src/main/resources/properties/domain.properties
浏览文件 @
a562e2f2
...
...
@@ -36,10 +36,10 @@ tencent.wordpos.app_url=https://api.ai.qq.com/fcgi-bin/nlp/nlp_wordpos
################腾讯翻译配置 END###################
##################stripe公钥(不加密)和私钥(已用 AESUtils 加密)################################
stripe.pk
=
pk_live_5MdXU4N1cvmU1yatYp5v0E0n00C7tAXpGB
stripe.sk
=
d87UqTQ6QUjuNkXrjH51Gl/Zqnfy98HRl23xljism2hpaXjSNTwdl6pv6FM7D4tT
#
stripe.pk=pk_test_rXUSgU8Kw7DLhDzMbHM0r55O00JAzVBBJR
#
stripe.sk=3ff57yz9S5INBexBOnzi/ZaxClXkXlJ+FZ6XLc/f2vpESScG7YOaQaG2YNRic3HF
#
stripe.pk=pk_live_5MdXU4N1cvmU1yatYp5v0E0n00C7tAXpGB
#
stripe.sk=d87UqTQ6QUjuNkXrjH51Gl/Zqnfy98HRl23xljism2hpaXjSNTwdl6pv6FM7D4tT
stripe.pk
=
pk_test_rXUSgU8Kw7DLhDzMbHM0r55O00JAzVBBJR
stripe.sk
=
3ff57yz9S5INBexBOnzi/ZaxClXkXlJ+FZ6XLc/f2vpESScG7YOaQaG2YNRic3HF
######################outlook的账户公钥密钥#####################
#stripe.pk=pk_test_uljWJWUuD8fzZXPlGtDZ1fxx00o1ZKr7QL
#stripe.sk=BbLXgo+ohgrAP7p3tB52YTqNwhAiTYzYWAX0W+/1PES6kOupxwc/7xpAR8QsG6gP
...
...
@@ -54,7 +54,11 @@ express.info.token=d44426bd5b64dd2
#paypal.client.app=AW7u5JVLhzA7_0EznoZ7uKHFzz1_nACOtt6k9oEpbisGUy3nqjjb3L-MmBFnD3YDuMSapcXpfSiYWtiB
#paypal.client.secret=EIyDryMDyM0BDWp2mtuGFdSU2WOkWtmSuGGaRnUiIom7kxuM7JhuSFfETbC8X4e9E_ZbMX4zg4jHA1lV
paypal.mode
=
live
paypal.client.app
=
AWbyqn1AKJeVvzNsYms_9fs_LVr5_w5Xyt8nX5q0Wmqoq0NYCZf2wyz9DDeA5ArsWx0LFBwl5Oz6amD2
paypal.client.secret
=
EFhRjCBzhtI1lf88Xiy3VF07gVpu1vWk0VheSP3n5J0fhQxA6Pu7j89dbyYTLj3FxqiJBOlxQRKG_58e
paypal.success.url
=
http://127.0.0.1:8083/paypal/success
paypal.cancel.url
=
http://127.0.0.1:8083/paypal/cancel
\ No newline at end of file
#################################真实######################################################
#paypal.client.app=AUUFVT30kPIP-a7dcQfPS8KYdl5cCZIwyYNIS79Cp7E_0GNZWfut3ZHQiRIoamqRstHigMoTTy1n8Glj
#paypal.client.secret=EJBVz86f9Mg482bL3lniPtLYe_ULyBkjTS0q-qhZBIVFC3dgae-J7-JJA5iWQAZsQqtAOV_ctVGWNLJS
#################################测试######################################################
paypal.client.app
=
AW7u5JVLhzA7_0EznoZ7uKHFzz1_nACOtt6k9oEpbisGUy3nqjjb3L-MmBFnD3YDuMSapcXpfSiYWtiB
paypal.client.secret
=
EIyDryMDyM0BDWp2mtuGFdSU2WOkWtmSuGGaRnUiIom7kxuM7JhuSFfETbC8X4e9E_ZbMX4zg4jHA1lV
paypal.success.url
=
http://localhost:8083/zion/paypal/success
paypal.cancel.url
=
http://localhost:8083/zion/paypal/cancel
\ No newline at end of file
src/test/java/com/diaoyun/zion/PayTest.java
浏览文件 @
a562e2f2
package
com
.
diaoyun
.
zion
;
import
com.diaoyun.zion.master.util.JsoupUtil
;
import
com.egzosn.pay.common.api.PayService
;
import
com.egzosn.pay.common.bean.CurType
;
import
com.egzosn.pay.common.bean.MethodType
;
...
...
@@ -8,13 +9,18 @@ import com.egzosn.pay.common.http.HttpConfigStorage;
import
com.egzosn.pay.paypal.api.PayPalConfigStorage
;
import
com.egzosn.pay.paypal.api.PayPalPayService
;
import
com.egzosn.pay.paypal.bean.PayPalTransactionType
;
import
com.google.gson.JsonArray
;
import
com.google.gson.JsonElement
;
import
com.paypal.api.payments.Links
;
import
net.sf.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
java.awt.image.BufferedImage
;
import
java.math.BigDecimal
;
import
java.util.Iterator
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.UUID
;
/**
...
...
@@ -30,24 +36,32 @@ public class PayTest {
public
static
void
main
(
String
[]
args
)
{
PayPalConfigStorage
storage
=
new
PayPalConfigStorage
();
storage
.
setClientID
(
"AW
byqn1AKJeVvzNsYms_9fs_LVr5_w5Xyt8nX5q0Wmqoq0NYCZf2wyz9DDeA5ArsWx0LFBwl5Oz6amD2
"
);
storage
.
setClientSecret
(
"E
FhRjCBzhtI1lf88Xiy3VF07gVpu1vWk0VheSP3n5J0fhQxA6Pu7j89dbyYTLj3FxqiJBOlxQRKG_58e
"
);
//
storage.setTest(true);
storage
.
setClientID
(
"AW
7u5JVLhzA7_0EznoZ7uKHFzz1_nACOtt6k9oEpbisGUy3nqjjb3L-MmBFnD3YDuMSapcXpfSiYWtiB
"
);
storage
.
setClientSecret
(
"E
IyDryMDyM0BDWp2mtuGFdSU2WOkWtmSuGGaRnUiIom7kxuM7JhuSFfETbC8X4e9E_ZbMX4zg4jHA1lV
"
);
storage
.
setTest
(
true
);
//发起付款后的页面转跳地址
storage
.
setReturnUrl
(
"http://
127.0.0.1:8083/pay/success
"
);
storage
.
setReturnUrl
(
"http://
localhost:8083/zion/paypal/success?orderId=d56afd2ab3134dee87b6ba7dc88c4c8c
"
);
//取消按钮转跳地址,这里用异步通知地址的兼容的做法
storage
.
setNotifyUrl
(
"http://
127.0.0.1:8083/pay
/cancel"
);
storage
.
setNotifyUrl
(
"http://
localhost:8083/zion/paypal
/cancel"
);
HttpConfigStorage
httpConfigStorage
=
new
HttpConfigStorage
();
PayService
service
=
new
PayPalPayService
(
storage
);
BigDecimal
price
=
new
BigDecimal
(
"500"
);
PayOrder
order
=
new
PayOrder
(
"Order_payment:"
,
"Order payment"
,
price
,
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
),
PayPalTransactionType
.
sale
);
Map
orderInfo
=
service
.
orderInfo
(
order
);
String
request
=
service
.
buildRequest
(
orderInfo
,
MethodType
.
POST
);
System
.
out
.
println
(
request
);
// String payId =(String) orderInfo.get("id");
// System.out.println("orderInfo====>>>"+orderInfo);
// System.out.println("links====>>>"+orderInfo.get("links"));
// String request = service.buildRequest(orderInfo, MethodType.POST);
// System.out.println(request);
// Set set = orderInfo.entrySet();
// Iterator iterator = set.iterator();
// while (iterator.hasNext()){
// System.out.println(iterator.next());
// }
System
.
out
.
println
(
orderInfo
.
get
(
"links"
));
Map
<
String
,
String
>
orderHref
=
JsoupUtil
.
getOrderHref
(
orderInfo
.
toString
());
System
.
out
.
println
(
orderHref
.
get
(
"approval_url"
));
}
}
张光耀
@zgy
被提及 commit
fec9355f
·
11月 07, 2019
被提及 commit
fec9355f
被提及 commit fec9355f639b302d37d5125ea6b26dfb423395b4
切换提交列表
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论