Задачи - oyboy/Jora GitHub Wiki
Модель Task
представляет собой задачу, связанную с проектом. Задача содержит информацию о ее имени, описании, приоритете, статусе и других атрибутах.
-
id: Long
- Уникальный идентификатор задачи (генерируется автоматически). -
name: String
- Название задачи (обязательное поле, максимум 50 символов). -
description: String
- Описание задачи (максимум 255 символов, необязательное поле). -
priority: Priority
- Приоритет задачи (по умолчаниюLOW
). -
status: Status
- Статус задачи (по умолчаниюCREATED
). -
createdAt: LocalDateTime
- Дата и время создания задачи. -
deadline: LocalDateTime
- Дата и время завершения задачи (необязательное поле). -
project: Project
- Проект, к которому относится задача. -
userTasks: Set<UserTask>
- Связь с пользователями, выполняющими задачу. -
tags: List<Tag>
- Список тегов, связанных с задачей.
-
convertToCalendarTask(): CalendarTaskDTO
- Преобразует задачу в объектCalendarTaskDTO
. -
toString(): String
- Возвращает строковое представление задачи.
Контроллер TaskController
предоставляет функциональность для создания, редактирования и получения задач.
-
getProject
: Получает проект по хешу. Используется для загрузки проекта в модель. -
getTasksModel
: Получает список задач проекта с возможностью фильтрации по дедлайну. -
getUsersAndTasks
: Возвращает список пользователей и связанных с ними задач. -
getRole
: Определяет роль текущего пользователя в проекте. -
getUser
: Получает информацию о текущем аутентифицированном пользователе. -
getTasks
: Отображает страницу с задачами проекта. -
createTask
: Создает новую задачу с проверкой на ошибки. -
editTask
: Загружает страницу редактирования задачи. -
editTask
: Обрабатывает редактирование задачи, проверяя ошибки. -
setTag
: Устанавливает тег для задачи. -
joinToTask
: Позволяет пользователю присоединиться к задаче. -
sendHelp
: Отправляет просьбу о помощи с задачей.
REST-контроллер TaskRestController
предоставляет API для обновления статуса задач.
-
changeStatus
: Обновляет статус задачи, переданной в теле запроса JSON.
Сервис TaskService
центральный компонент для управления логикой обработки задач. Он взаимодействует с репозиториями для выполнения операций с данными.
-
addTask
: Добавляет новую задачу в проект и связывает ее с пользователем. -
addUserToTask
: Добавляет пользователя к задаче. Если пользователь уже присоединен, выбрасывается исключениеUserAlreadyJoinedException
. -
getTaskById
: Возвращает задачу по ее идентификатору. -
findAllTasks
: Получает все задачи для заданного проекта. -
findTasksByTimeLine
: Фильтрует задачи по дедлайну. -
changeTaskFieldsAndSave
: Обновляет поля существующей задачи и сохраняет изменения. -
setTagToTask
: Устанавливает или удаляет тег у задачи. -
sendHelp
: Отправляет просьбу о помощи назначенному модератору. -
getAllTasksForUser
: Получает все задачи, назначенные пользователю. -
changeDate
: Обновляет дату и дедлайн задачи. -
changeStatus
: Меняет статус задачи.
Скрипт использует jQuery для работы с задачами и обновления их статуса. Он обрабатывает события перетаскивания и отправляет асинхронные запросы на сервер для обновления статуса задач.
-
allowDrop
: Разрешает возможность сбрасывания элемента. -
drag
: Обрабатывает событие перетаскивания элемента задачи. -
drop
: Обрабатывает событие сброса элемента задачи в новый контейнер и обновляет статус. -
updateTaskStatus
: Отправляет AJAX-запрос для обновления статуса задачи.