Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
ldy
/
payment
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 78531dd1
authored
May 18, 2023
by
郑建康(PHP)
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复慧收钱 宝付模块细节问题
1 parent
d1f81eee
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
32 additions
and
43 deletions
src/Common/Hsq/HsqTransBaseStrategy.php
src/Notify/HsqNotify.php
src/Notify/HsqTransferNotify.php
src/Notify/NotifyStrategy.php
src/Query/Hsq/HsqTransferQuery.php
src/Trans/HsqTransfer.php
src/Common/Hsq/HsqTransBaseStrategy.php
View file @
78531dd
...
@@ -104,7 +104,6 @@ abstract class HsqTransBaseStrategy implements BaseStrategy
...
@@ -104,7 +104,6 @@ abstract class HsqTransBaseStrategy implements BaseStrategy
public
function
handle
(
array
$data
)
public
function
handle
(
array
$data
)
{
{
$buildClass
=
$this
->
getBuildDataClass
();
$buildClass
=
$this
->
getBuildDataClass
();
$this
->
reqData
=
new
$buildClass
(
$this
->
config
,
$data
);
$this
->
reqData
=
new
$buildClass
(
$this
->
config
,
$data
);
$this
->
reqData
->
setSign
();
$this
->
reqData
->
setSign
();
$body
=
$this
->
reqData
->
getData
();
$body
=
$this
->
reqData
->
getData
();
...
...
src/Notify/HsqNotify.php
View file @
78531dd
...
@@ -133,21 +133,21 @@ class HsqNotify extends NotifyStrategy
...
@@ -133,21 +133,21 @@ class HsqNotify extends NotifyStrategy
// Array
// Array
// (
// (
// [buyerName] => oAFzv5a67bJ0aGk7cB-RfK0Yap8s //openid
// [buyerName] => oAFzv5a67bJ0aGk7cB-RfK0Yap8s //openid
// [channelOrderNo] => 2305
0815371110591231100592117922
//请求渠道商户订单号
// [channelOrderNo] => 2305
1714261110391231100016376946
//请求渠道商户订单号
// [finishedDate] => 202305
08153801
// [finishedDate] => 202305
17142648
// [fundBankCode] => OTHERS
// [fundBankCode] => OTHERS
// [fundChannel] => OTHERS
// [fundChannel] => OTHERS
// [goodsInfo] =>
支付测试
// [goodsInfo] =>
【猎电新能源】微信充值
// [memo] => {"openid":"oAFzv5a67bJ0aGk7cB-RfK0Yap8s","appid":"wxfbe753bb28212636","latitude":"22.33","spbillCreateIp":"150.158.53.11","paylimit":"no_credit","longitude":"171.21"}
// [memo] => {"openid":"oAFzv5a67bJ0aGk7cB-RfK0Yap8s","appid":"wxfbe753bb28212636","latitude":"22.33","spbillCreateIp":"150.158.53.11","paylimit":"no_credit","longitude":"171.21"}
// [orderAmt] =>
1
// [orderAmt] =>
3000
// [orderStatus] => SUCCESS
// [orderStatus] => SUCCESS
// [payOrderNo] => 420000187
1202305087489820896
//渠道交易单号(支付宝/微信/银联返回的交易号)
// [payOrderNo] => 420000187
2202305170697281261
//渠道交易单号(支付宝/微信/银联返回的交易号)
// [payType] => WECHAT_APPLET
// [payType] => WECHAT_APPLET
// [requestDate] => 202305
08153751
// [requestDate] => 202305
17142644
// [respCode] => 000000
// [respCode] => 000000
// [respMsg] => 交易成功
// [respMsg] => 交易成功
// [tradeNo] => 2500002023042010
105500387600383
6 //交易订单号(慧收钱系统交易订单号)
// [tradeNo] => 2500002023042010
092300388892778
6 //交易订单号(慧收钱系统交易订单号)
// [transNo] =>
WechatPay20230508153751
//商户订单号(原支付交易对应的商户订单号)
// [transNo] =>
20230517142644095535524955535120
//商户订单号(原支付交易对应的商户订单号)
// )
// )
$retData
=
[
$retData
=
[
'openid'
=>
$data
[
'buyerName'
],
'openid'
=>
$data
[
'buyerName'
],
...
...
src/Notify/HsqTransferNotify.php
View file @
78531dd
...
@@ -5,6 +5,7 @@ use Payment\Common\PayException;
...
@@ -5,6 +5,7 @@ use Payment\Common\PayException;
use
Payment\Common\HsqTransConfig
;
use
Payment\Common\HsqTransConfig
;
use
Payment\Config
;
use
Payment\Config
;
use
Payment\Utils\BaoFooRsaUtil
;
use
Payment\Utils\BaoFooRsaUtil
;
use
Payment\Utils\DataParser
;
/**
/**
...
@@ -24,7 +25,6 @@ class HsqTransferNotify extends NotifyStrategy
...
@@ -24,7 +25,6 @@ class HsqTransferNotify extends NotifyStrategy
public
function
__construct
(
array
$config
)
public
function
__construct
(
array
$config
)
{
{
parent
::
__construct
(
$config
);
parent
::
__construct
(
$config
);
try
{
try
{
$this
->
config
=
new
HsqTransConfig
(
$config
);
$this
->
config
=
new
HsqTransConfig
(
$config
);
}
catch
(
PayException
$e
)
{
}
catch
(
PayException
$e
)
{
...
@@ -44,7 +44,14 @@ class HsqTransferNotify extends NotifyStrategy
...
@@ -44,7 +44,14 @@ class HsqTransferNotify extends NotifyStrategy
if
(
empty
(
$data
)){
//如果参数为空,则不进行处理
if
(
empty
(
$data
)){
//如果参数为空,则不进行处理
return
false
;
return
false
;
}
}
return
$data
;
$tmp
=
explode
(
"&"
,
urldecode
(
$data
));
$result_data
=
array
();
foreach
(
$tmp
as
$val
)
{
$tmp2
=
explode
(
"="
,
$val
);
$result_data
[
$tmp2
[
0
]]
=
$tmp2
[
1
];
}
return
$result_data
;
}
}
/**
/**
...
@@ -69,18 +76,16 @@ class HsqTransferNotify extends NotifyStrategy
...
@@ -69,18 +76,16 @@ class HsqTransferNotify extends NotifyStrategy
protected
function
verifySign
(
array
$retData
)
protected
function
verifySign
(
array
$retData
)
{
{
if
(
empty
(
$this
->
config
->
publicKey
))
return
false
;
if
(
empty
(
$this
->
config
->
publicKey
))
return
false
;
$publicKey
=
$this
->
config
->
publicKey
;
$publicKey
=
$this
->
config
->
publicKey
;
$retData
=
$retData
[
'
sign
'
];
$retData
=
$retData
[
'
data_content
'
];
//解密
//解密
$decrypt
=
BaoFooRsaUtil
::
decryptByCERFile
(
$retData
,
$publicKey
);
$decrypt
=
BaoFooRsaUtil
::
decryptByCERFile
(
$retData
,
$publicKey
);
$result
=
json_decode
(
$decrypt
,
true
);
$data_content
=
DataParser
::
toArray
(
$decrypt
);
print_r
(
$result
);
die
;
$result
=
$data_content
[
'trans_reqDatas'
][
'trans_reqData'
]
??
''
;
if
(
$result
)
if
(
$result
)
{
{
//验签成功
//验签成功
return
true
;
return
$result
;
}
}
else
{
else
{
return
false
;
return
false
;
...
@@ -99,27 +104,10 @@ class HsqTransferNotify extends NotifyStrategy
...
@@ -99,27 +104,10 @@ class HsqTransferNotify extends NotifyStrategy
*/
*/
protected
function
getRetData
(
array
$data
)
protected
function
getRetData
(
array
$data
)
{
{
if
(
$this
->
config
->
returnRaw
)
{
$retData
=
$data
;
$data
[
'channel'
]
=
Config
::
HSQ_CHARGE
;
$retData
[
'amount'
]
=
bcmul
(
$data
[
'trans_money'
]
??
0
,
100
);
//转账金额
return
$data
;
$retData
[
'channel'
]
=
Config
::
HSQ_TRANSFER
;
}
return
$retData
;
return
$data
;
// $retData = [
// 'cash_fee' => $data['cash_fee'],
// 'fee_type' => $data['fee_type'],
// 'appid' => $data['sub_appid'],
// 'sub_merchant_id' => $data['sub_merchant_id'],
// 'buyer_id' => $data['sub_openid'],
// 'order_no' => $data['out_trade_sn'],//平台
// 'meepay_trade_no' => $data['meepay_trade_no'],//米付
// 'pay_time' => date('Y-m-d H:i:s', $data['pay_time']),// 支付完成时间
// 'amount' => $data['total_amount'],
// 'trade_type' => $data['trade_type'],
// 'transaction_id' => $data['transaction_id'],//微信
// 'trade_state' => strtolower($data['result_code']),
// 'channel' => Config::MI_CHARGE,
// ];
// return $retData;
}
}
/**
/**
...
...
src/Notify/NotifyStrategy.php
View file @
78531dd
...
@@ -51,7 +51,7 @@ abstract class NotifyStrategy
...
@@ -51,7 +51,7 @@ abstract class NotifyStrategy
}
}
// 回调商户的业务逻辑
// 回调商户的业务逻辑
$flag
=
$this
->
callback
(
$notify
,
$
notifyData
);
$flag
=
$this
->
callback
(
$notify
,
$
checkRet
);
if
(
$flag
)
{
if
(
$flag
)
{
$msg
=
'OK'
;
$msg
=
'OK'
;
...
...
src/Query/Hsq/HsqTransferQuery.php
View file @
78531dd
...
@@ -43,7 +43,6 @@ class HsqTransferQuery extends HsqTransBaseStrategy
...
@@ -43,7 +43,6 @@ class HsqTransferQuery extends HsqTransBaseStrategy
protected
function
retData
(
array
$ret
)
protected
function
retData
(
array
$ret
)
{
{
$head
=
$ret
[
'trans_content'
][
'trans_head'
];
$head
=
$ret
[
'trans_content'
][
'trans_head'
];
$data
=
$ret
[
'trans_content'
][
'trans_reqDatas'
][
0
][
'trans_reqData'
];
if
(
$head
[
'return_code'
]
!=
'0000'
)
if
(
$head
[
'return_code'
]
!=
'0000'
)
{
{
$retData
=
[
$retData
=
[
...
@@ -54,6 +53,7 @@ class HsqTransferQuery extends HsqTransBaseStrategy
...
@@ -54,6 +53,7 @@ class HsqTransferQuery extends HsqTransBaseStrategy
}
}
else
else
{
{
$data
=
$ret
[
'trans_content'
][
'trans_reqDatas'
][
0
][
'trans_reqData'
];
$retData
=
[
$retData
=
[
'is_success'
=>
'T'
,
'is_success'
=>
'T'
,
'response'
=>
[
'response'
=>
[
...
...
src/Trans/HsqTransfer.php
View file @
78531dd
...
@@ -43,13 +43,15 @@ class HsqTransfer extends HsqTransBaseStrategy
...
@@ -43,13 +43,15 @@ class HsqTransfer extends HsqTransBaseStrategy
protected
function
retData
(
array
$ret
)
protected
function
retData
(
array
$ret
)
{
{
$head
=
$ret
[
'trans_content'
][
'trans_head'
];
$head
=
$ret
[
'trans_content'
][
'trans_head'
];
$data
=
$ret
[
'trans_content'
][
'trans_reqDatas'
][
0
][
'trans_reqData'
];
$data
=
$ret
[
'trans_content'
][
'trans_reqDatas'
][
0
][
'trans_reqData'
]
??
''
;
if
(
$head
[
'return_code'
]
!=
'0000'
)
if
(
$head
[
'return_code'
]
!=
'0000'
)
{
{
$retData
=
[
$retData
=
[
'is_success'
=>
'F'
,
'is_success'
=>
'F'
,
'error'
=>
$head
[
'return_msg'
],
'response'
=>
[
'channel'
=>
Config
::
HSQ_TRANSFER
,
'error'
=>
$head
[
'return_msg'
],
'channel'
=>
Config
::
HSQ_TRANSFER
,
],
];
];
}
}
else
else
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment