提交 62d6213c 编写于 作者: D devil_gong

pay

上级 13272519
...@@ -116,7 +116,8 @@ class MafubaoWeixin ...@@ -116,7 +116,8 @@ class MafubaoWeixin
'appid' => $this->config['appid'], 'appid' => $this->config['appid'],
'channel' => 'wechat', 'channel' => 'wechat',
'notify_url' => $params['notify_url'], 'notify_url' => $params['notify_url'],
'return_url' => $params['call_back_url'], 'redirect_url' => $params['call_back_url'],
'trade_type' => 'sync',
// 业务参数 // 业务参数
'goodsname' => $params['name'], 'goodsname' => $params['name'],
...@@ -147,7 +148,7 @@ class MafubaoWeixin ...@@ -147,7 +148,7 @@ class MafubaoWeixin
foreach($params AS $key => $val) foreach($params AS $key => $val)
{ {
// 跳过这些不参数签名 // 跳过这些不参数签名
if($val == '' || $key == 'sign') if($key == 'sign' || $val == '' || $val == null)
{ {
continue; continue;
} }
...@@ -184,14 +185,14 @@ class MafubaoWeixin ...@@ -184,14 +185,14 @@ class MafubaoWeixin
{ {
return DataReturn('配置有误', -1); return DataReturn('配置有误', -1);
} }
if(empty($params['pay_no'])) if(empty($params['trade_no']))
{ {
return DataReturn('支付失败', -1); return DataReturn('支付失败', -1);
} }
// 签名验证 // 签名验证
$param = $this->GetParamSign($params); $param = $this->GetParamSign($params);
if(md5($param['sign'].$this->config['key']) != $params['sign']) if(md5($param['sign'].'&key='.$this->config['appsecret']) != $params['sign'])
{ {
return DataReturn('签名错误', -1); return DataReturn('签名错误', -1);
} }
...@@ -203,25 +204,33 @@ class MafubaoWeixin ...@@ -203,25 +204,33 @@ class MafubaoWeixin
{ {
// 成功 // 成功
case 0 : case 0 :
$ret = DataReturn('支付成功', 0, $this->ReturnData($params)); $ret = DataReturn('未支付', -100);
break; break;
// 失败 // 失败
case 1 : case 1 :
$ret = DataReturn('支付失败', -100); $ret = DataReturn('支付成功', 0, $this->ReturnData($params));
break; break;
// 参数有误 // 参数有误
case 2 : case 2 :
$ret = DataReturn('支付参数有误', -1001); case 3 :
case 6 :
$ret = DataReturn('支付超时', -1001);
break;
// 参数有误
case 4 :
case 5 :
$ret = DataReturn('支付成功,通知失败', -1002);
break; break;
// 默认 // 默认
default : default :
$ret = DataReturn('支付异常错误', -1002); $ret = DataReturn('支付异常错误', -1003);
} }
} else { } else {
$ret = DataReturn('支付异常错误', -1003); $ret = DataReturn('支付异常错误', -1004);
} }
return $ret; return $ret;
} }
...@@ -237,11 +246,11 @@ class MafubaoWeixin ...@@ -237,11 +246,11 @@ class MafubaoWeixin
private function ReturnData($data) private function ReturnData($data)
{ {
// 返回数据固定基础参数 // 返回数据固定基础参数
$data['trade_no'] = isset($data['pay_no']) ? $data['pay_no'] : ''; // 支付平台 - 订单号 $data['trade_no'] = isset($data['trade_no']) ? $data['trade_no'] : ''; // 支付平台 - 订单号
$data['buyer_user'] = isset($data['pay_id']) ? $data['pay_id'] : ''; // 支付平台 - 用户 $data['buyer_user'] = isset($data['mid']) ? $data['mid'] : ''; // 支付平台 - 用户
$data['out_trade_no'] = substr($data['pay_id'], 0, strlen($data['pay_id'])-6); // 本系统发起支付的 - 订单号 $data['out_trade_no'] = $data['out_trade_no']; // 本系统发起支付的 - 订单号
$data['subject'] = isset($data['param']) ? $data['param'] : ''; // 本系统发起支付的 - 商品名称 $data['subject'] = isset($data['goodsname']) ? $data['goodsname'] : ''; // 本系统发起支付的 - 商品名称
$data['pay_price'] = $data['money']; // 本系统发起支付的 - 总价 $data['pay_price'] = $data['money_real']; // 本系统发起支付的 - 总价
return $data; return $data;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册