container = $container; parent::__construct('mine'); } public function configure(): void { parent::configure(); $this->setDescription('我的测试'); } public function handle(): void { /** * @var PaymentService $paymentService */ $paymentService = $this->container->make(PaymentService::class); $params = $this->pay(); $data = $paymentService->payment($params); var_dump($data); return; return; // $ret = Api::withdrawalToCard([]); // var_dump($ret); // return; /** * @var PaymentService $paymentService */ $paymentService = $this->container->make(PaymentService::class); $memberId = 'T01'; $protocol = 'p202305296288304915744'; // $result = $paymentService->protocolPayPreRequest($this->prepay($memberId, $protocol, 1)); // var_dump($result); $token = 'de83e93fc3594dab8d5c8707fcbc8f5c'; $smsCode = '454925'; $result = $paymentService->protocolPayConfirm($this->confirmPay($token, $protocol, $smsCode)); var_dump($result); return; // $this->bindCard(); // $this->comfirmBindCard(); // $this->prepay(); // $this->confirmPay(); // $this->refund(); // $this->refundQuery(); // $this->paymentQuery(); $this->unbindCard(); return; } public function bindCard() { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'mchtOrderNo' => time() . rand(1000, 9999), 'memberId' => 'ABC', 'userName' => '测试者', 'phoneNum' => '18888888888', 'bankCardNo' => '62122610000000000', 'bankCardType' => 'debit', 'certificatesNo' => '350000000000000000', ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; var_dump($params); $request = new BindCardRequest($params); $params = $request->getData(); var_dump($params); } public function comfirmBindCard() { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'memberId' => 'ABC', 'smsNo' => 'QY888888888888888', 'smsCode' => '123456', ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; var_dump($params); $request = new BindCardRequest($params); $params = $request->getData(); var_dump($params); } public function prepay($memberId, $protocol, $amount) { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'memberId' => $memberId, 'outTradeNo' => time() . rand(1000, 9999), 'protocol' => $protocol, 'payAmount' => $amount, ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; return $params; } public function confirmPay($token, $protocol, $smsCode) { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'token' => $token, 'protocol' => $protocol, 'smsCode' => $smsCode, ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; return $params; } public function refund() { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'outRefundNo' => time() . rand(1000, 9999), 'remark' => 'xxx', 'amount' => 88, 'refundAmount' => 88, 'outTradeNo' => '123423423532', ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; var_dump($params); $request = new ProtocolPayConfirmRequest($params); $params = $request->getData(); var_dump($params); } public function refundQuery() { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'outRefundNo' => '237427342388', ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; var_dump($params); $request = new RefundQueryRequest($params); $params = $request->getData(); var_dump($params); } public function paymentQuery() { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'outTradeNo' => '3423423432', ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; var_dump($params); $request = new PaymentQueryRequest($params); $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); } public function pay() { $params = [ 'app_id' => '202304270000004', 'timestamp' => time(), 'nonce_str' => StringHelper::getRandomString(32), 'data' => json_encode([ 'outOrderNo' => time().rand(1000, 9999), 'outMemberId' => 'T001', 'amount' => 200, 'notifyUrl' => 'https://www.baidu.com', ]), ]; $sign = \App\Helper\Platform\Signer::sign($params, 'lSHKbuFngCXHN8Ue1s8QHAAzPvOL3u9O'); $params['sign'] = $sign; return $params; } }