Personal information collector

Веб-программирование
3 просмотра
09.07.2024
1386×76156 КБ
2024-07-09_15-03.png
1295×73145 КБ
2024-07-09_15-03_1.png

Personal information collector обрабатывает http запросы и в зависимости от указонного эндпоинта выполняет определённые функции и возвращает некий результат.
Структура бд создаётся с помощью миграций после запуска, присутствуют дебаг- и инфо- логи, настроенна автоматическая генерация сваггер документации, важные константы хранятся в конфгурационном файле go.env.

Краткое опиасние API:
POST /add добавляет пользователя с введёнными паспортыми данными в бд, а позже делает запрос на роад "/info" удалённого сервиса с передачей паспортных данных и при наличии результата сохраняет обогощённую информацию в бд.

PUT /change изменяет данные на указанные в записи пользователя с указанными паспортыми данными.
DELETE /delete удаляет запись пользователя с указанными паспортыми данными.
GET info/person возвращает информацию о пользователе с указанными паспортными данными.
GET info/people возвращает информацию о группе пользователей, данные которых частично или польностью совпадают с указанными в запросе данными, присутствует пагинация и сортировка по столбцам.
POST /start_task создаёт запись задачи со значением текущего времени в столбце "Started" для пользователя с указанными паспортными данными.
PUT /finish_task изменяет запись задачи со значением текущего времени в столбце "Finished", а так же добавляет в запись затраченное количество часов и минут, для пользователя с указанными паспортными данными.

GET info/person/tasks возвращает информацию о законченных задачах пользователя с указанными паспортными данными, присутствует пагинация сортировка по убыванию затраченного времени.

Подробнее об API в .yaml файле: https://github.com/UmerovAzizServerovich/personal_information/blob/master/docs/swagger.yaml

Ссылка на исходники в гитхабе: https://github.com/UmerovAzizServerovich/personal_information