Criada branch dev para testes de api

This commit is contained in:
2026-03-01 19:17:39 -03:00
parent 133f847d50
commit 61271a98b8
54 changed files with 1691 additions and 595 deletions

View File

@@ -0,0 +1,131 @@
package com.agendaestudantil.entidade;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.CompoundIndex;
import org.springframework.data.mongodb.core.index.CompoundIndexes;
import org.springframework.data.mongodb.core.mapping.Document;
import java.time.LocalDate;
import java.util.Objects;
@Document(collection = "tarefas")
@CompoundIndexes({
@CompoundIndex(name = "estudante_data_entrega_idx", def = "{estudanteId: 1, dataEntrega: 1}"),
@CompoundIndex(name = "estudante_status_idx", def = "{estudanteId: 1, status: 1}")
})
public class Tarefa extends EntidadeAuditoria {
@Id
private String id;
private String titulo;
private String descricao;
private Prioridade prioridade;
private StatusTarefa status;
private LocalDate dataEntrega;
private String disciplinaId;
private String estudanteId;
public Tarefa() {
}
public Tarefa(String id, String titulo, String descricao, Prioridade prioridade, StatusTarefa status,
LocalDate dataEntrega, String disciplinaId, String estudanteId) {
this.id = id;
this.titulo = titulo;
this.descricao = descricao;
this.prioridade = prioridade;
this.status = status;
this.dataEntrega = dataEntrega;
this.disciplinaId = disciplinaId;
this.estudanteId = estudanteId;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getTitulo() {
return titulo;
}
public void setTitulo(String titulo) {
this.titulo = titulo;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public Prioridade getPrioridade() {
return prioridade;
}
public void setPrioridade(Prioridade prioridade) {
this.prioridade = prioridade;
}
public StatusTarefa getStatus() {
return status;
}
public void setStatus(StatusTarefa status) {
this.status = status;
}
public LocalDate getDataEntrega() {
return dataEntrega;
}
public void setDataEntrega(LocalDate dataEntrega) {
this.dataEntrega = dataEntrega;
}
public String getDisciplinaId() {
return disciplinaId;
}
public void setDisciplinaId(String disciplinaId) {
this.disciplinaId = disciplinaId;
}
public String getEstudanteId() {
return estudanteId;
}
public void setEstudanteId(String estudanteId) {
this.estudanteId = estudanteId;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
Tarefa tarefa = (Tarefa) o;
return Objects.equals(id, tarefa.id) &&
Objects.equals(estudanteId, tarefa.estudanteId) &&
Objects.equals(titulo, tarefa.titulo);
}
@Override
public int hashCode() {
return Objects.hash(id, estudanteId, titulo);
}
public enum Prioridade {
BAIXA, MEDIA, ALTA, URGENTE
}
public enum StatusTarefa {
PENDENTE, EM_ANDAMENTO, CONCLUIDA, ATRASADA
}
}