Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
3ae43528
提交
3ae43528
authored
1月 23, 2024
作者:
aiqingguo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
承运借款流程-宁波银行
上级
9808f5bb
显示空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
177 行增加
和
126 行删除
+177
-126
NbBankOrderPayResultVO.java
.../clx/performance/vo/pc/nbbank/NbBankOrderPayResultVO.java
+6
-3
NbBankOrderResultVO.java
...com/clx/performance/vo/pc/nbbank/NbBankOrderResultVO.java
+5
-3
NbBankConfig.java
.../java/com/clx/performance/config/nbbank/NbBankConfig.java
+1
-0
TempBankController.java
...m/clx/performance/controller/temp/TempBankController.java
+16
-16
NbBankNotifyServiceImpl.java
...rvice/impl/thirdparty/nbbank/NbBankNotifyServiceImpl.java
+2
-2
NbBankServiceImpl.java
...nce/service/impl/thirdparty/nbbank/NbBankServiceImpl.java
+111
-69
NbBankThirdpartyServiceImpl.java
...e/impl/thirdparty/nbbank/NbBankThirdpartyServiceImpl.java
+20
-17
NbBankService.java
.../performance/service/thirdparty/nbbank/NbBankService.java
+11
-10
NbBankThirdpartyService.java
...ce/service/thirdparty/nbbank/NbBankThirdpartyService.java
+5
-6
没有找到文件。
performance-api/src/main/java/com/clx/performance/vo/pc/nbbank/NbBankOrderPayResultVO.java
浏览文件 @
3ae43528
...
...
@@ -19,14 +19,16 @@ import lombok.ToString;
@NoArgsConstructor
public
class
NbBankOrderPayResultVO
{
@ApiModelProperty
(
value
=
"金额(分)"
,
example
=
""
)
@ApiModelProperty
(
value
=
"金额(分)"
,
example
=
"
1
"
)
private
Integer
amount
;
@ApiModelProperty
(
value
=
"流水号"
,
example
=
"20231129145541"
)
@ApiModelProperty
(
value
=
"商户时间"
,
example
=
""
)
private
String
merDtTm
;
@ApiModelProperty
(
value
=
"商户流水号"
,
example
=
"20231129145541"
)
private
String
merSeqNo
;
@ApiModelProperty
(
value
=
"第三方流水号"
,
example
=
"20231129145541065503563czKTBzy"
)
private
String
transSeqNo
;
@ApiModelProperty
(
value
=
"转账编号
"
,
example
=
"
"
)
@ApiModelProperty
(
value
=
"转账编号
(转账专用)"
,
example
=
"123456
"
)
private
String
signNo
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/nbbank/NbBankOrder
PayStatus
ResultVO.java
→
performance-api/src/main/java/com/clx/performance/vo/pc/nbbank/NbBankOrderResultVO.java
浏览文件 @
3ae43528
...
...
@@ -17,18 +17,20 @@ import lombok.ToString;
@Setter
@ToString
@NoArgsConstructor
public
class
NbBankOrder
PayStatus
ResultVO
{
public
class
NbBankOrderResultVO
{
@ApiModelProperty
(
value
=
"金额(分)"
,
example
=
""
)
private
Integer
amount
;
@ApiModelProperty
(
value
=
"实收金额(分)"
,
example
=
""
)
private
Integer
realAmount
;
@ApiModelProperty
(
value
=
"流水号"
,
example
=
"20231129145541"
)
@ApiModelProperty
(
value
=
"商户时间"
)
private
String
merDtTm
;
@ApiModelProperty
(
value
=
"商户流水号"
,
example
=
"20231129145541"
)
private
String
merSeqNo
;
@ApiModelProperty
(
value
=
"第三方流水号"
,
example
=
"20231129145541065503563czKTBzy"
)
private
String
transSeqNo
;
@ApiModelProperty
(
value
=
"转账编号
"
,
example
=
"
"
)
@ApiModelProperty
(
value
=
"转账编号
(转账专用)"
,
example
=
"1234567
"
)
private
String
signNo
;
@ApiModelProperty
(
value
=
"交易状态"
,
example
=
""
)
...
...
performance-web/src/main/java/com/clx/performance/config/nbbank/NbBankConfig.java
浏览文件 @
3ae43528
...
...
@@ -12,5 +12,6 @@ import org.springframework.context.annotation.Configuration;
public
class
NbBankConfig
{
private
String
appKey
=
"77667c76_3503_4c04_95f7_fc10938c7942"
;
private
String
merId
=
"EFT33021200556315"
;
}
performance-web/src/main/java/com/clx/performance/controller/temp/TempBankController.java
浏览文件 @
3ae43528
...
...
@@ -2,7 +2,7 @@ package com.clx.performance.controller.temp;
import
com.clx.performance.service.thirdparty.nbbank.NbBankService
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrder
PayStatus
ResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderResultVO
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -26,39 +26,39 @@ public class TempBankController {
@Autowired
private
NbBankService
bankService
;
@ApiOperation
(
value
=
"转账"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/
directBankTransferOrder
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrderPayResultVO
>
directBankTransferOrder
()
throws
Exception
{
@ApiOperation
(
value
=
"转账
支付
"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/
orderTransferPay
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrderPayResultVO
>
directBankTransferOrder
()
{
return
Result
.
ok
(
bankService
.
orderPay
(
1
));
return
Result
.
ok
(
bankService
.
order
Transfer
Pay
(
1
));
}
@ApiOperation
(
value
=
"订单支付"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/
unionPayDirectOrder
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrderPayResultVO
>
unionPayDirectOrder
()
throws
Exception
{
@RequestMapping
(
value
=
"/
orderDirectPay
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrderPayResultVO
>
orderDirectPay
()
{
return
Result
.
ok
(
bankService
.
order
Pay
(
2
));
return
Result
.
ok
(
bankService
.
order
DirectPay
(
2
,
"313332082914"
,
"86041110000076809"
,
"黑玫瑰"
));
}
@ApiOperation
(
value
=
"查询"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/
queryOrder
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrder
PayStatusResultVO
>
queryOrder
(
String
merSeqNo
)
throws
Exception
{
@RequestMapping
(
value
=
"/
getResult
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrder
ResultVO
>
getResult
(
String
merSeqNo
)
{
return
Result
.
ok
(
bankService
.
get
OrderStatus
(
merSeqNo
));
return
Result
.
ok
(
bankService
.
get
Result
(
merSeqNo
));
}
@ApiOperation
(
value
=
"调账"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/
transferOrder
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrder
PayStatusResultVO
>
transferOrder
(
String
merSeqNo
)
throws
Exception
{
@RequestMapping
(
value
=
"/
adjust
"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrder
ResultVO
>
adjust
(
String
merSeqNo
,
Integer
amount
)
{
return
Result
.
ok
(
bankService
.
transferOrder
(
merSeqNo
));
return
Result
.
ok
(
bankService
.
adjust
(
merSeqNo
,
amount
));
}
@ApiOperation
(
value
=
"退款"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/refund"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrder
PayStatusResultVO
>
refund
(
String
merSeqNo
)
throws
Exception
{
public
Result
<
NbBankOrder
ResultVO
>
refund
(
String
orgMerSeqNo
,
Integer
amount
,
String
orgTransSeqNo
)
{
return
Result
.
ok
(
bankService
.
refund
(
mer
SeqNo
));
return
Result
.
ok
(
bankService
.
refund
(
orgMerSeqNo
,
amount
,
orgTrans
SeqNo
));
}
}
performance-web/src/main/java/com/clx/performance/service/impl/thirdparty/nbbank/NbBankNotifyServiceImpl.java
浏览文件 @
3ae43528
...
...
@@ -96,8 +96,8 @@ public class NbBankNotifyServiceImpl implements NbBankNotifyService {
String
merSeqNo
=
data
.
getString
(
"merSeqNo"
);
String
transSeqNo
=
data
.
getString
(
"transSeqNo"
);
BigDecimal
trxAmt
=
data
.
getBigDecimal
(
"trxAmt"
);
BigDecimal
realTrxAmt
=
data
.
getBigDecimal
(
"realTrxAmt"
);
Integer
trxAmt
=
data
.
getBigDecimal
(
"trxAmt"
).
movePointRight
(
2
).
intValue
(
);
Integer
realTrxAmt
=
data
.
getBigDecimal
(
"realTrxAmt"
).
movePointRight
(
2
).
intValue
(
);
String
transStatus
=
data
.
getString
(
"transStatus"
);
String
signNo
=
data
.
getString
(
"signNo"
);
...
...
performance-web/src/main/java/com/clx/performance/service/impl/thirdparty/nbbank/NbBankServiceImpl.java
浏览文件 @
3ae43528
package
com
.
clx
.
performance
.
service
.
impl
.
thirdparty
.
nbbank
;
import
com.alibaba.fastjson.JSONObject
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankService
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankThirdpartyService
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayStatusResultVO
;
import
com.msl.common.exception.ServiceSystemException
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderResultVO
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -26,54 +25,66 @@ public class NbBankServiceImpl implements NbBankService {
@Autowired
private
NbBankThirdpartyService
bankThirdpartyService
;
/**
* 订单支付
* @Param
* payType: 1转账直连下单 2银联订单支付收款模式
* 转账支付
* @param amount 金额分
*/
@Override
public
NbBankOrderPayResultVO
orderPay
(
Integer
payType
)
{
if
(
payType
==
1
){
//转账直连下单
String
merSeqNo
=
LocalDateTime
.
now
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyyMMddHHmmss"
));
JSONObject
data
=
bankThirdpartyService
.
directBankTransferOrder
(
merSeqNo
,
"EFT33021200556315"
,
1
);
public
NbBankOrderPayResultVO
orderTransferPay
(
Integer
amount
)
{
String
merSeqNo
=
merSeqNoGenerate
();
String
merDtTm
=
LocalDateTimeUtils
.
formatTime
();
JSONObject
data
=
bankThirdpartyService
.
directBankTransferOrder
(
merSeqNo
,
merDtTm
,
amount
);
String
transSeqNo
=
data
.
getString
(
"transSeqNo"
);
String
signNo
=
data
.
getString
(
"signNo"
);
NbBankOrderPayResultVO
result
=
new
NbBankOrderPayResultVO
();
result
.
setAmount
(
1
);
result
.
setAmount
(
amount
);
result
.
setMerDtTm
(
merDtTm
);
result
.
setMerSeqNo
(
merSeqNo
);
result
.
setTransSeqNo
(
transSeqNo
);
result
.
setSignNo
(
signNo
);
return
result
;
}
else
if
(
payType
==
2
){
//银联订单支付收款模式
String
merSeqNo
=
LocalDateTime
.
now
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyyMMddHHmmss"
));
JSONObject
data
=
bankThirdpartyService
.
unionPayDirectOrder
(
merSeqNo
,
"EFT33021200556315"
,
1
,
"313332082914"
,
"86041110000076809"
,
"黑玫瑰"
);
/**
* 订单支付
* @param amount 金额分
* @param payAcctOpenBankId 开户行号
* @param payAcctNo 付款账号
* @param payAcctNm 付款户名
*/
@Override
public
NbBankOrderPayResultVO
orderDirectPay
(
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
)
{
String
merSeqNo
=
merSeqNoGenerate
();
String
merDtTm
=
LocalDateTimeUtils
.
formatTime
();
JSONObject
data
=
bankThirdpartyService
.
unionPayDirectOrder
(
merSeqNo
,
merDtTm
,
amount
,
payAcctOpenBankId
,
payAcctNo
,
payAcctNm
);
String
transSeqNo
=
data
.
getString
(
"transSeqNo"
);
NbBankOrderPayResultVO
result
=
new
NbBankOrderPayResultVO
();
result
.
setAmount
(
1
);
result
.
setAmount
(
amount
);
result
.
setMerDtTm
(
merDtTm
);
result
.
setMerSeqNo
(
merSeqNo
);
result
.
setTransSeqNo
(
transSeqNo
);
return
result
;
}
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
NB_BANK_PAY_TYPE_ERROR
);
}
/**
* 获取交易
状态
* @
return
* 获取交易
结果
* @
param orgMerSeqNo 商户流水号 (原)
*/
@Override
public
NbBankOrder
PayStatusResultVO
getOrderStatus
(
String
m
erSeqNo
)
{
JSONObject
data
=
bankThirdpartyService
.
queryOrder
(
merSeqNo
,
"EFT33021200556315"
);
public
NbBankOrder
ResultVO
getResult
(
String
orgM
erSeqNo
)
{
JSONObject
data
=
bankThirdpartyService
.
queryOrder
(
orgMerSeqNo
);
NbBankOrder
PayStatusResultVO
result
=
new
NbBankOrderPayStatus
ResultVO
();
NbBankOrder
ResultVO
result
=
new
NbBankOrder
ResultVO
();
String
transStatus
=
data
.
getString
(
"transStatus"
);
if
(
StringUtils
.
equals
(
transStatus
,
"00"
)){
result
.
setTransStatus
(
1
);}
//交易成功
...
...
@@ -90,49 +101,25 @@ public class NbBankServiceImpl implements NbBankService {
result
.
setAmount
(
trxAmt
==
null
?
null
:
trxAmt
.
movePointLeft
(
2
).
intValue
());
result
.
setRealAmount
(
trxAmt
==
null
?
null
:
realTrxAmt
.
movePointLeft
(
2
).
intValue
());
result
.
setMerSeqNo
(
m
erSeqNo
);
result
.
setMerSeqNo
(
orgM
erSeqNo
);
result
.
setTransSeqNo
(
transSeqNo
);
result
.
setSignNo
(
signNo
);
return
result
;
}
/**
* 调账
* @param orgMerSeqNo 商户流水号 (原)
* @param amount 金额分
*/
@Override
public
void
orderPayCallback
(
String
merSeqNo
,
String
transSeqNo
,
BigDecimal
trxAmt
,
BigDecimal
realTrxAmt
,
String
transStatus
,
String
signNo
)
{
log
.
info
(
"宁波银行支付回调, merSeqNo:{}, transSeqNo:{}, trxAmt:{}, realTrxAmt:{}, transSeqNo:{}, signNo:{}"
,
merSeqNo
,
transSeqNo
,
trxAmt
,
realTrxAmt
,
transStatus
,
signNo
);
if
(
StringUtils
.
equals
(
transStatus
,
"00"
)){
//交易成功
}
if
(
StringUtils
.
equals
(
transStatus
,
"01"
)){
//交易失败
}
if
(
StringUtils
.
equals
(
transStatus
,
"02"
)){
//交易已受理
}
if
(
StringUtils
.
equals
(
transStatus
,
"80"
)){
//订单初始状态
}
if
(
StringUtils
.
equals
(
transStatus
,
"90"
)){
//交易不存在
}
if
(
StringUtils
.
equals
(
transStatus
,
"99"
)){
//交易超时,须发起交易结果查询
}
}
@Override
public
NbBankOrderPayStatusResultVO
transferOrder
(
String
merSeqNo
)
{
JSONObject
data
=
bankThirdpartyService
.
fundTransferOrder
(
merSeqNo
,
"EFT33021200556315"
,
""
,
1
,
"1"
,
"2"
);
public
NbBankOrderResultVO
adjust
(
String
orgMerSeqNo
,
Integer
amount
)
{
String
merDtTm
=
LocalDateTimeUtils
.
formatTime
();
JSONObject
data
=
bankThirdpartyService
.
fundTransferOrder
(
orgMerSeqNo
,
merDtTm
,
amount
,
null
,
null
);
NbBankOrder
PayStatusResultVO
result
=
new
NbBankOrderPayStatus
ResultVO
();
NbBankOrder
ResultVO
result
=
new
NbBankOrder
ResultVO
();
String
transStatus
=
data
.
getString
(
"transStatus"
);
if
(
StringUtils
.
equals
(
transStatus
,
"00"
)){
result
.
setTransStatus
(
1
);}
//交易成功
...
...
@@ -144,21 +131,30 @@ public class NbBankServiceImpl implements NbBankService {
String
transSeqNo
=
data
.
getString
(
"transSeqNo"
);
result
.
setAmount
(
1
);
result
.
setRealAmount
(
1
);
result
.
setMerSeqNo
(
merSeqNo
);
result
.
setAmount
(
amount
);
result
.
setRealAmount
(
amount
);
result
.
setMerDtTm
(
merDtTm
);
result
.
setMerSeqNo
(
orgMerSeqNo
);
result
.
setTransSeqNo
(
transSeqNo
);
return
result
;
}
/**
* 退款
* @param orgMerSeqNo 商户流水号(原)
* @param amount 金额分
* @param orgTransSeqNo 第三方流水号 (原)
*/
@Override
public
NbBankOrderPayStatusResultVO
refund
(
String
merSeqNo
)
{
JSONObject
data
=
bankThirdpartyService
.
refund
(
merSeqNo
,
"EFT33021200556315"
,
""
,
1
,
"1"
,
"2"
);
public
NbBankOrderResultVO
refund
(
String
orgMerSeqNo
,
Integer
amount
,
String
orgTransSeqNo
)
{
String
merSeqNo
=
merSeqNoGenerate
();
NbBankOrderPayStatusResultVO
result
=
new
NbBankOrderPayStatusResultVO
();
String
merDtTm
=
LocalDateTimeUtils
.
formatTime
();
JSONObject
data
=
bankThirdpartyService
.
refund
(
merSeqNo
,
merDtTm
,
amount
,
orgMerSeqNo
,
orgTransSeqNo
);
NbBankOrderResultVO
result
=
new
NbBankOrderResultVO
();
String
transStatus
=
data
.
getString
(
"transStatus"
);
if
(
StringUtils
.
equals
(
transStatus
,
"00"
)){
result
.
setTransStatus
(
1
);}
//交易成功
...
...
@@ -170,12 +166,58 @@ public class NbBankServiceImpl implements NbBankService {
String
transSeqNo
=
data
.
getString
(
"transSeqNo"
);
result
.
setAmount
(
1
);
result
.
setRealAmount
(
1
);
result
.
setAmount
(
amount
);
result
.
setRealAmount
(
amount
);
result
.
setMerDtTm
(
merDtTm
);
result
.
setMerSeqNo
(
merSeqNo
);
result
.
setTransSeqNo
(
transSeqNo
);
return
result
;
}
/**
* 银行回调
* @param merSeqNo 商户流水号
* @param transSeqNo 第三方流水号
* @param trxAmt 订单金额分
* @param realTrxAmt 实收金额分
* @param transStatus 交易状态
* @param signNo 转账编码
*/
@Override
public
void
orderPayCallback
(
String
merSeqNo
,
String
transSeqNo
,
Integer
trxAmt
,
Integer
realTrxAmt
,
String
transStatus
,
String
signNo
)
{
log
.
info
(
"宁波银行支付回调, merSeqNo:{}, transSeqNo:{}, trxAmt:{}, realTrxAmt:{}, transSeqNo:{}, signNo:{}"
,
merSeqNo
,
transSeqNo
,
trxAmt
,
realTrxAmt
,
transStatus
,
signNo
);
if
(
StringUtils
.
equals
(
transStatus
,
"00"
)){
//交易成功
}
if
(
StringUtils
.
equals
(
transStatus
,
"01"
)){
//交易失败
}
if
(
StringUtils
.
equals
(
transStatus
,
"02"
)){
//交易已受理
}
if
(
StringUtils
.
equals
(
transStatus
,
"80"
)){
//订单初始状态
}
if
(
StringUtils
.
equals
(
transStatus
,
"90"
)){
//交易不存在
}
if
(
StringUtils
.
equals
(
transStatus
,
"99"
)){
//交易超时,须发起交易结果查询
}
}
/**
* 创建流水号
*/
private
String
merSeqNoGenerate
(){
return
LocalDateTime
.
now
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyyMMddHHmmss"
));
}
}
performance-web/src/main/java/com/clx/performance/service/impl/thirdparty/nbbank/NbBankThirdpartyServiceImpl.java
浏览文件 @
3ae43528
...
...
@@ -88,14 +88,14 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
* amount: 订单金额(分)
*/
@Override
public
JSONObject
directBankTransferOrder
(
String
merSeqNo
,
String
mer
Id
,
Integer
amount
)
{
public
JSONObject
directBankTransferOrder
(
String
merSeqNo
,
String
mer
DtTm
,
Integer
amount
)
{
try
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"transId"
,
"IP01"
);
//交易识别码 必填
jsonObject
.
put
(
"merId"
,
merId
);
//商户号 必填
jsonObject
.
put
(
"merId"
,
nbBankConfig
.
getMerId
()
);
//商户号 必填
jsonObject
.
put
(
"merSeqNo"
,
merSeqNo
);
//商户流水 必填
jsonObject
.
put
(
"merDtTm"
,
LocalDateTimeUtils
.
formatTime
());
//商户时间 必填
jsonObject
.
put
(
"merDtTm"
,
merDtTm
);
//商户时间 必填
jsonObject
.
put
(
"trxAmt"
,
new
BigDecimal
(
amount
).
movePointLeft
(
2
));
//订单金额 必填
jsonObject
.
put
(
"orderDesc"
,
"散煤运输"
);
//订单详情 必填
...
...
@@ -183,15 +183,15 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
* payAcctNm: 付款户名
*/
@Override
public
JSONObject
unionPayDirectOrder
(
String
merSeqNo
,
String
mer
Id
,
Integer
amount
,
public
JSONObject
unionPayDirectOrder
(
String
merSeqNo
,
String
mer
DtTm
,
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
)
{
try
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"transId"
,
"IP01"
);
//交易识别码 必填
jsonObject
.
put
(
"merId"
,
merId
);
//商户号 必填
jsonObject
.
put
(
"merId"
,
nbBankConfig
.
getMerId
()
);
//商户号 必填
jsonObject
.
put
(
"merSeqNo"
,
merSeqNo
);
//商户流水 必填
jsonObject
.
put
(
"merDtTm"
,
LocalDateTimeUtils
.
formatTime
());
//商户时间 必填
jsonObject
.
put
(
"merDtTm"
,
merDtTm
);
//商户时间 必填
jsonObject
.
put
(
"trxAmt"
,
new
BigDecimal
(
amount
).
movePointLeft
(
2
));
//订单金额 必填
jsonObject
.
put
(
"orderDesc"
,
"散煤运输"
);
//订单详情 必填
...
...
@@ -337,13 +337,13 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
* 99:交易超时,须发起交易结果查询
*/
@Override
public
JSONObject
queryOrder
(
String
merSeqNo
,
String
merId
)
{
public
JSONObject
queryOrder
(
String
orgMerSeqNo
)
{
try
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"transId"
,
"IP01"
);
//交易识别码 必填
jsonObject
.
put
(
"merId"
,
merId
);
//商户号 必填
jsonObject
.
put
(
"merId"
,
nbBankConfig
.
getMerId
()
);
//商户号 必填
jsonObject
.
put
(
"merSeqNo"
,
m
erSeqNo
);
//商户流水 必填
jsonObject
.
put
(
"merSeqNo"
,
orgM
erSeqNo
);
//商户流水 必填
HashMap
<
String
,
String
>
httpHeader
=
new
HashMap
<>();
...
...
@@ -386,23 +386,24 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
/**
* 调账
* 5.10云账簿资金划转
* @param merSeqNo
* @return
*/
@Override
public
JSONObject
fundTransferOrder
(
String
merSeqNo
,
String
merId
,
String
merDtTm
,
Integer
trxAmt
,
public
JSONObject
fundTransferOrder
(
String
orgMerSeqNo
,
String
merDtTm
,
Integer
trxAmt
,
String
customerId
,
String
payCustomerId
)
{
try
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"transId"
,
"IP01"
);
//交易识别码 必填
jsonObject
.
put
(
"merId"
,
merId
);
//商户号 必填
jsonObject
.
put
(
"merSeqNo"
,
merSeqNo
);
//商户流水 必填
jsonObject
.
put
(
"merId"
,
nbBankConfig
.
getMerId
());
//商户号 必填
jsonObject
.
put
(
"merSeqNo"
,
orgMerSeqNo
);
//商户流水 必填
jsonObject
.
put
(
"merDtTm"
,
merDtTm
);
//商户交易时间 必填
jsonObject
.
put
(
"trxAmt"
,
new
BigDecimal
(
trxAmt
).
movePointLeft
(
2
));
//交易金额
if
(
StringUtils
.
isNotBlank
(
customerId
))
{
jsonObject
.
put
(
"customerId"
,
customerId
);
//云账簿标识_收款方
}
if
(
StringUtils
.
isNotBlank
(
payCustomerId
))
{
jsonObject
.
put
(
"payCustomerId"
,
payCustomerId
);
//云账簿标识_付款方
}
// jsonObject.put("notifyAction", 0); //是否通知
HashMap
<
String
,
String
>
httpHeader
=
new
HashMap
<>();
...
...
@@ -449,20 +450,22 @@ public class NbBankThirdpartyServiceImpl implements NbBankThirdpartyService {
* @return
*/
@Override
public
JSONObject
refund
(
String
merSeqNo
,
String
mer
Id
,
String
mer
DtTm
,
public
JSONObject
refund
(
String
merSeqNo
,
String
merDtTm
,
Integer
amount
,
String
orgMerSeqNo
,
String
coreSeqNo
)
{
try
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"transId"
,
"IP01"
);
//交易识别码 必填
jsonObject
.
put
(
"merId"
,
merId
);
//商户号 必填
jsonObject
.
put
(
"merId"
,
nbBankConfig
.
getMerId
());
//商户号 必填
jsonObject
.
put
(
"merSeqNo"
,
merSeqNo
);
//商户流水 必填
jsonObject
.
put
(
"merDtTm"
,
LocalDateTimeUtils
.
formatTime
());
//商户时间 必填
jsonObject
.
put
(
"trxAmt"
,
new
BigDecimal
(
amount
).
movePointLeft
(
2
));
//订单金额 必填
jsonObject
.
put
(
"orgMerSeqNo"
,
orgMerSeqNo
);
//原订单流水号 必填
if
(
StringUtils
.
isNotBlank
(
coreSeqNo
))
{
jsonObject
.
put
(
"coreSeqNo"
,
coreSeqNo
);
//核心流水号 必填
}
HashMap
<
String
,
String
>
httpHeader
=
new
HashMap
<>();
...
...
performance-web/src/main/java/com/clx/performance/service/thirdparty/nbbank/NbBankService.java
浏览文件 @
3ae43528
package
com
.
clx
.
performance
.
service
.
thirdparty
.
nbbank
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayStatusResultVO
;
import
java.math.BigDecimal
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderResultVO
;
public
interface
NbBankService
{
NbBankOrderPayResultVO
orderPay
(
Integer
payType
);
NbBankOrderPayResultVO
orderTransferPay
(
Integer
amount
);
NbBankOrderPayResultVO
orderDirectPay
(
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
);
NbBankOrderResultVO
getResult
(
String
merSeqNo
);
NbBankOrderPayStatusResultVO
getOrderStatus
(
String
merSeqNo
);
NbBankOrderResultVO
adjust
(
String
orgMerSeqNo
,
Integer
amount
);
NbBankOrderResultVO
refund
(
String
orgMerSeqNo
,
Integer
amount
,
String
orgTransSeqNo
);
void
orderPayCallback
(
String
merSeqNo
,
String
transSeqNo
,
BigDecimal
trxAmt
,
BigDecimal
realTrxAmt
,
Integer
trxAmt
,
Integer
realTrxAmt
,
String
transStatus
,
String
signNo
);
NbBankOrderPayStatusResultVO
transferOrder
(
String
merSeqNo
);
NbBankOrderPayStatusResultVO
refund
(
String
merSeqNo
);
}
performance-web/src/main/java/com/clx/performance/service/thirdparty/nbbank/NbBankThirdpartyService.java
浏览文件 @
3ae43528
...
...
@@ -6,19 +6,18 @@ import com.nbopen.api.SDKResponse;
public
interface
NbBankThirdpartyService
{
JSONObject
directBankTransferOrder
(
String
merSeqNo
,
String
mer
Id
,
Integer
amount
);
JSONObject
directBankTransferOrder
(
String
merSeqNo
,
String
mer
DtTm
,
Integer
amount
);
JSONObject
unionPayDirectOrder
(
String
merSeqNo
,
String
mer
Id
,
Integer
amount
,
JSONObject
unionPayDirectOrder
(
String
merSeqNo
,
String
mer
DtTm
,
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
);
JSONObject
queryOrder
(
String
merSeqNo
,
String
merId
);
JSONObject
queryOrder
(
String
orgMerSeqNo
);
JSONObject
fundTransferOrder
(
String
merSeqNo
,
String
merId
,
String
merDtTm
,
JSONObject
fundTransferOrder
(
String
orgMerSeqNo
,
String
merDtTm
,
Integer
trxAmt
,
String
customerId
,
String
payCustomerId
);
JSONObject
refund
(
String
merSeqNo
,
String
merId
,
String
merDtTm
,
Integer
amount
,
JSONObject
refund
(
String
merSeqNo
,
String
merDtTm
,
Integer
amount
,
String
orgMerSeqNo
,
String
coreSeqNo
);
void
recordSave
(
Integer
type
,
SDKRequest
request
,
SDKResponse
response
);
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论