ecomailcz / flexibee-client
ECOMAIL.CZ - Simple client for communication with FlexiBee API
Installs: 394 472
Dependents: 0
Suggesters: 0
Security: 0
Stars: 10
Watchers: 3
Forks: 3
Open Issues: 3
Requires
- php: ^8.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- ext-simplexml: *
- ecomailcz/purl: ^2.0
- league/flysystem: ^3.0
- rakit/validation: ^1.1
- slevomat/consistence: ^2.1
Requires (Dev)
- brianium/paratest: ^6.0
- ergebnis/composer-normalize: ^2.5
- fzaninotto/faker: ^1.7
- mockery/mockery: ^1.3
- phing/phing: ^2.16
- php-parallel-lint/php-parallel-lint: ^1.2
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ^1.0
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpstan/phpstan-strict-rules: ^1.0
- phpunit/phpunit: ^9.0
- slevomat/coding-standard: ^6.0 || ^7.0
This package is auto-updated.
Last update: 2024-09-29 13:23:43 UTC
README
Jednoduchý cURL client, který se stará o správné složení requestu do systému Flexibee a následné vrácení výsledků.
Sponsored by
Instalace přes composer
composer require ecomailcz/flexibee-client
Implementace
$client = new Client(
$accountUrl,
$companyCode,
$restApiUserName,
$restApiPassword,
$evidenceName,
$disableSelfSignedCertificate,
$authSessionId,
);
$disableSelfSignedCertificate - Vypnutí self signed certifikátu
$authSessionId - Hodnota authentikačního id pro Flexibee
Vygenerování autorizačního tokenu
$client = new Client('https://demo.flexibee.eu', 'demo', 'winstrom', 'winstrom', 'adresar', false, null);
$tokens = $client->getAuthAndRefreshToken();
Informace o firmách či firmě
$client = new Client('https://demo.flexibee.eu', 'demo', 'winstrom', 'winstrom', 'adresar', false, null);
$companies = $client->getCompanies();
$company = $client->getCompany();
Vytvoření či editace záznamu
$client = new Client('https://demo.flexibee.eu', 'demo', 'winstrom', 'winstrom', 'adresar', false, null);
$evidenceData['kod'] = 'prvnizaznam'
$evidenceData['nazev'] = 'První kontaktní adresa'
$evidenceItemId = $client->save($evidenceData, null, $dryRun, $uriParameters);
Pokud vše proběhne v pořádku, vratí se třída \EcomailFlexibee\Http\Response\Response:class
s daty ze systému Flexibee. Nastane-li chyba, vyhodí se výjimka
EcomailFlexibeeRequestFail::class
. Pro editaci záznamu stačí vyplnit druhý parametr $id
.
Vrácení záznamu dle parametrů
Nalezení záznamu dle id s vyhozením výjimky, pokud záznam neexistuje
$evidenceItem = $client->getById($evidenceItemId, $uriParameters);
$evidenceItem = $client->getByCode($evidenceItemCode, $uriParameters);
Vrácení prázného záznamu, pokud neexistuje ve Flexibee (bez vyhození výjimky)
$evidenceItem = $client->findById($evidenceItemId, $uriParameters);
$evidenceItem = $client->findByCode($evidenceItemCode, $uriParameters);
$evidenceItem = $client->findLastInEvidence($evidenceItemCode, $uriParameters);
Sumace
$client->sumInEvidence();
Smazání záznamu
$client->deleteById($id, $dryRun);
$client->deleteByCode($code, $dryRun);
Generování PDF
Systém Flexibee umožňuje vrátit vygenerované faktury.
$client->getPdfById($id, $uriParameters);
Vyhledávání v evidenci
Systém Flexibee umožňuje vyhledávat nad evidencí. (https://www.flexibee.eu/api/dokumentace/ref/filters/)
$client->searchInEvidence($query, $uriParameters);
Vyhledávání v evidenci se stránkováním
Systém Flexibee umožňuje vyhledávat nad evidencí. (https://www.flexibee.eu/api/dokumentace/ref/filters/)
K uri parametrům je automaticky přiřazený parameter 'add-row-count' => 'true'
.
Vrací array s daty a celkovým počtem záznámů.
$client->searchInEvidencePaginated($query, $uriParameters);
Seznam položek v evidenci
Seznam všech dostupných prvků pro konkrétní evidenci
$client->getPropertiesForEvidence();
Vytváření vlastních requestů
Client nabízí možnost vytváření vlastních requestů. Stačí zavolat:
$responseData = $client->callRequest(Method $httpMethod, string $section, array $queryParameters);
Následně máte k dispozici data vrácená z Flexibee. Chyby jsou ošetřeny vyhozením kontrétních výjimek.