|
@@ -269,28 +269,30 @@ class HuiPay extends Api
|
|
public function pay_notify(Request $request)
|
|
public function pay_notify(Request $request)
|
|
{
|
|
{
|
|
$params = $request->param();
|
|
$params = $request->param();
|
|
- $resp_data_json = $params['resp_data'] ?? '';
|
|
|
|
|
|
+
|
|
// 消息主体信息
|
|
// 消息主体信息
|
|
- $resp_data = json_decode(stripslashes(htmlspecialchars_decode($resp_data_json)), true);
|
|
|
|
|
|
+ $resp_data_json = htmlspecialchars_decode($params['resp_data'] ?? '');
|
|
|
|
+ $resp_data = json_decode(stripslashes($resp_data_json), true);
|
|
unset($params['resp_data']);
|
|
unset($params['resp_data']);
|
|
|
|
|
|
LogUtil::info('支付回调参数', self::LOG_MODULE, __FUNCTION__, [
|
|
LogUtil::info('支付回调参数', self::LOG_MODULE, __FUNCTION__, [
|
|
'params' => $params,
|
|
'params' => $params,
|
|
|
|
+ 'resp_data2' => $resp_data_json,
|
|
'resp_data' => $resp_data,
|
|
'resp_data' => $resp_data,
|
|
]);
|
|
]);
|
|
|
|
|
|
|
|
+ // 校验回调信息
|
|
|
|
+ if (empty($params['resp_code']) || $params['resp_code'] != '00000000' || empty($resp_data['req_seq_id'])) {
|
|
|
|
+ LogUtil::info('回调信息有误', self::LOG_MODULE, __FUNCTION__, "resp_code error");
|
|
|
|
+ return self::response201('支付信息有误');
|
|
|
|
+ }
|
|
|
|
+
|
|
// 校验签名
|
|
// 校验签名
|
|
$huiPay = new PayUtil();
|
|
$huiPay = new PayUtil();
|
|
if (!$huiPay->checkSign($params['sign'],$resp_data_json)){
|
|
if (!$huiPay->checkSign($params['sign'],$resp_data_json)){
|
|
LogUtil::info('签名校验失败', self::LOG_MODULE, __FUNCTION__);
|
|
LogUtil::info('签名校验失败', self::LOG_MODULE, __FUNCTION__);
|
|
return self::response201('签名校验失败');
|
|
return self::response201('签名校验失败');
|
|
}
|
|
}
|
|
-dd(111);
|
|
|
|
- // 校验回调信息
|
|
|
|
- if (empty($params['resp_code']) || $params['resp_code'] != '00000000' || empty($resp_data['req_seq_id'])) {
|
|
|
|
- LogUtil::info('回调信息有误', self::LOG_MODULE, __FUNCTION__, "resp_code error");
|
|
|
|
- return self::response201('支付信息有误');
|
|
|
|
- }
|
|
|
|
|
|
|
|
// 开始处理业务逻辑
|
|
// 开始处理业务逻辑
|
|
$pay_no = $resp_data['req_seq_id'];
|
|
$pay_no = $resp_data['req_seq_id'];
|