Appearance
Пользователи
Базовый класс
Для работы с пользователями предусмотрен базовый класс \Realweb\Api\Model\User\Client. Экземпляр класса может существовать только в единственном экземпляре ($_instance).
php
use Realweb\Api\Model\User;
$obUser = User\Client::getInstance();Класс \Realweb\Api\Model\User\Client имеет 2 встроенных метода для работы с сессией:
public function setSessionValue(string $strKey, mixed $mValue): self- установка значенияpublic function getSessionValue(string $strKey, mixed $mDefault = null): mixed- получение значения
Пользователь Bitrix
Для работы с пользователями bitrix предусмотрен класс \Realweb\Api\Model\User\User расширяющий \Realweb\Api\Model\User\Client. Класс имеет ряд встроенных методов:
public function getId()- возвращаетIDтекущего пользователяpublic function isAuthorized(): bool- проверка на авторизациюpublic function isAdmin(): bool- проверка на Администратораpublic function authorize(int $iId): bool- авторизация пользователя поIDpublic function logout(): void- выход пользователяpublic function getGroupsId(): array- получениеIDгрупп пользователяpublic function getCUser(): ?\CUser- получение экземпляра класса\CUserpublic function getEntity(): Entity- получение Orm сущности пользователя
Orm
База данных
Основной запрос для поиска пользователей в БД содержится в классе \Realweb\Api\Model\User\Database расширяющий стандартный. Принимает следующие параметры:
login-stringфильтр по логинуLOGINemail-stringфильтр поEMAILphone-stringфильтр по полямPERSONAL_PHONEилиPERSONAL_MOBILE
Также обладает встроенными методами-обертками:
public static function getByLogin(string $strEmail): ?Entity- получение записи по логинуpublic static function getByEmail(string $strEmail): ?Entity- получение записи по emailpublic static function getByPhone(string $strPhone): ?Entity- получение записи по номеру телефонаpublic static function getByUniqueParam(string $strParam): ?Entity- получение записи по уникальному значению. В качестве аргумента допустимо передать email, телефон или логин пользователя
Сущность пользователя
Сущность пользователя \Realweb\Api\Model\User\Entity расширяет стандартный класс \Realweb\Api\Model\Data\Entity и имеет встроенные методы:
public function getId(): ?int- получениеIDпользователяpublic function getFullName(): string- получение полного имени Фамилия Имя Отчество или логин, при отсутствииpublic function setPassword(string $strPassword): self- установка нового пароля. Пример реализации задачи по восстановлению пароляpublic function setGroups(array $arGroups): self- установка групп пользователяpublic function save(): bool- сохранение данных сущности
Группы пользователя
Для работы с группами пользователя предусмотрена Orm структура \Realweb\Api\Model\User\Group.
Запрос базы данных \Realweb\Api\Model\User\Group\Database по умолчанию может принимать следующие параметры:
filter- массив фильтрацииid-intфильтр поIDcode-stringфильтр по символьному кодуSTRING_IDname-stringфильтр по названиюNAME
ids-arrayфильтр поIDcodes-arrayфильтр по символьному кодуSTRING_ID