|
|
|
@ -4,26 +4,20 @@ declare(strict_types=1);
|
|
|
|
|
|
|
|
|
|
namespace App\Command;
|
|
|
|
|
|
|
|
|
|
use App\Helper\Efps\Api;
|
|
|
|
|
use App\Helper\Signer;
|
|
|
|
|
use App\Helper\StringHelper;
|
|
|
|
|
use App\Request\BindCardRequest;
|
|
|
|
|
use App\Request\PaymentQueryRequest;
|
|
|
|
|
use App\Request\ProtocolPayConfirmRequest;
|
|
|
|
|
use App\Request\ProtocolPayPreRequest;
|
|
|
|
|
use App\Request\RefundQueryRequest;
|
|
|
|
|
use App\Request\RegisterRequest;
|
|
|
|
|
use App\Service\AppService;
|
|
|
|
|
use App\Service\MerchantService;
|
|
|
|
|
use App\Service\PaymentService;
|
|
|
|
|
use Hyperf\Command\Annotation\Command;
|
|
|
|
|
use App\Request\UnBindCardRequest;
|
|
|
|
|
use Hyperf\Command\Command as HyperfCommand;
|
|
|
|
|
use Hyperf\Contract\ContainerInterface;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @Command
|
|
|
|
|
*/
|
|
|
|
|
class JinlingCommand extends HyperfCommand
|
|
|
|
|
class MineCommand extends HyperfCommand
|
|
|
|
|
{
|
|
|
|
|
/**
|
|
|
|
|
* @var ContainerInterface
|
|
|
|
@ -36,13 +30,13 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
{
|
|
|
|
|
$this->container = $container;
|
|
|
|
|
|
|
|
|
|
parent::__construct('jinling');
|
|
|
|
|
parent::__construct('mine');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function configure(): void
|
|
|
|
|
{
|
|
|
|
|
parent::configure();
|
|
|
|
|
$this->setDescription('廖金灵测试');
|
|
|
|
|
$this->setDescription('我的测试');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function handle(): void
|
|
|
|
@ -53,125 +47,9 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
// $this->confirmPay();
|
|
|
|
|
// $this->refund();
|
|
|
|
|
// $this->refundQuery();
|
|
|
|
|
$this->paymentQuery();
|
|
|
|
|
// $this->paymentQuery();
|
|
|
|
|
$this->unbindCard();
|
|
|
|
|
return;
|
|
|
|
|
/*$ret = Api::certifiedPayment([
|
|
|
|
|
'outTradeNo' => time() . rand(1000, 9999),
|
|
|
|
|
'userName' => 'abc',
|
|
|
|
|
'phoneNum' => '18760419185',
|
|
|
|
|
'bankCardNo' => '6214835911385365',
|
|
|
|
|
'certificatesNo' => '350824199001105476',
|
|
|
|
|
'payAmount' => 100,
|
|
|
|
|
]);
|
|
|
|
|
var_dump($ret);
|
|
|
|
|
return;*/
|
|
|
|
|
/*$ret = Api::unifiedPayment();
|
|
|
|
|
var_dump($ret);
|
|
|
|
|
return;*/
|
|
|
|
|
/*$params = [
|
|
|
|
|
'app_id' => '202304270000004',
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'test' => 1,
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
|
$params['sign'] = $sign;
|
|
|
|
|
var_dump($params);
|
|
|
|
|
$request = new RegisterRequest($params);
|
|
|
|
|
$params = $request->getData();
|
|
|
|
|
var_dump($params);
|
|
|
|
|
return;*/
|
|
|
|
|
/*$ret = Api::unifiedPayment();
|
|
|
|
|
var_dump($ret);
|
|
|
|
|
return;*/
|
|
|
|
|
/*$ret = Api::register([
|
|
|
|
|
'merId' => "T100", // 562238003185933
|
|
|
|
|
'backUrl' => 'http://www.baidu.com',
|
|
|
|
|
'certificateName' => '测试',
|
|
|
|
|
'lawyerCertType' => 0,
|
|
|
|
|
'lawyerCertNo' => '430481198104234557',
|
|
|
|
|
'lawyerCertPhotoFront' => 'http://5b0988e595225.cdn.sohucs.com/images/20191031/e6a31c2611f042bbbfd39297243437a7.png',
|
|
|
|
|
'lawyerCertPhotoBack' => 'http://5b0988e595225.cdn.sohucs.com/images/20191031/e6a31c2611f042bbbfd39297243437a7.png',
|
|
|
|
|
'certificateTo' => '20500211',
|
|
|
|
|
'contactPhone' => '18888888888',
|
|
|
|
|
'accountType' => 3,
|
|
|
|
|
'canDownType' => '01',
|
|
|
|
|
]);
|
|
|
|
|
var_dump($ret);
|
|
|
|
|
return;*/
|
|
|
|
|
$ret = Api::bindCard([
|
|
|
|
|
'mchtOrderNo' => time() . rand(1000, 9999),
|
|
|
|
|
'memberId' => 'T01',
|
|
|
|
|
'userName' => '饶丽秀',
|
|
|
|
|
'phoneNum' => '13817896134',
|
|
|
|
|
// 'bankCardNo' => '622908113000409396',
|
|
|
|
|
'bankCardNo' => '6212261402022689613',
|
|
|
|
|
'bankCardType' => 'debit',
|
|
|
|
|
'certificatesNo' => '350824199001045864',
|
|
|
|
|
]);
|
|
|
|
|
var_dump($ret);
|
|
|
|
|
return;
|
|
|
|
|
echo \App\Helper\Efps\Signer::sign('sss');
|
|
|
|
|
$sm3 = new \OneSm\Sm3();
|
|
|
|
|
|
|
|
|
|
// 字符串签名
|
|
|
|
|
echo $sm3->sign('abc') . PHP_EOL;
|
|
|
|
|
echo $sm3->sign(str_repeat("adfas哈哈哈", 100)) . PHP_EOL;
|
|
|
|
|
return;
|
|
|
|
|
/**
|
|
|
|
|
* @var PaymentService $paymentService
|
|
|
|
|
*/
|
|
|
|
|
$paymentService = $this->container->make(PaymentService::class);
|
|
|
|
|
$paymentService = $this->container->make(PaymentService::class);
|
|
|
|
|
$paramsJson = '{"return_code":"SUCCESS","nonce_str":"4a40481401bb47cc81411ab3a8181bad","timestamp":1682659313039,"sign":"5AD859576B783CB44D1FAA0E7DD4C463","order_no":"TR23042830042195760003775","out_order_no":"2023042813194700001","total_amount":2,"currency":"AUD","order_time":"20230428151948","pay_time":"20230428152021","exchange_rate":459899100,"cny_amount":9}';
|
|
|
|
|
$params = json_decode($paramsJson, true);
|
|
|
|
|
$ret = $paymentService->notify($params);
|
|
|
|
|
var_dump($ret);
|
|
|
|
|
return;
|
|
|
|
|
$this->buildPayPrams();
|
|
|
|
|
return;
|
|
|
|
|
/**
|
|
|
|
|
* @var MerchantService $merchantService
|
|
|
|
|
*/
|
|
|
|
|
$merchantService = $this->container->make(MerchantService::class);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @var AppService $appService
|
|
|
|
|
*/
|
|
|
|
|
$appService = $this->container->make(AppService::class);
|
|
|
|
|
$merchant = $merchantService->createMerchant([
|
|
|
|
|
'username' => 'elf',
|
|
|
|
|
'password' => '123456',
|
|
|
|
|
'email' => '360197197@qq.com',
|
|
|
|
|
'mobile' => '18760419185',
|
|
|
|
|
'ip' => '127.0.0.1',
|
|
|
|
|
]);
|
|
|
|
|
$appService->createApp($merchant);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function buildPayPrams(): void
|
|
|
|
|
{
|
|
|
|
|
$params = [
|
|
|
|
|
'app_id' => '202304270000004',
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O',
|
|
|
|
|
];
|
|
|
|
|
$data = [
|
|
|
|
|
'order_name' => '测试订单',
|
|
|
|
|
'currency' => 'CNY',
|
|
|
|
|
'amount' => '10',
|
|
|
|
|
'notify_url' => 'https://www.baidu.com',
|
|
|
|
|
'redirect_url' => 'https://www.google.com',
|
|
|
|
|
'out_order_no' => '1122',
|
|
|
|
|
'direct_pay' => 0,
|
|
|
|
|
'show_pc_pay_url' => 0,
|
|
|
|
|
];
|
|
|
|
|
$params['data'] = json_encode($data);
|
|
|
|
|
$sign = Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
|
$params['sign'] = $sign;
|
|
|
|
|
var_dump(json_encode($params));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function bindCard()
|
|
|
|
@ -182,13 +60,12 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'mchtOrderNo' => time() . rand(1000, 9999),
|
|
|
|
|
'memberId' => 'T01',
|
|
|
|
|
'userName' => '饶丽秀',
|
|
|
|
|
'phoneNum' => '13817896134',
|
|
|
|
|
// 'bankCardNo' => '622908113000409396',
|
|
|
|
|
'bankCardNo' => '6212261402022689613',
|
|
|
|
|
'memberId' => 'ABC',
|
|
|
|
|
'userName' => '测试者',
|
|
|
|
|
'phoneNum' => '18888888888',
|
|
|
|
|
'bankCardNo' => '62122610000000000',
|
|
|
|
|
'bankCardType' => 'debit',
|
|
|
|
|
'certificatesNo' => '350824199001045864',
|
|
|
|
|
'certificatesNo' => '350000000000000000',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
@ -206,9 +83,9 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'memberId' => 'T01',
|
|
|
|
|
'smsNo' => 'QY202305292233394504122',
|
|
|
|
|
'smsCode' => '485608',
|
|
|
|
|
'memberId' => 'ABC',
|
|
|
|
|
'smsNo' => 'QY888888888888888',
|
|
|
|
|
'smsCode' => '123456',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
@ -228,7 +105,7 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'memberId' => 'T01',
|
|
|
|
|
'outTradeNo' => time() . rand(1000, 9999),
|
|
|
|
|
'protocol' => 'p202305296288304915744',
|
|
|
|
|
'protocol' => 'p88888888888888888',
|
|
|
|
|
'payAmount' => 1,
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
@ -247,9 +124,9 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'token' => '83f93a2b0a134d358dde920d9b7abca0',
|
|
|
|
|
'protocol' => 'p202305296288304915744',
|
|
|
|
|
'smsCode' => '466592',
|
|
|
|
|
'token' => 's3skls8d3402skfj23',
|
|
|
|
|
'protocol' => 'p88888888888888888',
|
|
|
|
|
'smsCode' => '123456',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
@ -268,10 +145,10 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'outRefundNo' => time() . rand(1000, 9999),
|
|
|
|
|
'remark' => '退款',
|
|
|
|
|
'amount' => 1,
|
|
|
|
|
'refundAmount' => 1,
|
|
|
|
|
'outTradeNo' => '16853732799380',
|
|
|
|
|
'remark' => 'xxx',
|
|
|
|
|
'amount' => 88,
|
|
|
|
|
'refundAmount' => 88,
|
|
|
|
|
'outTradeNo' => '123423423532',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
@ -289,7 +166,7 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'outRefundNo' => '16853743952501',
|
|
|
|
|
'outRefundNo' => '237427342388',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
@ -307,7 +184,7 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'outTradeNo' => '16853732799380',
|
|
|
|
|
'outTradeNo' => '3423423432',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
@ -317,4 +194,23 @@ class JinlingCommand extends HyperfCommand
|
|
|
|
|
$params = $request->getData();
|
|
|
|
|
var_dump($params);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function unbindCard()
|
|
|
|
|
{
|
|
|
|
|
$params = [
|
|
|
|
|
'app_id' => '202304270000004',
|
|
|
|
|
'timestamp' => time(),
|
|
|
|
|
'nonce_str' => StringHelper::getRandomString(32),
|
|
|
|
|
'data' => json_encode([
|
|
|
|
|
'protocol' => 'p88888888888888888',
|
|
|
|
|
'memberId' => 'ABC',
|
|
|
|
|
]),
|
|
|
|
|
];
|
|
|
|
|
$sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O');
|
|
|
|
|
$params['sign'] = $sign;
|
|
|
|
|
var_dump($params);
|
|
|
|
|
$request = new UnBindCardRequest($params);
|
|
|
|
|
$params = $request->getData();
|
|
|
|
|
var_dump($params);
|
|
|
|
|
}
|
|
|
|
|
}
|