niucloud-admin/niucloud/vendor/yansongda/pay/src/Traits/SupportServiceProviderTrait.php
wangchen147 295fb5d386 1.0.0
2024-04-03 15:26:01 +08:00

36 lines
958 B
PHP

<?php
declare(strict_types=1);
namespace Yansongda\Pay\Traits;
use Yansongda\Artful\Exception\ContainerException;
use Yansongda\Artful\Exception\ServiceNotFoundException;
use Yansongda\Artful\Rocket;
use Yansongda\Pay\Pay;
use function Yansongda\Pay\get_alipay_config;
trait SupportServiceProviderTrait
{
/**
* @throws ContainerException
* @throws ServiceNotFoundException
*/
protected function loadAlipayServiceProvider(Rocket $rocket): void
{
$params = $rocket->getParams();
$config = get_alipay_config($params);
$serviceProviderId = $config['service_provider_id'] ?? null;
if (Pay::MODE_SERVICE !== ($config['mode'] ?? Pay::MODE_NORMAL)
|| empty($serviceProviderId)) {
return;
}
$rocket->mergeParams([
'extend_params' => array_merge($params['extend_params'] ?? [], ['sys_service_provider_id' => $serviceProviderId]),
]);
}
}