Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
baa-pay-server
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
贺超
baa-pay-server
Commits
2265a9ed
Commit
2265a9ed
authored
Sep 27, 2021
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
创建项目
parent
db9a6484
Changes
20
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
260 additions
and
50 deletions
+260
-50
Constant.java
baa-pay-core/src/main/java/cn/quant/baa/pay/Constant.java
+5
-0
Acquirer.java
...ore/src/main/java/cn/quant/baa/pay/acquirer/Acquirer.java
+6
-5
MerchantAcquirer.java
...main/java/cn/quant/baa/pay/acquirer/MerchantAcquirer.java
+8
-3
WeiXinMerchantAcquirer.java
...quant/baa/pay/acquirer/weixin/WeiXinMerchantAcquirer.java
+10
-2
BusinessMappingAspect.java
...n/java/cn/quant/baa/pay/aspect/BusinessMappingAspect.java
+0
-2
ModelBuilder.java
...rc/main/java/cn/quant/baa/pay/component/ModelBuilder.java
+4
-3
DictionaryViewer.java
...c/main/java/cn/quant/baa/pay/config/DictionaryViewer.java
+0
-1
DictType.java
...ay-core/src/main/java/cn/quant/baa/pay/dict/DictType.java
+0
-8
CallbackRequestData.java
.../java/cn/quant/baa/pay/model/web/CallbackRequestData.java
+16
-0
BusinessController.java
...c/main/java/cn/quant/baa/pay/rest/BusinessController.java
+1
-1
WebMvcConfiguration.java
...ain/java/cn/quant/baa/pay/config/WebMvcConfiguration.java
+0
-1
package-info.java
...ice/src/main/java/cn/quant/baa/pay/http/package-info.java
+0
-4
package-info.java
...c/main/java/cn/quant/baa/pay/jpa/entity/package-info.java
+0
-4
package-info.java
...in/java/cn/quant/baa/pay/jpa/repository/package-info.java
+0
-4
WeiXinCallbackRequestData.java
...cn/quant/baa/pay/model/web/WeiXinCallbackRequestData.java
+78
-0
WeiXinCallbackResource.java
...va/cn/quant/baa/pay/model/web/WeiXinCallbackResource.java
+67
-0
package-info.java
.../src/main/java/cn/quant/baa/pay/mybatis/package-info.java
+0
-4
TransactionController.java
...ain/java/cn/quant/baa/pay/rest/TransactionController.java
+54
-1
application-dev.properties
...tice/src/main/resources/config/application-dev.properties
+1
-1
TransactionService.java
...ain/java/cn/quant/baa/pay/service/TransactionService.java
+10
-6
No files found.
baa-pay-core/src/main/java/cn/quant/baa/pay/Constant.java
View file @
2265a9ed
...
...
@@ -23,4 +23,9 @@ public class Constant {
@Deprecated
public
static
final
Duration
PAY_DUE_TIME
=
Duration
.
ofMinutes
(
30
);
public
final
static
String
DICT_TYPE_PAY
=
"PAY"
;
public
final
static
String
DICT_CODE_WXP
=
"WXP"
;
public
final
static
String
DICT_TYPE_APP_CONFIG
=
"APP_CONFIG"
;
public
final
static
String
DICT_CODE_CALLBACK_URL
=
"CALLBACK_URL"
;
}
baa-pay-core/src/main/java/cn/quant/baa/pay/acquirer/Acquirer.java
View file @
2265a9ed
...
...
@@ -9,9 +9,10 @@ import cn.quant.baa.pay.model.web.*;
public
interface
Acquirer
{
Object
code
();
ChannelResponse
pay
(
PayRequestData
payRequestData
,
TransactionSummaryEntity
payHistoryEntity
)
throws
Exception
;
ChannelResponse
refund
(
RefundRequestData
refundRequestData
)
throws
Exception
;
ChannelResponse
checkPay
(
CheckPayRequestData
checkPayRequestData
)
throws
Exception
;
ChannelResponse
checkRefund
(
CheckRefundRequestData
checkRefundRequestData
)
throws
Exception
;
ChannelResponse
close
(
CloseRequestData
closeRequestData
)
throws
Exception
;
ChannelResponse
pay
(
PayRequestData
request
,
TransactionSummaryEntity
transaction
)
throws
Exception
;
ChannelResponse
refund
(
RefundRequestData
request
)
throws
Exception
;
ChannelResponse
checkPay
(
CheckPayRequestData
request
)
throws
Exception
;
ChannelResponse
checkRefund
(
CheckRefundRequestData
request
)
throws
Exception
;
ChannelResponse
close
(
CloseRequestData
request
)
throws
Exception
;
void
callback
(
CallbackRequestData
request
)
throws
Exception
;
}
baa-pay-core/src/main/java/cn/quant/baa/pay/acquirer/MerchantAcquirer.java
View file @
2265a9ed
...
...
@@ -64,9 +64,9 @@ public class MerchantAcquirer implements Acquirer {
}
@Override
public
ChannelResponse
pay
(
PayRequestData
request
,
TransactionSummaryEntity
history
)
throws
Exception
{
ChannelResponse
response
=
acquirers
.
get
(
request
.
getChanId
()).
pay
(
request
,
history
);
response
.
setOrderNo
(
String
.
valueOf
(
history
.
getTransactionId
()));
public
ChannelResponse
pay
(
PayRequestData
request
,
TransactionSummaryEntity
transaction
)
throws
Exception
{
ChannelResponse
response
=
acquirers
.
get
(
request
.
getChanId
()).
pay
(
request
,
transaction
);
response
.
setOrderNo
(
String
.
valueOf
(
transaction
.
getTransactionId
()));
return
response
;
}
...
...
@@ -89,4 +89,9 @@ public class MerchantAcquirer implements Acquirer {
public
ChannelResponse
close
(
CloseRequestData
request
)
throws
Exception
{
return
acquirers
.
get
(
request
.
getChanId
()).
close
(
request
);
}
@Override
public
void
callback
(
CallbackRequestData
request
)
throws
Exception
{
acquirers
.
get
(
request
.
getChanId
()).
callback
(
request
);
}
}
baa-pay-core/src/main/java/cn/quant/baa/pay/acquirer/weixin/WeiXinMerchantAcquirer.java
View file @
2265a9ed
...
...
@@ -8,6 +8,7 @@ import cn.quant.baa.pay.jpa.entity.TransactionSummaryEntity;
import
cn.quant.baa.pay.model.dto.DictionaryItemDTO
;
import
cn.quant.baa.pay.model.web.*
;
import
cn.quant.spring.NullException
;
import
cn.quant.spring.ProfileException
;
import
cn.quant.spring.util.StringUtils
;
import
com.fasterxml.jackson.databind.JsonNode
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
...
...
@@ -35,6 +36,7 @@ import java.security.spec.X509EncodedKeySpec;
import
java.util.Base64
;
import
java.util.UUID
;
import
static
cn
.
quant
.
baa
.
pay
.
Constant
.*;
import
static
cn
.
quant
.
baa
.
pay
.
acquirer
.
AcquirerConstant
.*;
/**
...
...
@@ -102,12 +104,18 @@ public class WeiXinMerchantAcquirer extends MerchantAcquirer {
public
ChannelResponse
pay
(
PayRequestData
request
,
TransactionSummaryEntity
history
)
throws
Exception
{
ObjectNode
bodyNode
=
objectMapper
.
createObjectNode
();
// 转换金额为分
DictionaryItemDTO
callback
=
DictionaryViewer
.
get
(
DICT_TYPE_APP_CONFIG
,
DICT_CODE_CALLBACK_URL
);
if
(
callback
==
null
)
{
throw
new
ProfileException
(
"Configuration not found in dictionary : {}; {}; {};"
,
DICT_TYPE_APP_CONFIG
,
DICT_CODE_CALLBACK_URL
,
request
);
}
BigInteger
amount
=
new
BigDecimal
(
request
.
getAmount
()).
multiply
(
new
BigDecimal
(
100
)).
toBigInteger
();
bodyNode
.
put
(
"mchid"
,
properties
.
getPayAcctId
())
.
put
(
"appid"
,
properties
.
getPayAppId
())
.
put
(
"attach"
,
request
.
getAttach
())
.
put
(
"description"
,
request
.
getSubject
())
.
put
(
"notify_url"
,
request
.
getNotifyUrl
())
.
put
(
"notify_url"
,
callback
.
getValue
()
+
request
.
getChanId
())
.
put
(
"out_trade_no"
,
history
.
getTransactionId
().
toString
());
bodyNode
.
putObject
(
"amount"
)
.
put
(
"total"
,
amount
);
...
...
@@ -276,7 +284,7 @@ public class WeiXinMerchantAcquirer extends MerchantAcquirer {
private
ChannelResponse
response
(
String
execute
,
String
access
,
Object
request
,
ClientResponse
response
)
{
if
(
response
==
null
)
{
throw
new
NullException
(
StringUtils
.
format
(
"Client response is null : {}; {}; {};"
,
execute
,
access
,
request
)
);
throw
new
NullException
(
"Client response is null : {}; {}; {};"
,
execute
,
access
,
request
);
}
ChannelResponse
responseData
=
new
ChannelResponse
();
...
...
baa-pay-core/src/main/java/cn/quant/baa/pay/aspect/BusinessMappingAspect.java
View file @
2265a9ed
...
...
@@ -27,11 +27,9 @@ import java.lang.reflect.Method;
@Component
public
class
BusinessMappingAspect
{
@Autowired
private
Sequencer
sequencer
;
@Autowired
private
ServerApplicationContext
serverApplicationContext
;
...
...
baa-pay-core/src/main/java/cn/quant/baa/pay/component/ModelBuilder.java
View file @
2265a9ed
...
...
@@ -2,7 +2,6 @@ package cn.quant.baa.pay.component;
import
cn.quant.baa.pay.acquirer.AcquirerProperties
;
import
cn.quant.baa.pay.config.DictionaryViewer
;
import
cn.quant.baa.pay.dict.DictType
;
import
cn.quant.baa.pay.model.dto.DictionaryItemDTO
;
import
cn.quant.baa.pay.model.web.MerchantAcquirerProperties
;
import
cn.quant.baa.pay.model.web.MerchantChannelResponseData
;
...
...
@@ -16,6 +15,8 @@ import java.util.HashMap;
import
java.util.LinkedList
;
import
java.util.Map
;
import
static
cn
.
quant
.
baa
.
pay
.
Constant
.
DICT_TYPE_PAY
;
/**
* Created by Administrator on 2021/8/23 0023.
*/
...
...
@@ -49,9 +50,9 @@ public class ModelBuilder {
public
Map
<
String
,
MerchantChannelResponseData
>
toModel
(
Map
<
String
,
Collection
<
AcquirerProperties
>>
profiles
,
String
access
)
{
Map
<
String
,
MerchantChannelResponseData
>
models
=
new
HashMap
<>();
for
(
String
code
:
profiles
.
keySet
())
{
DictionaryItemDTO
item
=
dictionaryViewer
.
get
(
D
ictType
.
PAY
,
code
);
DictionaryItemDTO
item
=
dictionaryViewer
.
get
(
D
ICT_TYPE_
PAY
,
code
);
if
(
item
==
null
)
{
throw
new
NotSupportedException
(
StringUtils
.
format
(
"Dictionary item is null({}, {})."
,
D
ictType
.
PAY
,
code
));
throw
new
NotSupportedException
(
StringUtils
.
format
(
"Dictionary item is null({}, {})."
,
D
ICT_TYPE_
PAY
,
code
));
}
Collection
<
AcquirerProperties
>
collection
=
profiles
.
get
(
code
);
MerchantChannelResponseData
book
=
new
MerchantChannelResponseData
();
...
...
baa-pay-core/src/main/java/cn/quant/baa/pay/config/DictionaryViewer.java
View file @
2265a9ed
...
...
@@ -36,5 +36,4 @@ public class DictionaryViewer {
return
viewer
.
bigTable
.
get
(
type
,
code
);
}
}
baa-pay-core/src/main/java/cn/quant/baa/pay/dict/DictType.java
deleted
100644 → 0
View file @
db9a6484
package
cn
.
quant
.
baa
.
pay
.
dict
;
/**
* Created by Administrator on 2021/8/23 0023.
*/
public
class
DictType
{
public
final
static
String
PAY
=
"PAY"
;
}
baa-pay-core/src/main/java/cn/quant/baa/pay/model/web/CallbackRequestData.java
0 → 100644
View file @
2265a9ed
package
cn
.
quant
.
baa
.
pay
.
model
.
web
;
/**
* Created by Administrator on 2021/9/27 0027.
*/
public
class
CallbackRequestData
{
private
String
chanId
;
public
String
getChanId
()
{
return
chanId
;
}
public
void
setChanId
(
String
chanId
)
{
this
.
chanId
=
chanId
;
}
}
baa-pay-
server
/src/main/java/cn/quant/baa/pay/rest/BusinessController.java
→
baa-pay-
core
/src/main/java/cn/quant/baa/pay/rest/BusinessController.java
View file @
2265a9ed
...
...
@@ -50,7 +50,7 @@ public abstract class BusinessController extends AbstractController {
return
objectMapper
.
readValue
(
value
.
getBytes
(),
Map
.
class
);
}
public
String
serialize
(
HttpResponseData
value
)
throws
JsonProcessingException
{
public
String
serialize
(
Object
value
)
throws
JsonProcessingException
{
return
objectMapper
.
writeValueAsString
(
value
);
}
...
...
baa-pay-notice/src/main/java/cn/quant/baa/pay/config/WebMvcConfiguration.java
View file @
2265a9ed
...
...
@@ -16,7 +16,6 @@ public class WebMvcConfiguration extends WebMessageConfigurer {
@Bean
public
MappingJackson2HttpMessageConverter
httpMessageConverter
()
{
MappingJackson2HttpMessageConverter
converter
=
super
.
httpMessageConverter
();
ObjectMapper
objectMapper
=
converter
.
getObjectMapper
();
objectMapper
.
setPropertyNamingStrategy
(
PropertyNamingStrategy
.
SNAKE_CASE
);
...
...
baa-pay-notice/src/main/java/cn/quant/baa/pay/http/package-info.java
deleted
100644 → 0
View file @
db9a6484
/**
* application controller dto
*/
package
cn
.
quant
.
baa
.
pay
.
http
;
baa-pay-notice/src/main/java/cn/quant/baa/pay/jpa/entity/package-info.java
deleted
100644 → 0
View file @
db9a6484
/**
* jpa entity
*/
package
cn
.
quant
.
baa
.
pay
.
jpa
.
entity
;
baa-pay-notice/src/main/java/cn/quant/baa/pay/jpa/repository/package-info.java
deleted
100644 → 0
View file @
db9a6484
/**
* jpa repository
*/
package
cn
.
quant
.
baa
.
pay
.
jpa
.
repository
;
baa-pay-notice/src/main/java/cn/quant/baa/pay/model/web/WeiXinCallbackRequestData.java
0 → 100644
View file @
2265a9ed
package
cn
.
quant
.
baa
.
pay
.
model
.
web
;
import
java.io.Serializable
;
import
java.time.LocalDate
;
/**
* Created by Administrator on 2021/9/27 0027.
*/
public
class
WeiXinCallbackRequestData
implements
Serializable
{
private
static
final
long
serialVersionUID
=
8252843404761981034L
;
private
String
id
;
private
LocalDate
createTime
;
private
String
eventType
;
private
String
resourceType
;
private
WeiXinCallbackResource
resource
;
private
String
summary
;
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
LocalDate
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
LocalDate
createTime
)
{
this
.
createTime
=
createTime
;
}
public
String
getEventType
()
{
return
eventType
;
}
public
void
setEventType
(
String
eventType
)
{
this
.
eventType
=
eventType
;
}
public
String
getResourceType
()
{
return
resourceType
;
}
public
void
setResourceType
(
String
resourceType
)
{
this
.
resourceType
=
resourceType
;
}
public
WeiXinCallbackResource
getResource
()
{
return
resource
;
}
public
void
setResource
(
WeiXinCallbackResource
resource
)
{
this
.
resource
=
resource
;
}
public
String
getSummary
()
{
return
summary
;
}
public
void
setSummary
(
String
summary
)
{
this
.
summary
=
summary
;
}
@Override
public
String
toString
()
{
final
StringBuilder
sb
=
new
StringBuilder
(
"WeiXinCallbackRequestData{"
);
sb
.
append
(
"id='"
).
append
(
id
).
append
(
'\''
);
sb
.
append
(
", createTime="
).
append
(
createTime
);
sb
.
append
(
", eventType='"
).
append
(
eventType
).
append
(
'\''
);
sb
.
append
(
", resourceType='"
).
append
(
resourceType
).
append
(
'\''
);
sb
.
append
(
", resource='"
).
append
(
resource
).
append
(
'\''
);
sb
.
append
(
", summary='"
).
append
(
summary
).
append
(
'\''
);
sb
.
append
(
'}'
);
return
sb
.
toString
();
}
}
baa-pay-notice/src/main/java/cn/quant/baa/pay/model/web/WeiXinCallbackResource.java
0 → 100644
View file @
2265a9ed
package
cn
.
quant
.
baa
.
pay
.
model
.
web
;
import
java.io.Serializable
;
/**
* Created by Administrator on 2021/9/27 0027.
*/
public
class
WeiXinCallbackResource
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8312044396842852528L
;
private
String
algorithm
;
private
String
ciphertext
;
private
String
associatedData
;
private
String
originalType
;
private
String
nonce
;
public
String
getAlgorithm
()
{
return
algorithm
;
}
public
void
setAlgorithm
(
String
algorithm
)
{
this
.
algorithm
=
algorithm
;
}
public
String
getCiphertext
()
{
return
ciphertext
;
}
public
void
setCiphertext
(
String
ciphertext
)
{
this
.
ciphertext
=
ciphertext
;
}
public
String
getAssociatedData
()
{
return
associatedData
;
}
public
void
setAssociatedData
(
String
associatedData
)
{
this
.
associatedData
=
associatedData
;
}
public
String
getOriginalType
()
{
return
originalType
;
}
public
void
setOriginalType
(
String
originalType
)
{
this
.
originalType
=
originalType
;
}
public
String
getNonce
()
{
return
nonce
;
}
public
void
setNonce
(
String
nonce
)
{
this
.
nonce
=
nonce
;
}
@Override
public
String
toString
()
{
final
StringBuilder
sb
=
new
StringBuilder
(
"WeiXinCallbackResource{"
);
sb
.
append
(
"algorithm='"
).
append
(
algorithm
).
append
(
'\''
);
sb
.
append
(
", ciphertext='"
).
append
(
ciphertext
).
append
(
'\''
);
sb
.
append
(
", associatedData='"
).
append
(
associatedData
).
append
(
'\''
);
sb
.
append
(
", originalType='"
).
append
(
originalType
).
append
(
'\''
);
sb
.
append
(
", nonce='"
).
append
(
nonce
).
append
(
'\''
);
sb
.
append
(
'}'
);
return
sb
.
toString
();
}
}
baa-pay-notice/src/main/java/cn/quant/baa/pay/mybatis/package-info.java
deleted
100644 → 0
View file @
db9a6484
/**
* mybatis mapper, entity
*/
package
cn
.
quant
.
baa
.
pay
.
mybatis
;
baa-pay-notice/src/main/java/cn/quant/baa/pay/rest/TransactionController.java
View file @
2265a9ed
package
cn
.
quant
.
baa
.
pay
.
rest
;
import
cn.quant.baa.pay.acquirer.AcquirerProperties
;
import
cn.quant.baa.pay.acquirer.AcquirerPropertiesSource
;
import
cn.quant.baa.pay.annotation.BusinessMapping
;
import
cn.quant.baa.pay.config.DictionaryViewer
;
import
cn.quant.baa.pay.model.dto.DictionaryItemDTO
;
import
cn.quant.baa.pay.service.TransactionService
;
import
cn.quant.spring.ProfileException
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
reactor.netty.http.server.HttpServerRequest
;
import
java.util.Map
;
import
static
cn
.
quant
.
baa
.
pay
.
Constant
.
DICT_CODE_WXP
;
import
static
cn
.
quant
.
baa
.
pay
.
Constant
.
DICT_TYPE_PAY
;
/**
* Created by Administrator on 2021/9/26 0026.
*/
public
class
TransactionController
extends
BusinessController
{
@RestController
@RequestMapping
(
"/transaction"
)
public
class
TransactionController
extends
BusinessController
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
TransactionController
.
class
);
@Autowired
private
TransactionService
transactionService
;
@Autowired
private
AcquirerPropertiesSource
acquirerPropertiesSource
;
@ResponseBody
@BusinessMapping
@PostMapping
(
"/pay/callback/wx/{chanId}"
)
public
ResponseEntity
pay
(
@PathVariable
(
"chanId"
)
String
chanId
,
@RequestBody
Map
request
)
throws
Exception
{
DictionaryItemDTO
dict
=
DictionaryViewer
.
get
(
DICT_TYPE_PAY
,
DICT_CODE_WXP
);
if
(
dict
==
null
)
{
throw
new
ProfileException
(
"Configuration not found in dictionary : {}; {}; {}; {};"
,
DICT_TYPE_PAY
,
DICT_CODE_WXP
,
chanId
,
request
);
}
AcquirerProperties
properties
=
acquirerPropertiesSource
.
get
(
Long
.
valueOf
(
chanId
));
if
(
properties
==
null
||
!
dict
.
getCode
().
equals
(
properties
.
getPayChanCode
()))
{
throw
new
ProfileException
(
"Acquirer not found : {}; {}; {}; {};"
,
DICT_TYPE_PAY
,
DICT_CODE_WXP
,
chanId
,
request
);
}
// CallbackRequestData requestData = new CallbackRequestData();
// requestData.setChanId(chanId);
// transactionService.callback(requestData);
return
null
;
}
}
baa-pay-notice/src/main/resources/config/application-dev.properties
View file @
2265a9ed
...
...
@@ -7,7 +7,7 @@ spring.devtools.restart.enabled=true
spring.devtools.livereload.enabled
=
true
#Server
server.port
=
80
8
0
server.port
=
80
9
0
server.servlet.context-path
=
/
#quant
quant.server.number
=
1
...
...
baa-pay-server/src/main/java/cn/quant/baa/pay/service/TransactionService.java
View file @
2265a9ed
...
...
@@ -35,7 +35,6 @@ public class TransactionService extends BusinessService {
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
TransactionService
.
class
);
@Autowired
private
MerchantAcquirer
acquirer
;
...
...
@@ -49,7 +48,7 @@ public class TransactionService extends BusinessService {
return
md5
;
}
@Transactional
(
propagation
=
Propagation
.
REQUIRE
S_NEW
)
@Transactional
(
propagation
=
Propagation
.
REQUIRE
D
)
public
ChannelResponse
pay
(
AcquirerProperties
properties
,
PayRequestData
data
)
throws
Exception
{
validate
(
data
);
...
...
@@ -121,24 +120,29 @@ public class TransactionService extends BusinessService {
// return acquirer.pay(data, payHistoryEntity);
// }
@Transactional
(
propagation
=
Propagation
.
NOT_SUPPORT
ED
)
@Transactional
(
propagation
=
Propagation
.
REQUIR
ED
)
public
ChannelResponse
checkPay
(
CheckPayRequestData
data
)
throws
Exception
{
return
acquirer
.
checkPay
(
data
);
}
@Transactional
(
propagation
=
Propagation
.
NOT_SUPPORT
ED
)
@Transactional
(
propagation
=
Propagation
.
REQUIR
ED
)
public
ChannelResponse
checkRefund
(
CheckRefundRequestData
data
)
throws
Exception
{
return
acquirer
.
checkRefund
(
data
);
}
@Transactional
(
propagation
=
Propagation
.
NOT_SUPPORT
ED
)
@Transactional
(
propagation
=
Propagation
.
REQUIR
ED
)
public
ChannelResponse
close
(
CloseRequestData
data
)
throws
Exception
{
return
acquirer
.
close
(
data
);
}
@Transactional
(
propagation
=
Propagation
.
NOT_SUPPORT
ED
)
@Transactional
(
propagation
=
Propagation
.
REQUIR
ED
)
public
ChannelResponse
refund
(
RefundRequestData
data
)
throws
Exception
{
return
acquirer
.
refund
(
data
);
}
@Transactional
(
propagation
=
Propagation
.
REQUIRED
)
public
void
callback
(
CallbackRequestData
data
)
throws
Exception
{
acquirer
.
callback
(
data
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment