easyblue/easy-yousign

1.2.0 2022-03-08 15:53 UTC

This package is auto-updated.

Last update: 2024-09-08 21:22:56 UTC


README

Easyblue

easyblue/easy-yousign

easy-yousign 提供了一种简单的方式来使用 YouSign API。它是现代的、经过测试的,并且完全用 PHP 编写。

该项目由 easyblue.io 编写,easyblue.io 是一家法国的保险科技公司。查看我们的网站以了解我们如何在生产中使用此包。

Latest Version Software License PHP Version Coverage Status Total Downloads github issues github closed issues

安装

使用 Composer 将此包作为依赖项安装。

composer require easyblue/easy-yousign

用法

ProcedureFile 在基本模式下支持,但您可以提交拉取请求来改进这个库。

支持的功能

创建流程

use Easyblue\YouSign\Factory\Factory;
use Easyblue\YouSign\Model\File;
use Easyblue\YouSign\Model\FileObject;
use Easyblue\YouSign\Model\Member;
use Easyblue\YouSign\Model\Procedure;
use Easyblue\YouSign\Http\Client;

$ysApiKey = 'test';
$factory = new Factory($ysApiKey, Client::ENV_STAGING);

$member = (new Member())
    ->setFirstname('John')
    ->setLastname('Doe')
    ->setEmail('j.doe@domain.com')
    ->setPhone('+33611111111');

$file = (new File())
    ->setName('my_file.pdf')
    ->setContent('base64 content');
$file = $factory->file()->create();

$fileObject = (new FileObject())
    ->setFile($file)
    ->setPage(1)
    ->setPosition('230,499,464,589');
$member->addFileObject($fileObject);

$procedure = (new Procedure())->setName('My first procedure')
    ->setDescription('Awesome! Here is the description of my first procedure')
    ->addMember($member);
$procedure = $factory->procedure()->create($procedure);

获取流程

use Easyblue\YouSign\Factory\Factory;
use Easyblue\YouSign\Model\Procedure;
use Easyblue\YouSign\Http\Client;

$ysApiKey = 'test';
$factory = new Factory($ysApiKey, Client::ENV_STAGING);

/** Procedure $procedure **/
$procedure = $factory->procedure()->get('/procedures/9d1ede2b-5687-4440-bdc8-dd0bc64f668c');

下载文件

use Easyblue\YouSign\Factory\Factory;
use Easyblue\YouSign\Model\File;
use Easyblue\YouSign\Http\Client;

$ysApiKey = 'test';
$factory = new Factory($ysApiKey/*, Client::ENV_STAGING*/);

// Pdf content as binary file
$content = $factory->file()->download('/files/9d1ede2b-5687-4440-bdc8-dd0bc64f668c');

// Pdf content as base64
$content = $factory->file()->download('/files/9d1ede2b-5687-4440-bdc8-dd0bc64f668c', false);

框架

Symfony

贡献

欢迎贡献!在向此项目贡献之前,请熟悉 CONTRIBUTING.md

为了开发此项目,您需要 PHP 7.4 或更高版本,Composer 和 make。

在本地克隆此存储库后,执行以下命令

cd /path/to/repository
composer install

现在,您可以开始开发了!

编码标准

此项目遵循 PSR-12 编码标准的子集,由 PHP-CS-Fixer 强制执行。项目的 PHP_CodeSniffer 配置文件位于 .php_cs 中。

您可以使用以下命令使用 PHP-CS-Fixer 对整个代码库进行 linting

make php-cs-fixer

静态分析

此项目使用 PHPStanphpmdphpcpd 的组合来提供 PHP 代码的静态分析。这些配置文件分别位于 phpstan.neon.dist.phpmd.xml

您可以使用以下命令手动在整个代码库上运行静态分析

# Static analysis
make phpspan
make phpmd
make phpcpd

预提交

此项目使用 composer-git-hooks。它将尝试修复它能够修复的任何错误,并且如果存在任何无法修复的问题,它将拒绝提交。许多问题可以自动修复,并在预提交时进行修复。

首次使用时注册预提交

vendor/bin/cghooks add

项目结构

此项目使用 pds/skeleton 作为其基本文件夹结构和布局。

版权和许可

easyblue/easy-yousign 库的版权归 easyblue 所有,并根据 MIT 许可证(MIT)的使用条款许可使用。有关更多信息,请参阅 LICENSE