client.py 652 B

123456789101112131415161718192021
  1. from typing import cast
  2. from alipay.aop.api.DefaultAlipayClient import DefaultAlipayClient
  3. from app.core.alipay.config import get_alipay_config
  4. from loguru import logger
  5. class AlipayClient:
  6. """支付宝客户端工具类"""
  7. _client: DefaultAlipayClient | None = None
  8. @classmethod
  9. def get_client(cls) -> DefaultAlipayClient:
  10. """获取支付宝客户端实例"""
  11. if cls._client is None:
  12. cls._client = DefaultAlipayClient(
  13. alipay_client_config=get_alipay_config().to_alipay_client_config(),
  14. logger=logger,
  15. )
  16. return cast(DefaultAlipayClient, cls._client)