Browse Source

update

master
用户名 3 years ago
parent
commit
98927bf9aa
  1. 4
      .gitignore
  2. 182
      mobile/plugins/payment/wxpay.php
  3. 1
      mobile/source/apps/flow/controllers/IndexController.php

4
.gitignore

@ -1,6 +1,2 @@
config.php
data/config.php data/config.php
mobile/data/config.php mobile/data/config.php
phpMyAdmin4.8.5
DL_Pay_Demo
a_test

182
mobile/plugins/payment/wxpay.php

@ -12,97 +12,97 @@ class wxpay
*/ */
public function pay() public function pay()
{ {
// 统一支付接口Demo // 统一支付接口Demo
// 加载基础类 // 加载基础类
require_once('./library/Base.php'); require_once('./library/Base.php');
$Base = new Base(); $Base = new Base();
// 获取配置信息 // 获取配置信息
$config = $Base->getConfig(); $config = $Base->getConfig();
// var_dump('<pre>', $config); // var_dump('<pre>', $config);
// 接口URL(测试) // 接口URL(测试)
$api_url = $config['pay_url']; $api_url = $config['pay_url'];
// 加个body字段传中文试试 // 加个body字段传中文试试
// 组装交易报文 // 组装交易报文
$reqsn_prefix = date('Ymd'); $reqsn_prefix = date('Ymd');
// var_dump("uniq_id(reqsn)"); // var_dump("uniq_id(reqsn)");
// echo "\r\n"; // echo "\r\n";
// var_dump(uniqid($reqsn_prefix)); // var_dump(uniqid($reqsn_prefix));
$trade_data = array( $trade_data = array(
'orgid' => $config['org_num'], 'orgid' => $config['org_num'],
'cusid' => $config['cusid'], 'cusid' => $config['cusid'],
'branchno' => $config['branchno'], 'branchno' => $config['branchno'],
'termcode' => $config['termcode'], 'termcode' => $config['termcode'],
'version' => $config['version'], 'version' => $config['version'],
'trxamt' => '1', 'trxamt' => '1',
'reqsn' => uniqid($reqsn_prefix), 'reqsn' => uniqid($reqsn_prefix),
'producp' => 'JX0002', 'producp' => 'JX0002',
'transtype' => 'JSP511', 'transtype' => 'JSP511',
'paytype' => 'W01', 'paytype' => 'W01',
'randomstr' => md5( uniqid() ), 'randomstr' => md5( uniqid() ),
'body' => 'pages', 'body' => 'pages',
"acct" => $this->parameters["openid"] # 不知道好不好用... "acct" => $this->parameters["openid"] # 不知道好不好用...
); );
// 生成签名 // 生成签名
$sign = $Base->Crypt->makeSign($trade_data); $sign = $Base->Crypt->makeSign($trade_data);
if($sign === false) if($sign === false)
{ {
// echo $Base->Crypt->err_msg; // echo $Base->Crypt->err_msg;
die(); die();
} }
// echo "\r\n"; // echo "\r\n";
// echo "[sign]: {$sign}"; // echo "[sign]: {$sign}";
// die(); // die();
// 加密交易报文 // 加密交易报文
$crypted_trade_data = $Base->Crypt->encryptTradeData($trade_data); $crypted_trade_data = $Base->Crypt->encryptTradeData($trade_data);
if($crypted_trade_data === false) if($crypted_trade_data === false)
{ {
// echo $Base->Crypt->err_msg; // echo $Base->Crypt->err_msg;
die(); die();
} }
// echo "\r\n"; // echo "\r\n";
// echo "[crypted message]: {$crypted_trade_data}"; // echo "[crypted message]: {$crypted_trade_data}";
// die(); // die();
// 发送报文 // 发送报文
// echo "\r\n"; // echo "\r\n";
// var_dump($api_url); // var_dump($api_url);
$response = $Base->Request->send($api_url, $crypted_trade_data, $sign); $response = $Base->Request->send($api_url, $crypted_trade_data, $sign);
if($response === false) if($response === false)
{ {
// echo $Base->Request->err_msg; // echo $Base->Request->err_msg;
die(); die();
} }
// echo "\r\n"; // echo "\r\n";
// echo "[response message]: {$response}"; // echo "[response message]: {$response}";
// 解析响应报文 // 解析响应报文
$response = json_decode($response, true); $response = json_decode($response, true);
$response_data_crypted = $response['data']; $response_data_crypted = $response['data'];
$response_sign = $response['sign']; $response_sign = $response['sign'];
// echo "\r\n"; // echo "\r\n";
// echo "[response sign]: {$response_sign}"; // echo "[response sign]: {$response_sign}";
// echo "\r\n"; // echo "\r\n";
// echo "[response data (ciphertext)]: {$response_data_crypted}"; // echo "[response data (ciphertext)]: {$response_data_crypted}";
// 解密响应密文 // 解密响应密文
$response_data = $Base->Crypt->decryptTradeData($response_data_crypted); $response_data = $Base->Crypt->decryptTradeData($response_data_crypted);
if($response_data === false) if($response_data === false)
{ {
// echo $Base->Crypt->err_msg; // echo $Base->Crypt->err_msg;
die(); die();
} }
// echo "\r\n"; // echo "\r\n";
// echo "[response data(clear text)]: {$response_data}"; // echo "[response data(clear text)]: {$response_data}";
echo $response_data; echo $response_data;
// die(); // die();
} }
/** /**

1
mobile/source/apps/flow/controllers/IndexController.php

@ -611,7 +611,6 @@ class IndexController extends FrontendController {
$shipping['shipping_id'] = 0; $shipping['shipping_id'] = 0;
} }
$shipping_type = 0; // sc_test $shipping_type = 0; // sc_test
// $shipping['shipping_id'] = 1; // sc_test
$shipping['shipping_id'] = 1; // sc_test $shipping['shipping_id'] = 1; // sc_test
$order = array( $order = array(
'shipping_id' => $shipping['shipping_id'], 'shipping_id' => $shipping['shipping_id'],

Loading…
Cancel
Save