macellan / iys
Laravel的Iys库
v2.2.0
2024-03-12 21:29 UTC
Requires
- php: >=8.1
- ext-json: *
- guzzlehttp/guzzle: ^7.2|^7.0.1
- illuminate/http: ^8.0|^9.0|^10.0|^11.0
- illuminate/support: ^8.0|^9.0|^10.0|^11.0
Requires (Dev)
- mockery/mockery: ^1.4.4
- orchestra/testbench: 6.24|^7.1|^8.0|^9.0
- phpunit/phpunit: ^9.5.10|^10.0
- squizlabs/php_codesniffer: ^3.6
README
安装
您可以通过composer安装此包
composer require macellan/iys
设置IYS服务
将IYS登录信息添加到config/services.php
// config/services.php ... 'iys' => [ 'username' => env('IYS_USERNAME', ''), 'password' => env('IYS_PASSWORD', ''), 'iys_code' => env('IYS_CODE', ''), 'brand_code' => env('IYS_BRAND_CODE', ''), 'url' => env('IYS_URL', ''), ], ...
枚举类型
IYS同意源类型
enum ConsentSourceTypes: string { case PHYSICAL = 'HS_FIZIKSEL_ORTAM'; case WET_SIGNATURE = 'HS_ISLAK_IMZA'; case WEB = 'HS_WEB'; case CALL_CENTER = 'HS_CAGRI_MERKEZI'; case SOCIAL_MEDIA = 'HS_SOSYAL_MEDYA'; case EMAIL = 'HS_EPOSTA'; case MESSAGE = 'HS_MESAJ'; case MOBILE = 'HS_MOBIL'; case HS_EORTAM = 'HS_EORTAM'; case ACTIVITY = 'HS_ETKINLIK'; case HS_2015 = 'HS_2015'; case HS_ATM = 'HS_ATM'; case HS_DECISION = 'HS_KARAR'; }
IYS权限类型
enum PermissionTypes: string { case CALL = 'ARAMA'; case MESSAGE = 'MESAJ'; case EMAIL = 'EPOSTA'; }
IYS接收者类型
enum RecipientTypes: string { case INDIVIDUAL = 'BIREYSEL'; case TRADER = 'TACIR'; }
IYS源类型
enum SourceTypes: string { case HS = 'HS'; case IYS = 'IYS'; }
IYS状态类型
enum StatusTypes: string { case APPROVE = 'ONAY'; case REJECT = 'RET'; }
使用方法
注意:认证令牌为每个UserManager实例生成。过期时间为两小时。
使用本例中的用法,您可以提交单个发布。此方法与“权限”模型兼容
IysManager::make()->createPermissionDriver()->sendSingle( Permission::make() ->setConsentDate('2022-02-10 09:50:02') ->setSource(ConsentSourceTypes::MOBILE) ->setRecipient('example@.com') ->setRecipientType(RecipientTypes::INDIVIDUAL) ->setStatus(StatusTypes::APPROVE) ->setType(PermissionTypes::EMAIL) );
您可以通过填写权限列表模型来发送权限。权限列表模型是权限模型的数组。
$permissionList = PermissionList::make() ->addPermission($permission ->setConsentDate('2022-02-10 09:50:02') ->setRecipient('example1@.com') ->setStatus(StatusTypes::APPROVE) ->setType(PermissionTypes::EMAIL)) ->setSource(ConsentSourceTypes::MOBILE) ->setRecipientType(RecipientTypes::INDIVIDUAL); ->addPermission($permission ->setConsentDate('2022-02-10 09:50:03') ->setRecipient('example2@.com') ->setStatus(StatusTypes::REJECT) ->setType(PermissionTypes::MESSAGE)); ->setSource(ConsentSourceTypes::MOBILE) ->setRecipientType(RecipientTypes::INDIVIDUAL); IysManager::make()->createPermissionDriver()->sendMultiple($permissionList);
您可以通过请求ID获取发送的权限信息
IysManager::make()->createPermissionDriver()->getStatusByRequestId('request_id');
您可以通过IYS获取修改后的权限
IysManager::make()->createPermissionDriver()->getChanges();
您可以通过权限模型获取权限状态
IysManager::make()->createPermissionDriver()->getStatus( Permission::make() ->setConsentDate('2022-02-10 09:50:02') ->setSource(ConsentSourceTypes::MOBILE) ->setRecipient('example@.com') ->setRecipientType(RecipientTypes::INDIVIDUAL) ->setStatus(StatusTypes::APPROVE) ->setType(PermissionTypes::EMAIL) );
测试
composer test
许可
MIT许可(MIT)。请参阅许可文件以获取更多信息。