init
- 框架初始化 - 安装插件 - 修复PHP8.4报错
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
namespace Yansongda\Pay\Gateways\Wechat;
|
||||
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Yansongda\Pay\Events;
|
||||
use Yansongda\Pay\Exceptions\GatewayException;
|
||||
use Yansongda\Pay\Exceptions\InvalidArgumentException;
|
||||
use Yansongda\Pay\Exceptions\InvalidSignException;
|
||||
use Yansongda\Supports\Collection;
|
||||
|
||||
class ScanGateway extends Gateway
|
||||
{
|
||||
/**
|
||||
* Pay an order.
|
||||
*
|
||||
* @author yansongda <me@yansongda.cn>
|
||||
*
|
||||
* @param string $endpoint
|
||||
*
|
||||
* @throws GatewayException
|
||||
* @throws InvalidArgumentException
|
||||
* @throws InvalidSignException
|
||||
*/
|
||||
public function pay($endpoint, ?array $payload): Collection
|
||||
{
|
||||
$payload['spbill_create_ip'] = Request::createFromGlobals()->server->get('SERVER_ADDR');
|
||||
$payload['trade_type'] = $this->getTradeType();
|
||||
|
||||
Events::dispatch(new Events\PayStarted('Wechat', 'Scan', $endpoint, $payload));
|
||||
|
||||
return $this->preOrder($payload);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get trade type config.
|
||||
*
|
||||
* @author yansongda <me@yansongda.cn>
|
||||
*/
|
||||
protected function getTradeType(): string
|
||||
{
|
||||
return 'NATIVE';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user