Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibzpay
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibzpay
提交
57ce8670
提交
57ce8670
编写于
8月 31, 2020
作者:
zhouweidong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
支付宝接口调整
上级
1bffd5e1
变更
3
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
62 行增加
和
4 行删除
+62
-4
PayTradeAspect.java
...ava/cn/ibizlab/core/extensions/aspect/PayTradeAspect.java
+39
-0
PayCoreService.java
...va/cn/ibizlab/core/extensions/service/PayCoreService.java
+17
-4
PayCoreResource.java
.../java/cn/ibizlab/api/rest/extensions/PayCoreResource.java
+6
-0
未找到文件。
ibzpay-core/src/main/java/cn/ibizlab/core/extensions/aspect/PayTradeAspect.java
0 → 100644
浏览文件 @
57ce8670
package
cn
.
ibizlab
.
core
.
extensions
.
aspect
;
import
cn.ibizlab.core.pay.domain.PayTrade
;
import
cn.ibizlab.core.pay.service.IPayTradeService
;
import
lombok.SneakyThrows
;
import
org.aspectj.lang.JoinPoint
;
import
org.aspectj.lang.annotation.AfterReturning
;
import
org.aspectj.lang.annotation.Aspect
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.ObjectUtils
;
/**
* 保存交易记录切面类
*
*/
@Aspect
@Component
public
class
PayTradeAspect
{
@Autowired
IPayTradeService
payTradeService
;
@AfterReturning
(
value
=
"execution(* cn.ibizlab.core.extensions.service.PayCoreService.pagePay(..)) || execution(* cn.ibizlab.core.extensions.service.PayCoreService.preCreate(..))"
)
@SneakyThrows
public
void
savePayTrade
(
JoinPoint
point
){
Object
[]
args
=
point
.
getArgs
();
if
(
ObjectUtils
.
isEmpty
(
args
)
||
args
.
length
==
0
)
return
;
Object
serviceParam
=
args
[
0
];
if
(
serviceParam
instanceof
PayTrade
){
PayTrade
entity
=(
PayTrade
)
serviceParam
;
entity
.
setTradeName
(
entity
.
getSubject
());
payTradeService
.
save
(
entity
);
}
}
}
ibzpay-core/src/main/java/cn/ibizlab/core/extensions/service/PayCoreService.java
浏览文件 @
57ce8670
...
...
@@ -11,6 +11,7 @@ import com.alipay.api.AlipayClient;
import
com.alipay.api.DefaultAlipayClient
;
import
com.alipay.api.request.*
;
import
com.alipay.api.response.*
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
lombok.SneakyThrows
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -53,7 +54,7 @@ public class PayCoreService {
"{\"out_trade_no\":\""
+
trade
.
getOutTradeNo
()
+
"\","
+
"\"total_amount\":\""
+
trade
.
getTotalAmount
()
+
"\","
+
"\"subject\":\""
+
trade
.
getSubject
()
+
"\","
+
"\"product_code\":\"FAST_INSTANT_TRADE_PAY\"
}
"
+
"\"product_code\":\"FAST_INSTANT_TRADE_PAY\""
+
"}"
);
AlipayTradePagePayResponse
response
=
alipayClient
.
pageExecute
(
request
);
if
(
response
.
isSuccess
())
{
...
...
@@ -64,6 +65,16 @@ public class PayCoreService {
return
response
.
getBody
();
}
/**
* 支付宝支付结果回调
* @param trade
* @return
*/
public
String
pagePayCallBack
(
PayTrade
trade
){
//更新payTrade status
return
"success"
;
}
/**
* 预创建订单,生成支付二维码
* @param trade
...
...
@@ -253,10 +264,12 @@ public class PayCoreService {
private
PayOpenAccess
getOpenAccess
(
PayTrade
trade
){
PayOpenAccess
openAccess
=
null
;
String
accessId
=
trade
.
getAccessId
();
String
appId
=
trade
.
getAppId
();
if
(!
StringUtils
.
isEmpty
(
accessId
))
openAccess
=
openAccessService
.
getById
(
accessId
);
if
(
ObjectUtils
.
isEmpty
(
openAccess
))
throw
new
BadRequestAlertException
(
"支付失败,未能获取到开放平台"
,
"PayCoreService"
,
"pagePay"
);
openAccess
=
openAccessService
.
getOne
(
Wrappers
.<
PayOpenAccess
>
lambdaQuery
().
eq
(
PayOpenAccess:
:
getAccessKey
,
appId
).
or
().
eq
(
PayOpenAccess:
:
getId
,
accessId
));
if
(
ObjectUtils
.
isEmpty
(
openAccess
)
||
(
openAccess
.
getDisabled
()!=
null
&&
openAccess
.
getDisabled
()==
1
))
throw
new
BadRequestAlertException
(
"获取开放平台配置失败"
,
"PayCoreService"
,
"pagePay"
);
trade
.
setAccessId
(
openAccess
.
getId
());
return
openAccess
;
}
...
...
ibzpay-provider/ibzpay-provider-api/src/main/java/cn/ibizlab/api/rest/extensions/PayCoreResource.java
浏览文件 @
57ce8670
...
...
@@ -50,4 +50,10 @@ public class PayCoreResource {
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
payCoreService
.
pagePay
(
payTradeMapping
.
toDomain
(
dto
)));
}
@ApiOperation
(
value
=
"网页支付回调"
,
tags
=
{
"网页支付回调"
},
notes
=
"网页支付回调"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/trade/pagepaycallback"
)
public
ResponseEntity
<
String
>
pagePayCallBack
(
@Validated
@RequestBody
PayTradeDTO
dto
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
payCoreService
.
pagePayCallBack
(
payTradeMapping
.
toDomain
(
dto
)));
}
}
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录