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

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

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

Модель 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": "email1@mail.ru",
                    "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": "email47@mail.ru",
               "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": "email48@mail.ru",
               "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": "email3@mail.ru",
               "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"
               }
          }
     }
}
               



👆 На этом пока всё