Skip to content

Krylemar/TaskManager

Repository files navigation

Task Manager

TU-Varna 3rd year project for the course "Internet Technologies"

RESTful web API for managing tasks with title, description, and due date


Specifications

Endpoint Operation Input Output Description
/api/tasks POST TaskDto(JSON) TaskDto(JSON) Adds a new task and returns the added value
/api/tasks/all GET - List(JSON) Retrieves all tasks
/api/tasks GET Task ID (JSON) TaskDto(JSON) Retrieves a task by it's Id
/api/tasks PUT TaskDto(JSON) TaskDto(JSON) Updates a task
/api/tasks DELETE Task ID (JSON) - Deletes a task by id

Phase 1

  • Ability to do CRUD operations on tasks
  • Ability to be docker deployable
  • Implement Model, Controller, Repository, and Service layers
  • Use in-memory storage for tasks

Phase 2

  • Implement validation for task fields
  • Use DTOs for data transfer between layers
  • Implement exception handling
  • Use PostgreSQL with JPA(Hibernate) task storage
  • Implement report entity with fields: id, description, hours logged, date created, task id
    • Queries:
      • Add report to a task
      • Get all reports of a task
      • Get specific report of a task
      • Update report of a task
      • Delete report of a task
      • Get all reports of a task with hours logged within a specific date range
      • Get the report of a task with the most hours logged
      • Get total hours logged for a task by id

Phase 3

  • Implement user registration and authentication
  • Implement user roles
  • Implement user-specific tasks
  • Implement JWT for user authentication

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published