mesilov / bitrix24-php-sdk

A powerful PHP library for the Bitrix24 REST API
MIT License
409 stars 161 forks source link

Add contracts for bitrix24 account for doctrine #311

Closed mesilov closed 10 months ago

mesilov commented 2 years ago

Add contract for bitix24 account dto

Bitrix24AccountInterface
{
    /**
     * @return \Symfony\Component\Uid\Uuid
     */
    public function getId(): Uuid
    /**
     * @return \Symfony\Component\Uid\Uuid
     */
    public function getContactPerson(): Uuid
    /**
     * @return string
     */
    public function getMemberId(): string
    /**
     * @return string
     */
    public function getDomainUrl(): string
    /**
     * @return Bitrix24AccountStatus
     */
    public function getStatus(): Bitrix24AccountStatus
    /**
     * @return string
     */
    public function getAccessToken(): string
    /**
     * @return string
     */
    public function getRefreshToken(): string
    /**
     * @return int
     */
    public function getExpires(): int
    /**
     * @param \Bitrix24\SDK\Core\Response\DTO\RenewedAccessToken $renewedAccessToken
     *
     * @return void
     */
    public function renewAccessToken(RenewedAccessToken $renewedAccessToken): void
    /**
     * @param string $newDomainUrl
     *
     * @return void
     */
    public function changeDomainUrl(string $newDomainUrl): void
    /**
     * Перевести аккаунт в статус Активный - установка финализирована
     *
     * @param string $applicationToken
     *
     * @return void
     */
    public function markAccountAsActive(string $applicationToken): void
    /**
     * Перевести аккаунт в статус Удалён
     *
     * @param string $applicationToken
     *
     * @return void
     */
    public function markAccountAsDeleted(string $applicationToken): void
}

Add namespace Bitrix24\SDK\Application\Contracts\Bitrix24Account add component Symfony\Component\Uid\Uuid

mesilov commented 2 years ago

account status

enum Bitrix24AccountStatus: string
{
    // начали процедуру установки, но ещё не финализировали, нет события «установка закончена»
    case new = 'new';
    // активный портал, есть подключение к Б24
    case active = 'active';
    // приложение с портала удалено
    case deleted = 'deleted';
    // потеряна связь с порталом или разработчик принудительно деактивировал аккаунт
    case deactivated = 'deactivated';
}