Skip to content

Latest commit

 

History

History

users

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

Сервис "Работа с пользователями"

Задание

Необходимо создать сервис для хранения информации о пользователях (имя, фамилия, пол, дата рождения)

Для хранения данных использовать PostgreSQL. Сервис должен предоставлять API, работающее поверх HTTP в формате JSON.

Требования

  • Язык программирования backend: Go
  • Язык программирования frontend: TypeScript (Angular)
  • Финальную версию выложить на github.com
  • 4 метода: создание (create), получение (get), изменение (update), удаление (delete),
  • Настройки подключение к БД должны задавать через файл toml, yaml, json и доставаться от туда приложением
  • В репозитории должен быть файл с SQL запросом для создания таблицы
  • Простая инструкция для запуска в формате markdown в файле README.md
  • Документация к API. Использовать Swagger.
  • Если есть сомнения по деталям — решение принять самостоятельно, но в своём README.md рекомендуем выписать вопросы и принятые решения по ним.

Backend

Метод получения данных пользователей (create)

  1. Должен возвращать поля: имя, фамилия, пол, дата рождения, возраст (а БД не хранится, формируется на основе Даты Рождения)
  2. Возможность фильтрации:
    • по параметру "пол" (например, только женщины)
    • по возрасту (например, старше 20, но младше 35)
  3. Сортировка
    • только по возрасту (реализация на уровне кода через функцию (не на уровне БД))

Метод добавления пользователя

  1. Принимает все вышеперечисленные поля
  2. Возвращает данные созданного пользователя

Метод обновления данных

  1. Принимает id пользователя и все вышеперечисленные поля
  2. Должен вернуть обновленные данные пользователя

Метод удаления пользователя

  1. Принимает идентификатор пользователя
  2. Возвращает статус

Frontend

  1. Реализовать на свое усмотрение.
  2. Важно, чтобы все методы API со всеми параметрами можно было вызывать в интерфейсе

Усложнения

  • Unit Tests: написать несколько