API сервера ПО Школьный фельдшер — различия между версиями

Материал из ИбисоПедии
Перейти к: навигация, поиск
(Аутентификация и авторизация)
 
(не показано 7 промежуточных версий 1 участника)
Строка 1: Строка 1:
 +
 +
== Учащиеся ==
 +
 +
* GET ../api/people
 +
 +
 +
Пример: http://192.168.1.113/school/api/people?id=0f65a2b0-6388-11e6-99ba-00259022d366
 +
 +
*  Получить список пиплов, отфильтрованных по параметрам GET http://localhost:57763/api/people
 +
** schoolId - ид школы
 +
** surname - подстрока, содержащаяся в фамилии
 +
** name - подстрока, содержащаяся в имени
 +
** patron - подстрока, содержащаяся в отчестве
 +
** sex - ид половой принадлежности
 +
** birthYear - год рождения
 +
** dtFrom - дата начала периода по полю dt ("yyyy-MM-dd HH:mm:ss")
 +
** dtTo - дата конца периода по полю dt ("yyyy-MM-dd HH:mm:ss")
 +
 +
== Вакцинация ==
 +
 +
* GET ../api/vaccination/{id} - получить вакцинацию по ид
 +
* GET ../api/people/{peopleId}/vaccinations - получить список вакцинаций по пиплу
 +
* GET ../api/school/{schoolId}/vaccinations - получить список вакцинаций по школе
 +
* POST ../api/vaccination/ - добавить/обновить вакцинацию
 +
* DELETE ../api/vaccination/{id} - удалить вакцинацию вместе с имеющимися турами
 +
* DELETE ../api/people/{peopleId}/vaccinations - удалить по пиплу все вакцинации с турами
 +
* GET ../api/vac_tour/{id} - получить тур по ид
 +
* GET ../api/vaccination/{vaccinationId}/vac_tours - получить список туров по вакцинации
 +
* POST ../api/vac_tour - добавить/обновить тур
 +
* DELETE ../api/vac_tour/{id} - удалить тур по ид
 +
* DELETE ../api/vaccination/{vaccinationId}/vac_tours - удалить все туры по вакцинации
 +
 +
=== Пробы ===
 +
 +
* GET ../api/vac_people_test/{id} - получить пробу по ид
 +
* GET ../api/people/{peopleId}/vac_people_tests - список проб по пиплу
 +
* GET ../api/school/{schoolId}/vac_people_tests - список проб по школе
 +
* POST ../api/vac_people_test/ - добавить/обновить пробу
 +
* DELETE ../api/vac_people_test/{id} - удалить пробу по ид
 +
* DELETE ../api/people/{peopleId}/vac_people_tests - удалить все пробы пипла
 +
 +
=== Перенесенные заболевания ===
 +
* GET ../api/vac_people_infection/{id} - получить перенесенное заболевание по ид
 +
* GET ../api/people/{peopleId}/vac_people_infections - список перенесенных заболеваний по пиплу
 +
* GET ../api/school/{schoolId}/vac_people_infections - список перенесенных заболеваний по школе
 +
* POST ../api/vac_people_infection/ - добавить/обновить перенесенное заболевание
 +
* DELETE ../api/vac_people_infection/{id} - удалить перенесенное заболевание по ид
 +
* DELETE ../api/people/{peopleId}/vac_people_infections - удалить все перенесенные заболевания пипла
 +
 +
=== Планирование ===
 +
* GET ../api/vac_plan/{id} - получить запись таблицы vac_plan по id
 +
* GET ../api/vaccination/{vaccinationId}/vac_plans - получить все записи таблицы vac_plan по vaccinationId
 +
* GET ../api/people/{peopleId}/vac_plans - получить все записи таблицы vac_plan по peopleId
 +
* POST ../api/vac_plan - добавить/обновить запись в таблице vac_plan
 +
* DELETE ../api/vac_plan/{id} - удалить запись таблицы vac_plan по id
 +
* DELETE ../api/vaccination/{vaccinationId}/vac_plans - удалить все записи таблицы vac_plan по vaccinationId
 +
* DELETE ../api/people/{peopleId}/vac_plans - удалить все записи таблицы vac_plan по peopleId
 +
 +
=== Мед отводы ===
 +
* GET ../api/vac_exemption/{id} - получить отвод по ид
 +
* GET ../api/people/{peopleId}/vac_exemptions - список отводов по пиплу
 +
* GET ../api/school/{schoolId}/vac_exemptions - список отводов по школе
 +
* POST ../api/vac_exemption/ - добавить/обновить отвод
 +
* DELETE ../api/vac_exemption/{id} - удалить отвод по ид
 +
* DELETE ../api/people/{peopleId}/vac_exemptions - удалить все отводы пипла
  
 
== Справочники ==
 
== Справочники ==
  
 +
* GET ../api/lpu
 +
 +
=== Школы ===
 +
* GET ../api/school?id=db4a067c-d5ab-4d0b-aa89-7da090b2fa16
 +
* POST ../api/school
 +
=== НСИ ===
 
* GET ../api/unit/{id} - получить запись таблицы Unit по id
 
* GET ../api/unit/{id} - получить запись таблицы Unit по id
 
* GET ../api/unit - получить все записи таблицы Unit
 
* GET ../api/unit - получить все записи таблицы Unit
Строка 35: Строка 106:
 
* DELETE ../api/prof/{profId}/prof_inspections - удалить все записи таблицы prof_inspection по profId
 
* DELETE ../api/prof/{profId}/prof_inspections - удалить все записи таблицы prof_inspection по profId
  
== Вакцинация ==
+
== Система ==
* GET ../api/vac_plan/{id} - получить запись таблицы vac_plan по id
+
* GET ../api/serverinfo
* GET ../api/vaccination/{vaccinationId}/vac_plans - получить все записи таблицы vac_plan по vaccinationId
 
* GET ../api/people/{peopleId}/vac_plans - получить все записи таблицы vac_plan по peopleId
 
* POST ../api/vac_plan - добавить/обновить запись в таблице vac_plan
 
* DELETE ../api/vac_plan/{id} - удалить запись таблицы vac_plan по id
 
* DELETE ../api/vaccination/{vaccinationId}/vac_plans - удалить все записи таблицы vac_plan по vaccinationId
 
* DELETE ../api/people/{peopleId}/vac_plans - удалить все записи таблицы vac_plan по peopleId
 
  
 
[[Категория:Школьный фельдшер]]
 
[[Категория:Школьный фельдшер]]
 +
 +
== Аутентификация и авторизация ==
 +
Процесс основан на токенах.
 +
 +
Например, запрос на получение токена:
 +
 +
 +
'''POST http://192.168.1.113/school2/token'''
 +
 +
''Заголовки:''
 +
 +
'''Content-Type: application/x-www-form-urlencoded'''
 +
 +
''Тело запроса''
 +
 +
'''grant_type=password&UserName=admin&password=sys1OKAN'''
 +
 +
 +
 +
При успешном ответе запроса возвращается access_token, который действителен в течение некоторого времени(может меняться).
 +
 +
  "access_token": "1KWQgSIrnB5yyPq84jsjYcHpJHjZLl8S4eDhSIx8fpKnhnd8PVNpC2LQWICt9sSkxVqSRarwCzp9GTKz6dlvmKg8U12V_vL9ooYSD04rYeemoxd3Iy8tMPYJXDvHrie-PZCLxDgdika01AnGluS1J7_LKi9Z0qBCb4aQXvwKu2KsdGitGvb-zQqPVLBAWAcoSQiBDs1OBnB0nr-tUqy-xA",
 +
  "token_type": "bearer",
 +
  "expires_in": 86399
 +
 +
Таким образом, далее аутентификация и авторизация осуществляется посредством полученного access_token до тех пор, пока на сервере не истечен время его действия.
 +
Чтобы получить данные, необходимо в заголовок http-запроса добавить
 +
 +
'''Authorization: Bearer ''<your_access_token>'''''
 +
 +
 +
 +
Например,
 +
 +
'''GET http://192.168.1.113/school2/api/lpu'''
 +
 +
''Заголовки:''
 +
 +
'''Authorization: Bearer 1KWQgSIrnB5yyPq84jsjYcHpJHjZLl8S4eDhSIx8fpKnhnd8PVNpC2LQWICt9sSkxVqSRarwCzp9GTKz6dlvmKg8U12V_vL9ooYSD04rYeemoxd3Iy8tMPYJXDvHrie-PZCLxDgdika01AnGluS1J7_LKi9Z0qBCb4aQXvwKu2KsdGitGvb-zQqPVLBAWAcoSQiBDs1OBnB0nr-tUqy-xA'''
 +
 +
 +
 +
Если access_token действителен, то будут возвращены данные

Текущая версия на 14:13, 14 сентября 2016

Учащиеся

  • GET ../api/people


Пример: http://192.168.1.113/school/api/people?id=0f65a2b0-6388-11e6-99ba-00259022d366

  • Получить список пиплов, отфильтрованных по параметрам GET http://localhost:57763/api/people
    • schoolId - ид школы
    • surname - подстрока, содержащаяся в фамилии
    • name - подстрока, содержащаяся в имени
    • patron - подстрока, содержащаяся в отчестве
    • sex - ид половой принадлежности
    • birthYear - год рождения
    • dtFrom - дата начала периода по полю dt ("yyyy-MM-dd HH:mm:ss")
    • dtTo - дата конца периода по полю dt ("yyyy-MM-dd HH:mm:ss")

Вакцинация

  • GET ../api/vaccination/{id} - получить вакцинацию по ид
  • GET ../api/people/{peopleId}/vaccinations - получить список вакцинаций по пиплу
  • GET ../api/school/{schoolId}/vaccinations - получить список вакцинаций по школе
  • POST ../api/vaccination/ - добавить/обновить вакцинацию
  • DELETE ../api/vaccination/{id} - удалить вакцинацию вместе с имеющимися турами
  • DELETE ../api/people/{peopleId}/vaccinations - удалить по пиплу все вакцинации с турами
  • GET ../api/vac_tour/{id} - получить тур по ид
  • GET ../api/vaccination/{vaccinationId}/vac_tours - получить список туров по вакцинации
  • POST ../api/vac_tour - добавить/обновить тур
  • DELETE ../api/vac_tour/{id} - удалить тур по ид
  • DELETE ../api/vaccination/{vaccinationId}/vac_tours - удалить все туры по вакцинации

Пробы

  • GET ../api/vac_people_test/{id} - получить пробу по ид
  • GET ../api/people/{peopleId}/vac_people_tests - список проб по пиплу
  • GET ../api/school/{schoolId}/vac_people_tests - список проб по школе
  • POST ../api/vac_people_test/ - добавить/обновить пробу
  • DELETE ../api/vac_people_test/{id} - удалить пробу по ид
  • DELETE ../api/people/{peopleId}/vac_people_tests - удалить все пробы пипла

Перенесенные заболевания

  • GET ../api/vac_people_infection/{id} - получить перенесенное заболевание по ид
  • GET ../api/people/{peopleId}/vac_people_infections - список перенесенных заболеваний по пиплу
  • GET ../api/school/{schoolId}/vac_people_infections - список перенесенных заболеваний по школе
  • POST ../api/vac_people_infection/ - добавить/обновить перенесенное заболевание
  • DELETE ../api/vac_people_infection/{id} - удалить перенесенное заболевание по ид
  • DELETE ../api/people/{peopleId}/vac_people_infections - удалить все перенесенные заболевания пипла

Планирование

  • GET ../api/vac_plan/{id} - получить запись таблицы vac_plan по id
  • GET ../api/vaccination/{vaccinationId}/vac_plans - получить все записи таблицы vac_plan по vaccinationId
  • GET ../api/people/{peopleId}/vac_plans - получить все записи таблицы vac_plan по peopleId
  • POST ../api/vac_plan - добавить/обновить запись в таблице vac_plan
  • DELETE ../api/vac_plan/{id} - удалить запись таблицы vac_plan по id
  • DELETE ../api/vaccination/{vaccinationId}/vac_plans - удалить все записи таблицы vac_plan по vaccinationId
  • DELETE ../api/people/{peopleId}/vac_plans - удалить все записи таблицы vac_plan по peopleId

Мед отводы

  • GET ../api/vac_exemption/{id} - получить отвод по ид
  • GET ../api/people/{peopleId}/vac_exemptions - список отводов по пиплу
  • GET ../api/school/{schoolId}/vac_exemptions - список отводов по школе
  • POST ../api/vac_exemption/ - добавить/обновить отвод
  • DELETE ../api/vac_exemption/{id} - удалить отвод по ид
  • DELETE ../api/people/{peopleId}/vac_exemptions - удалить все отводы пипла

Справочники

  • GET ../api/lpu

Школы

  • GET ../api/school?id=db4a067c-d5ab-4d0b-aa89-7da090b2fa16
  • POST ../api/school

НСИ

  • GET ../api/unit/{id} - получить запись таблицы Unit по id
  • GET ../api/unit - получить все записи таблицы Unit
  • GET ../api/health_group/{id} - получить запись таблицы health_group по id
  • GET ../api/health_group - получить все записи таблицы health_group
  • GET ../api/spec/{id} - получить запись таблицы spec по id
  • GET ../api/spec - получить все записи таблицы spec
  • GET ../api/physical_group/{id} - получить запись таблицы physical_group по id
  • GET ../api/physical_group - получить все записи таблицы physical_group
  • GET ../api/education/{id} - получить запись таблицы education по id
  • GET ../api/education - получить все записи таблицы education
  • GET ../api/vac_age_group/{id} - получить запись таблицы vac_age_group по id
  • GET ../api/vac_age_group - получить все записи таблицы vac_age_group

Антропометрия

  • GET ../api/anthropometry/{id} - получить запись таблицы anthropometry по id
  • GET ../api/people/{peopleId}/anthropometries - получить все записи таблицы anthropometry по peopleId
  • POST ../api/anthropometry - добавить/обновить запись в таблице anthropometry
  • DELETE ../api/anthropometry/{id} - удалить запись таблицы anthropometry по id
  • DELETE ../api/people/{peopleId}/anthropometries - удалить все записи таблицы anthropometry по peopleId

Профосмотры

  • GET ../api/prof/{id} - получить запись таблицы prof по id
  • GET ../api/people/{peopleId}/profs - получить все записи таблицы prof по peopleId
  • POST ../api/prof - добавить/обновить запись в таблице prof
  • DELETE ../api/prof/{id} - удалить запись таблицы prof по id(вместе со свзяанными записями из таблицы prof_inspection)
  • DELETE ../api/people/{peopleId}/anthropometries - удалить все записи таблицы prof по peopleId(вместе со свзяанными записями из таблицы prof_inspection)
  • GET ../api/prof_inspection/{id} - получить запись таблицы prof_inspection по id
  • GET ../api/prof/{profId}/prof_inspections - получить все записи таблицы prof_inspection по profId
  • POST ../api/prof_inspection - добавить/обновить запись в таблице prof_inspection
  • DELETE ../api/prof_inspection/{id} - удалить запись таблицы prof_inspection по id
  • DELETE ../api/prof/{profId}/prof_inspections - удалить все записи таблицы prof_inspection по profId

Система

  • GET ../api/serverinfo

Аутентификация и авторизация

Процесс основан на токенах.

Например, запрос на получение токена:


POST http://192.168.1.113/school2/token

Заголовки:

Content-Type: application/x-www-form-urlencoded

Тело запроса

grant_type=password&UserName=admin&password=sys1OKAN


При успешном ответе запроса возвращается access_token, который действителен в течение некоторого времени(может меняться).

 "access_token": "1KWQgSIrnB5yyPq84jsjYcHpJHjZLl8S4eDhSIx8fpKnhnd8PVNpC2LQWICt9sSkxVqSRarwCzp9GTKz6dlvmKg8U12V_vL9ooYSD04rYeemoxd3Iy8tMPYJXDvHrie-PZCLxDgdika01AnGluS1J7_LKi9Z0qBCb4aQXvwKu2KsdGitGvb-zQqPVLBAWAcoSQiBDs1OBnB0nr-tUqy-xA",
 "token_type": "bearer",
 "expires_in": 86399

Таким образом, далее аутентификация и авторизация осуществляется посредством полученного access_token до тех пор, пока на сервере не истечен время его действия. Чтобы получить данные, необходимо в заголовок http-запроса добавить

Authorization: Bearer <your_access_token>


Например,

GET http://192.168.1.113/school2/api/lpu

Заголовки:

Authorization: Bearer 1KWQgSIrnB5yyPq84jsjYcHpJHjZLl8S4eDhSIx8fpKnhnd8PVNpC2LQWICt9sSkxVqSRarwCzp9GTKz6dlvmKg8U12V_vL9ooYSD04rYeemoxd3Iy8tMPYJXDvHrie-PZCLxDgdika01AnGluS1J7_LKi9Z0qBCb4aQXvwKu2KsdGitGvb-zQqPVLBAWAcoSQiBDs1OBnB0nr-tUqy-xA


Если access_token действителен, то будут возвращены данные