Доступ к пользователям



Структура моделей, назначение полей

Модель User — пользователи программы

Модель User — представляет пользователя программы vetmanager

Разрешены запросы — просмотр данных записи, просмотр списка записей, обновление данных записи.

* @property integer $id  // ID
* @property string $last_name // Фамилия
* @property string $first_name // Имя
* @property string $middle_name // Очество 
* @property string $login // Логин
* @property string $passwd // Зашифрованный пароль
* @property string $position_id // Должность
* @property string $email // Почта
* @property string $phone // Домашний телефо
* @property string $cell_phone // Мобильный телефон
* @property string $address // Адрес
* @property integer $role_id // Роль
* @property integer $is_active // Активный
* @property integer $calc_percents // Участвует ли врач в продаже товаров
* @property string $nickname // Никнейм, короткое имя выводимое в комбо
* @property string $last_visit // Дата последнего визита
* @property string $youtrack_login // не используется
* @property string $youtrack_password // не используется
* @property string $last_change_pwd_date // Дата смены пароля
* @property string $user_inn // Идентификационный номер налогоплательщика

Пример запроса — получение списка пользователей без ограниченного доступа к программе

curl --location -g --request GET 'http://{DOMAIN NAME}/rest/api/User?filter=[{"property":"is_limited","value":0,"operator":"="}]' \
--header 'Content-Type: application/json' \
--header 'X-REST-API-KEY: {REST API KEY}'

 


▶ Ответ сервера
{
    "success": true,
    "message": "Records Retrieved Successfully",
    "data": {
        "totalCount": "45",
        "user": [
            {
                "id": "1",
                "last_name": "admin",
                "first_name": "",
                "middle_name": "",
                "login": "admin",
                "passwd": "9205814c8bc98857f5e07f3bae30ad68",
                "position_id": "8",
                "email": "[email protected]",
                "phone": "00000000000",
                "cell_phone": "0000000000",
                "address": "Address 1",
                "role_id": "7",
                "is_active": "1",
                "calc_percents": "1",
                "nickname": "admin",
                "youtrack_login": "",
                "youtrack_password": "",
                "last_change_pwd_date": "0000-00-00",
                "is_limited": "0",
                "carrotquest_id": "two:1",
                "sip_number": "",
                "user_inn": "",
                "position": {
                    "id": "8",
                    "title": "администратор",
                    "admission_length": "00:30:00"
                },
                "role": {
                    "id": "7",
                    "name": "Админы",
                    "super": "1"
                }
            },            
            {
                "id": "47",
                "last_name": "Чечель",
                "first_name": "Ирина",
                "middle_name": "Викторовна",
                "login": "irina",
                "passwd": "9205814c8bc98857f5e07f3bae30ad68",
                "position_id": "14",
                "email": "[email protected]",
                "phone": "00000000000",
                "cell_phone": "0000000000",
                "address": "Address 47",
                "role_id": "2",
                "is_active": "1",
                "calc_percents": "1",
                "nickname": "Ирина",
                "youtrack_login": "",
                "youtrack_password": "",
                "last_change_pwd_date": "0000-00-00",
                "is_limited": "0",
                "carrotquest_id": null,
                "sip_number": "",
                "user_inn": "",
                "position": {
                    "id": "14",
                    "title": "Врач",
                    "admission_length": "00:30:00"
                },
                "role": {
                    "id": "2",
                    "name": "Врач",
                    "super": "0"
                }
            },
            ***************************
            {
                "id": "48",
                "last_name": "Литвиненко",
                "first_name": "Ирина",
                "middle_name": "Львовна",
                "login": "irina2",
                "passwd": "9205814c8bc98857f5e07f3bae30ad68",
                "position_id": "14",
                "email": "[email protected]",
                "phone": "00000000000",
                "cell_phone": "0000000000",
                "address": "Address 48",
                "role_id": "2",
                "is_active": "1",
                "calc_percents": "1",
                "nickname": "Литвиненко",
                "youtrack_login": "",
                "youtrack_password": "",
                "last_change_pwd_date": "0000-00-00",
                "is_limited": "0",
                "carrotquest_id": null,
                "sip_number": "",
                "user_inn": "",
                "position": {
                    "id": "14",
                    "title": "Врач",
                    "admission_length": "00:30:00"
                },
                "role": {
                    "id": "2",
                    "name": "Врач",
                    "super": "0"
                }
            }
        ]
    }
}

 

 Список обязательных полей

обновление пользователя:
Обязательное поле last_name
curl --location --request PUT 'http://{DOMAIN NAME}/rest/api/User/3' \
--header 'Content-Type: application/json' \
--header 'X-REST-API-KEY: {REST API KEY}'
--data-raw '{
    "login": "admin4",
    "last_name": "Земляникина"
}'

▶ Ответ сервера
{
    "success": true,
    "message": "Record Updated",
    "data": {
        "totalCount": 1,
        "user": {
            "id": "3",
            "last_name": "Земляникина",
            "first_name": "User2",
            "middle_name": "User2",
            "login": "admin4",
            "passwd": "9205814c8bc98857f5e07f3bae30ad68",
            "position_id": "14",
            "email": "[email protected]",
            "phone": "00000000000",
            "cell_phone": "0000000000",
            "address": "Address 3",
            "role_id": "2",
            "is_active": "1",
            "calc_percents": "1",
            "nickname": "Альбина",
            "youtrack_login": "",
            "youtrack_password": "",
            "last_change_pwd_date": "0000-00-00",
            "is_limited": "0",
            "carrotquest_id": null,
            "sip_number": "",
            "user_inn": "",
            "position": {
                "id": "14",
                "title": "Врач",
                "admission_length": "00:30:00"
            },
            "role": {
                "id": "2",
                "name": "Врач",
                "super": "0"
            }
        }
    }
}