Essa aplicação foi criada com o objetivo de obtenção da aprovação na disciplina Programação Orientada a Objetos, no curso de Ciência da Computação, na Universidade Federal do Agreste de Pernambuco.
O TaskHive é uma aplicação de gerenciamento de tarefas que utiliza o paradigma da Programação Orientada a Objetos (POO) para organizar e estruturar o código. O backend do TaskHive foi desenvolvido em Java com o framework Spring Boot e utiliza o gerenciador de dependências Gradle.
Para rodar o backend do TaskHive, é necessário ter o Java e o Gradle instalados em sua máquina. Após clonar este repositório, acesse a pasta taskhive-backend e rode o comando gradle bootRun. Isso iniciará o servidor backend na porta 8080.
O TaskHive utiliza o banco de dados Postgresql para armazenar os dados. O arquivo application.properties contém as configurações de acesso ao banco de dados.
- Request (application/json) {"nome": "", "email": "", "senha": ""}
- Response 201 (application/json) {"id": 0, "nome": "", "email": ""}
- Parameters
- usuarioId (long) - O ID do usuário que você deseja obter informações.
- Response 200 (application/json) {"id": 0, "nome": "", "email": ""}
- Response 404 (application/json) {"mensagem": "Usuário não existe!"}
- Request (application/json) {"email": "", "senha": ""}
- Response 201 (application/json) {"id": 0, "nome": "", "email": "", ...}
- Response 400 (application/json) {mensagem: “Usuário já existe!”}
- Request (application/json) {"nome": "", "descricao": "", …}
- Response 201 (application/json) {"id": 0, "nome": "", "descricao": "", ...}
- Parameters
- papelId (long) - O ID do papel que você deseja obter informações.
- Response 200 (application/json) {"id": 0, "nome": "", "descricao": ""}
- Response 404 (application/json) {"mensagem": "Papel não existe!"}
- Response 200 (application/json) [{"id": 0, "nome": "", "descricao": ""}, …]
- Response 500 (application/json) {"mensagem": "Papéis não encontrados!"}
- Response 200 (application/json) [{"id": 0, "nome": "", "descricao": ""}, …]
- Response 500 (application/json) {"mensagem": "Projetos não encontrados!"}
- Request (application/json) {"nome": "", "descricao": "", …}
- Response 201 (application/json) {"id": 0, "nome": "", "descricao": "", ...}
- Parameters
- projetoId (long) - O ID do projeto que você deseja obter informações.
- Response 200 (application/json) {"id": 0, "nome": "", "descricao": ""}
- Response 404 (application/json) {"mensagem": "Projeto não existe!"}
- Response 200 (application/json) [{"id": 0, "nome": "", "descricao": ""}, …]
- Response 500 (application/json) {"mensagem": "Projetos não encontrados!"}
- Response 200 (application/json) [{"id": 0, "titulo": "", "descricao": ""}, …]
- Response 500 (application/json) {"mensagem": "Tarefas não encontradas!"}
- Response 200 (application/json) [{"id": 0, "titulo": "", "descricao": ""}, …]
- Response 500 (application/json) {"mensagem": "TarefasLista não encontradas!"}
- Request (application/json) {"titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "subtarefas": null}
- Response 200 (application/json) {“id”: 0, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "subtarefas": null}
- Response 404 (application/json) {"mensagem": "Bad Request!"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja buscar.
- Response 200 (application/json) {“id”: 0, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "subtarefas": null}
- Response 404 (application/json) {"mensagem": "Tarefa Não Existe"}
- Response 200 (application/json) {[{“id”: 0, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "subtarefas": null}], …}
- Response 404 (application/json) {"mensagem": "Bad Request!"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja atualizar.
- Request {“id”: null, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "subtarefas": null}
- Response 200 (application/json) {“ok”: "TarefaLista atualizada com sucesso!"}
- Response 404 (application/json) {"mensagem": "Tarefa Não Existe"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja deletar.
- Response 200 (application/json) {“ok”: "TarefaLista deletada com sucesso!"}
- Response 404 (application/json) {"mensagem": "Tarefa Não Existe"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja adicionar uma subtarefa.
- Request (application/json) {"item": "", "checked": false}
- Response 200 (application/json) {“id”: 0, "item": "", "checked": false}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja adicionar um comentário.
- Request (application/json) {“mensagem”: “”}
- Response 200 (application/json) {“id”: 0, “mensagem”: “”}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja atribuir a um usuário;
- userId (Long) - O ID do usuário que deseja atribuir a tarefa.
- Response 200 (application/json) {"id": 0, "nome": "", "email": ""}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Request (application/json) {"titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "descricao": ""}
- Response 200 (application/json) {“id”: 0, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "descricao": ""}
- Response 404 (application/json) {"mensagem": "Bad Request!"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja buscar.
- Response 200 (application/json) {“id”: 0, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "descricao": ""}
- Response 404 (application/json) {"mensagem": "Tarefa Não Existe"}
- Response 200 (application/json) {[{“id”: 0, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "descricao": ""}], …}
- Response 404 (application/json) {"mensagem": "Tarefa Não Existe"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja atualizar.
- Request (application/json) {“id”: null, "titulo": "", "prioridade": "", "categoria": null, "comentario": null, "lembrete": null, "user": null, "projeto": [{id: null}], "data_criacao": null, "data_conclusao": null, "data_prevista": "", "arquivado": false, "exluido": false, "descricao": ""}
- Response 200 (application/json) {“ok”: "Tarefa atualizada com sucesso!"}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja deletar.
- Response 200 (application/json) {“ok”: "Tarefa deletada com sucesso!"}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja adicionar um comentário.
- Request (application/json) {“mensagem”: “”}
- Response 200 (application/json) {“id”: 0, “mensagem”: “”}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja atribuir a um usuário.
- userId (Long) - O ID do usuário que deseja atribuir a tarefa.
- Response 200 (application/json) {"id": 0, "nome": "", "email": ""}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Request (application/json) {"tarefa": [{ "id": null}], "tarefa_lista": [ ], "data_registro": "", "status": [{ "id": null }]}
- Response 200 (application/json) {“ok”: "Status registrado com sucesso!"}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- registroId (Long) - O ID do registro que deseja buscar.
- Response 200 (application/json) {“id”: 0, "tarefa": [{ "id": null}], "tarefa_lista": [ ], "data_registro": "", "status": [{ "id": null }]}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- statusId (Long) - O ID do status que deseja buscar os registros de status que foram realizados.
- Response 200 (application/json) {“id”: 0, "tarefa": [{ "id": null}], "tarefa_lista": [ ], "data_registro": "", "status": [{ "id": null }]}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- tarefaId (Long) - O ID da tarefa que deseja buscar o registro de status.
- Response 200 (application/json) {“id”: 0, "tarefa": [{ "id": null}], "tarefa_lista": [ ], "data_registro": "", "status": [{ "id": null }]}
- Response 404 (application/json) {"mensagem": "Tarefa não Existe!"}
- Response 200 (application/json) {[{ “id”: 0, "tarefa": [{ "id": null}], "tarefa_lista": [ ], "data_registro": "", "status": [{ "id": null }]}], …}
- Response 404 (application/json) {"mensagem": "Bad Request"}
- Parameters
- registroId (Long) - O ID do registro que deseja atualizar.
- Request (application/json) {“id”: 0, "tarefa": [{ "id": null}], "tarefa_lista": [ ], "data_registro": "", "status": [{ "id": null }]}
- Response 200 (application/json) {“ok”: "Registro de Status Atualizada com sucesso"}
- Response 404 (application/json) {"mensagem": "Bad Request"}