softc / evotor-certificates
提供对Evotor Certificates应用API的访问
v1.0.0
2023-02-10 10:49 UTC
Requires
- php: >=7.4
- laminas/laminas-hydrator: ^4.5
- psr/http-client-implementation: ^1.0
Requires (Dev)
- laminas/laminas-diactoros: ^2.17
- php-http/curl-client: ^2.2
- php-http/message: ^1.0
- php-http/mock-client: ^1.0
- phpstan/phpstan: ^1.5
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-08-28 12:38:03 UTC
README

API客户端应用"ДисконтКлуб Сертификаты"
用于使用"ДисконтКлуб Сертификаты"应用程序API的客户端,用于第三方系统。
报告错误 · 请求功能
关于项目
该库提供对"ДисконтКлуб Сертификаты"应用程序API的访问。
(返回顶部)
构建工具
(返回顶部)
入门指南
先决条件
根据https://docs.php-http.org/en/latest/httplug/users.html使用HTTPlug库。
安装
推荐使用Composer安装
$ composer require softc/evotor-certificates
(返回顶部)
使用方法
<?php require 'vendor/autoload.php'; use SoftC\Evotor\Certificates\Api\Domain\CertificateActivate; use SoftC\Evotor\Certificates\Api\Domain\CertificateCreate; use SoftC\Evotor\Certificates\Api\Domain\CertificatePay; use SoftC\Evotor\Certificates\Api\Entities\CertificateType; use SoftC\Evotor\Certificates\Api\Enums\EntityStatus; use SoftC\Evotor\Certificates\Api\Requests\CertificatesActivateRequest; use SoftC\Evotor\Certificates\Api\Requests\CertificatesCreateRequest; use SoftC\Evotor\Certificates\Api\Requests\CertificatesPayRequest; $token = 'api-token'; $client = new Client($token); // получить виды сертификатов $types = $client->SelectTypes(); // оставляем только активные виды сертификатов с указанным номиналом $types = array_filter($types, static fn(CertificateType $item) => $item->status === EntityStatus::ACTIVE && $item->value > 0); // используем первый вид $type = $types[0]; // создаем сертификат с произвольным номером $number = bin2hex(random_bytes(16)); $certs = $client->CreateCertificates(new CertificatesCreateRequest([ new CertificateCreate($number, $type->uuid) ])); // получаем ИД созданного сертификата $uuid = $certs[0]; // также можно найти сертификат по номеру // $cert = $client->GetCertificateByNumber($number); // активируем сертификат $client->ActivateCertificates(new CertificatesActivateRequest( bin2hex(random_bytes(18)), [ new CertificateActivate($uuid, $type->uuid) ] )); // гасим сертификат $client->PayCertificates(new CertificatesPayRequest( bin2hex(random_bytes(18)), [ new CertificatePay($uuid, $type->value ?? 0) ] ));
(返回顶部)
路线图
查看开放问题获取功能建议(和已知问题)的完整列表。
(返回顶部)
贡献
贡献是开源社区如此出色的学习、灵感和创新之地的原因。您所提供的任何贡献都将非常受到赞赏。
如果您有改进的建议,请分支仓库并创建一个pull请求。您也可以简单地创建一个带有"增强"标签的问题。别忘了给项目加星标!再次感谢!
- 分支项目
- 创建您的功能分支(
git checkout -b feature/AmazingFeature
) - 提交您的更改(
git commit -m 'Add some AmazingFeature'
) - 将更改推送到分支(
git push origin feature/AmazingFeature
) - 打开pull请求
(返回顶部)
许可
在Apache-2.0许可下分发。有关更多信息,请参阅LICENSE.txt
。
(返回顶部)
联系
项目链接:https://github.com/softc24/evotor-certificates-php
(返回顶部)