mirror of
http://124.126.16.154:8888/singularity/hdk-pay.git
synced 2026-01-15 05:15:06 +08:00
feat(stripe): 创建 session 接口增加了语言选项
This commit is contained in:
@@ -60,7 +60,7 @@
|
|||||||
},
|
},
|
||||||
"packagist": {
|
"packagist": {
|
||||||
"type": "composer",
|
"type": "composer",
|
||||||
"url": "https://mirrors.cloud.tencent.com/composer/"
|
"url": "https://mirrors.aliyun.com/composer/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"version": "1.0.0-alpha.8"
|
"version": "1.0.0-alpha.8"
|
||||||
|
|||||||
3422
composer.lock
generated
3422
composer.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -15,9 +15,11 @@ use GuzzleHttp\Exception\GuzzleException;
|
|||||||
use GuzzleHttp\RequestOptions;
|
use GuzzleHttp\RequestOptions;
|
||||||
use Hyperf\Codec\Json;
|
use Hyperf\Codec\Json;
|
||||||
use Hyperf\HttpServer\Contract\RequestInterface;
|
use Hyperf\HttpServer\Contract\RequestInterface;
|
||||||
|
use Lmc\HttpConstants\Header;
|
||||||
use Money\Money;
|
use Money\Money;
|
||||||
use Singularity\HDK\Core\Http\RequestService;
|
use Singularity\HDK\Core\Http\RequestService;
|
||||||
use Singularity\HDK\Core\Http\RequestServiceFactory;
|
use Singularity\HDK\Core\Http\RequestServiceFactory;
|
||||||
|
use Singularity\HDK\Core\I18n\Enum\Languages;
|
||||||
use Singularity\HDK\Pay\Resource\Order;
|
use Singularity\HDK\Pay\Resource\Order;
|
||||||
use Singularity\HDK\Pay\Resource\StripeConfiguration;
|
use Singularity\HDK\Pay\Resource\StripeConfiguration;
|
||||||
|
|
||||||
@@ -70,14 +72,15 @@ final class StripeRpc
|
|||||||
int $goodsId,
|
int $goodsId,
|
||||||
string $goodsName,
|
string $goodsName,
|
||||||
array $goodsDetail,
|
array $goodsDetail,
|
||||||
?int $service = null
|
?Languages $locale = null,
|
||||||
|
?int $service = null,
|
||||||
): Order {
|
): Order {
|
||||||
$response = $this->requestService->requestPost(
|
$response = $this->requestService->requestPost(
|
||||||
url: '/rpc/v1/stripe/order',
|
url: '/rpc/v1/stripe/order',
|
||||||
data: [
|
data: [
|
||||||
'service' => $service ?? config('payment.sp_id'),
|
'service' => $service ?? config('payment.sp_id'),
|
||||||
'amount' => $money->getAmount(),
|
'amount' => $money->getAmount(),
|
||||||
'currency' => $money->getCurrency(),
|
'currency' => (string)$money->getCurrency(),
|
||||||
'uid' => $uid,
|
'uid' => $uid,
|
||||||
'goodsDetail' => array_replace(
|
'goodsDetail' => array_replace(
|
||||||
$goodsDetail,
|
$goodsDetail,
|
||||||
@@ -87,6 +90,12 @@ final class StripeRpc
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
options: [
|
||||||
|
'headers' => [
|
||||||
|
Header::CONTENT_TYPE => 'application/json',
|
||||||
|
Header::ACCEPT_LANGUAGE => $locale?->value ?? config('translation.locale')
|
||||||
|
]
|
||||||
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
$content = $response->getBody()->getContents();
|
$content = $response->getBody()->getContents();
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
/** @var StripeRpc $service */
|
/** @var StripeRpc $service */
|
||||||
|
|
||||||
use Money\Money;
|
use Money\Money;
|
||||||
|
use Singularity\HDK\Core\I18n\Enum\Languages;
|
||||||
use Singularity\HDK\Pay\Resource\Order;
|
use Singularity\HDK\Pay\Resource\Order;
|
||||||
use Singularity\HDK\Pay\Resource\StripeConfiguration;
|
use Singularity\HDK\Pay\Resource\StripeConfiguration;
|
||||||
use Singularity\HDK\Pay\Sdk\StripeRpc;
|
use Singularity\HDK\Pay\Sdk\StripeRpc;
|
||||||
@@ -21,9 +22,10 @@ test('能够正常创建 Stripe 订单', function () {
|
|||||||
$order = $service->createSession(
|
$order = $service->createSession(
|
||||||
money: Money::USD(51),
|
money: Money::USD(51),
|
||||||
uid: uniqid('NAT_'),
|
uid: uniqid('NAT_'),
|
||||||
goodsId: 3,
|
goodsId: 1,
|
||||||
goodsName: 'HDK-Pay Test',
|
goodsName: 'HDK-Pay Test',
|
||||||
goodsDetail: [],
|
goodsDetail: [],
|
||||||
|
locale: Languages::EN,
|
||||||
service: 1
|
service: 1
|
||||||
);
|
);
|
||||||
expect($order)->toBeInstanceOf(Order::class);
|
expect($order)->toBeInstanceOf(Order::class);
|
||||||
|
|||||||
Reference in New Issue
Block a user