Skip to content

About

Трекер задач для сотрудников

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

23 Commits

Folders and files

Repository files navigation

Task Tracker


Установка зависимостей:

Установите зависимости с помощью команды pip3 install -r requirenets.txt


Запуск проекта:

Запуск Django проекта через Run - "название проекта" или командой python manage.py runserver


Описание:

Реализовать трекер задач для сотрудников. Разработка API-приложения, которая позволяет отслеживать задачи и сотрудников


Технологии:

  • Python
  • Django
  • Django DRF
  • PostgreSQL
  • JWT
  • Swagger
  • drf-yasg

Функционал:

  1. Для взятия задачи статус задачи должен быть "n"(new) localhost:8000/tasks/take/<id задачи> Предварительно в аутентификации должен быть указан токен авторизированного пользователя
  2. Для закрытия задачи: localhost:8000/tasks/take/<id задачи> Предварительно в аутентификации должен быть указан токен авторизированного пользователя
  3. Загруженные пользователи localhost:8000/users/ Список пользователей отсортирован по количеству задач
  4. Важные задачи: localhost:8000/tasks/important
  5. Для заполнения БД можно использовать кастомную команду python3 manage.py add_data. Она генерирует случайные задачи и пользователей. Так же создает администратора (admin@admin.ru)

Реализация:

Модели

User:

  • фамилия;
  • имя;
  • отчество;
  • email*;
  • пароль*;
  • телефон;
  • должность;
  • город;
  • аватарка.

Task:

  • название*;
  • описание*;
  • дата создания;
  • дата изменения;
  • исполнитель;
  • создатель;
  • дедлайн*;
  • статус.

* - обязательные поля


Задание

Необходимо реализовать серверное приложение для работы с базой данных. Требования к базе данных:

1) БД реляционная (желательно Postgres)

2) БД представляет собой трекер задач и содержит следующие таблицы:

  •  таблица сотрудников (ФИО, должность, телефон, город, аватар, почта);

  •  таблица задач (наименование, ссылка на родительскую задачу, если есть зависимость, исполнитель, срок, статус, создатель, дата создания, дата изменения).

Реализовать на Python REST API со следующими эндпоинтами:

  •  CRUD для сотрудников и задач

  •  "Занятые сотрудники": Запрашивает из БД список сотрудников и их задачи, отсортированный по количеству активных задач.

  •  "Важные задачи":

  • 1) запрашивает из БД задачи не взятые в работу, и от которых

    зависят другие задачи, взятые в работу.

  • 2) реализует поиск по сотрудникам, которые могут взять такие

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

    3) возвращает Список объектов [{Важная задача, Срок, [ФИО сотрудника]}].

About

Трекер задач для сотрудников

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages