public object ListarMateriasdoCurso(int idAluno) { var result = new PadraoResult <MateriaCurso>(); try { using (db) { var aluno = db.Alunos.Where(q => q.Id == idAluno).Include(x => x.Curso).ThenInclude(y => y.Materias).ThenInclude(z => z.Materia).FirstOrDefault(); if (aluno == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Id de aluno não cadastrado"); return(result); } result.Error = false; result.Status = HttpStatusCode.OK; result.Message.Add("ok"); result.Data = aluno.Curso.Materias.ToList(); return(result); //return db.Cursos.Select(s => new { CursoName = s.Nome, ListaMateria = s.Materias.Select(r => r.Materia.Nome).ToList() }).ToList(); } } catch (Exception e) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add(e.Message); return(result); } }
public PadraoResult <AlunoMateria> ListarNotaAluno(int idAluno) { var result = new PadraoResult <AlunoMateria>(); try { using (db) { Aluno aluno = db.Alunos.Where(q => q.Id == idAluno).Include(x => x.AlunoMaterias).ThenInclude(z => z.Materia).FirstOrDefault(); if (aluno == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add($"Id {idAluno} do aluno não cadastrado"); return(result); } result.Error = false; result.Status = HttpStatusCode.OK; result.Message.Add("ok"); result.Data = aluno.AlunoMaterias.Where(q => q.AlunoId == idAluno).ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Materia> DeleteMateria(int id) { var result = new PadraoResult <Materia>(); try { using (db) { var materia = db.Materias.Where(q => q.Id == id).FirstOrDefault(); db.Materias.Remove(materia); db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Data = db.Materias.ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); result.Status = HttpStatusCode.BadRequest; return(result); } }
public PadraoResult <Curso> Add_Mat_em_Curso(string nomeCurso, string nomeMateria) { var result = new PadraoResult <Curso>(); using (db) { try { var cursos = db.Cursos.ToList(); var materias = db.Materias.ToList(); var curso = cursos.Where(q => q.Nome.ToLower() == nomeCurso.ToLower()).Select(q => q).FirstOrDefault(); var materia = materias.Where(q => q.Nome.ToLower() == nomeMateria.ToLower()).Select(q => q).FirstOrDefault(); if (curso == null) { result.Error = true; result.Message.Add("Curso não encontrado"); result.Status = HttpStatusCode.BadRequest; return(result); } if (materia == null) { result.Error = true; result.Message.Add("Materia não encontrada"); result.Status = HttpStatusCode.BadRequest; return(result); } if (materia.Situacao == MODELS.Enum.StatusMateriaEnum.INATIVO) { result.Error = true; result.Message.Add("Materia com Status 'INATIVO', não pode ser adicionada ao curso!"); result.Status = HttpStatusCode.BadRequest; return(result); } curso.Materias.Add(new MateriaCurso() { Materia = materia, Curso = curso }); db.SaveChanges(); result.Error = false; result.Message.Add("OK"); result.Status = HttpStatusCode.OK; result.Data = db.Cursos.Include(q => q.Materias).ToList(); return(result); } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); result.Status = HttpStatusCode.BadRequest; return(result); } } }
public PadraoResult <Aluno> MatricularAlunoEmMateria(int idAluno, int idMateria) { var result = new PadraoResult <Aluno>(); try { using (db) { var aluno = db.Alunos.Where(q => q.Id == idAluno).Include(x => x.Curso).FirstOrDefault(); Materia materia = db.Materias.Where(q => q.Id == idMateria).Include(x => x.Cursos).FirstOrDefault(); if (aluno == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Id aluno não cadastrado"); return(result); } if (materia == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Id Materia não cadastrado!"); return(result); } var encontrou = materia.Cursos.Where(x => x.CursoId == aluno.IdCurso).FirstOrDefault(); if (encontrou == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add($"Materia {materia.Nome} não pertence a grade do curso de {aluno.Curso.Nome}"); return(result); } aluno.AlunoMaterias.Add(new AlunoMateria() { Materia = materia, Aluno = aluno }); db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Message.Add("ok"); result.Data.Add(aluno); return(result); } } catch (Exception e) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add(e.Message); return(result); } }
public PadraoResult <AlunoMateria> AtribuirNotaEmMateria(int idAluno, int idMateria, double nota) { var result = new PadraoResult <AlunoMateria>(); if (nota > 100 || nota < 0) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add($"Valor de {nota} não é válido para ser atribuído a nota"); return(result); } try { using (db) { Aluno aluno = db.Alunos.Where(q => q.Id == idAluno).Include(x => x.AlunoMaterias).ThenInclude(z => z.Materia).FirstOrDefault(); if (aluno == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add($"Id {idAluno} do aluno não cadastrado"); return(result); } var alunoMateria = aluno.AlunoMaterias.Where(q => q.MateriaId == idMateria).FirstOrDefault(); if (alunoMateria == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add($"Aluno id{idAluno} não está matriculado na materia id {idMateria}"); return(result); } alunoMateria.Nota = nota; db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Message.Add("ok"); result.Data = aluno.AlunoMaterias.Where(q => q.AlunoId == idAluno).ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Aluno> MatricularAluno(int idAluno, int idCurso) { var result = new PadraoResult <Aluno>(); try { using (db) { var aluno = db.Alunos.Where(q => q.Id == idAluno).FirstOrDefault(); var curso = db.Cursos.Where(q => q.Id == idCurso).FirstOrDefault(); if (aluno == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Id aluno não cadastrado"); return(result); } if (curso == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Id Curso não cadastrado!"); return(result); } if (curso.Situacao == MODELS.Enum.StatusCursoEnum.CANCELADO || curso.Situacao == MODELS.Enum.StatusCursoEnum.PREVISTO) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Curso não esta ativo!"); return(result); } aluno.Curso = curso; aluno.IdCurso = curso.Id; db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Message.Add("ok"); result.Data.Add(db.Alunos.Where(q => q.Id == idAluno).Include(x => x.Curso).FirstOrDefault()); } return(result); } catch (Exception e) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Materia> UpdateMateria(int id, Materia matAtualizada) { var validator = new MateriaValidator(); var valida = validator.Valida(matAtualizada); var result = new PadraoResult <Materia>(); if (!valida.IsValid) { result.Error = true; result.Message = valida.Erros; result.Status = HttpStatusCode.BadRequest; return(result); } try { using (db) { var materia = db.Materias.Where(q => q.Id == id).FirstOrDefault(); if (materia == null) { result.Error = true; result.Message.Add("Id de materia não existe no nosso banco!"); result.Status = HttpStatusCode.BadRequest; return(result); } materia.Nome = matAtualizada.Nome; materia.Situacao = matAtualizada.Situacao; materia.Descricao = matAtualizada.Descricao; materia.DataCadastro = matAtualizada.DataCadastro; db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Data = db.Materias.ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); result.Status = HttpStatusCode.BadRequest; return(result); } }
public PadraoResult <Aluno> CadastrarAluno(Aluno aluno) { var validator = new AlunoValidator(); var valida = validator.Valida(aluno); var result = new PadraoResult <Aluno>(); if (!valida.IsValid) { result.Error = true; result.Message = valida.Erros; result.Status = HttpStatusCode.BadRequest; return(result); } aluno.Cpf = validator.FormataCPF(aluno); validator.SenhaLoginInicial(aluno); aluno.TipoUsuario = MODELS.Enum.TipoUsuarioEnum.ALUNO; try { using (db) { foreach (var item in db.Alunos) { if (item.Cpf == aluno.Cpf) { result.Error = true; result.Message.Add($"O nome {aluno.Nome} com CPF {aluno.Cpf} já esta cadastrado"); result.Status = HttpStatusCode.BadRequest; return(result); } } db.Alunos.Add(aluno); db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Data.Add(aluno); return(result); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Usuario> Logar(Usuario user) { var result = new PadraoResult <Usuario>(); var usuario = db.Usuarios.Where(x => x.Login == user.Login && x.Senha == user.Senha).FirstOrDefault(); if (usuario == null) { result.Data = null; result.IsError = true; result.Message.Add("Usuario inválido"); return(result); } result.Data.Add(usuario); result.IsError = false; result.Message.Add("ok"); return(result); }
public PadraoResult <Materia> CadastrarMateria(Materia materia) { var validator = new MateriaValidator(); var valida = validator.Valida(materia); var result = new PadraoResult <Materia>(); if (!valida.IsValid) { result.Error = true; result.Message = valida.Erros; result.Status = HttpStatusCode.BadRequest; return(result); } try { using (db) { foreach (var item in db.Materias) { if (item.Nome == materia.Nome) { result.Error = true; result.Message.Add($"O nome {materia.Nome} já esta cadastrado"); result.Status = HttpStatusCode.BadRequest; return(result); } } db.Add(materia); db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Data = db.Materias.ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); result.Status = HttpStatusCode.BadRequest; return(result); } }
public PadraoResult <Curso> CadastrarCurso(Curso curso) { var validator = new CursoValidator(); var valida = validator.Valida(curso); var result = new PadraoResult <Curso>(); if (!valida.IsValid) { result.Error = true; result.Message = valida.Erros; result.Status = HttpStatusCode.BadRequest; return(result); } try { using (db) { foreach (var item in db.Cursos) { if (item.Nome == curso.Nome) { result.Error = true; result.Message.Add($"O nome {curso.Nome} já esta cadastrado"); result.Status = HttpStatusCode.BadRequest; return(result); } } db.Cursos.Add(curso); db.SaveChanges(); result.Error = false; result.Status = HttpStatusCode.OK; result.Data = db.Cursos.ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Materia> ListarMaterias() { var result = new PadraoResult <Materia>(); try { using (db) { result.Error = false; result.Status = HttpStatusCode.OK; result.Data = db.Materias.ToList(); return(result); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Curso> ListarCursos() { var result = new PadraoResult <Curso>(); try { using (db) { result.Error = false; result.Message.Add("OK"); result.Status = HttpStatusCode.OK; result.Data = db.Cursos.Include(x => x.Materias).ThenInclude(z => z.Materia).ToList(); return(result); //return db.Cursos.Select(s => new { CursoName = s.Nome, ListaMateria = s.Materias.Select(r => r.Materia.Nome).ToList() }).ToList(); } } catch (Exception e) { result.Error = true; result.Message.Add(e.Message); return(result); } }
public PadraoResult <Usuario> LogarUsuario(string login, string password) { var result = new PadraoResult <Usuario>(); Usuario usuario; try { using (db) { //======================================================================= //cria administrador e professor padrao var lista = db.Administradors.ToList(); if (lista.Count == 0) { Administrador adm = new Administrador() { Login = "******", Password = "******", TipoUsuario = MODELS.Enum.TipoUsuarioEnum.ADMINISTRADOR }; Professor prof = new Professor() { Login = "******", Password = "******", TipoUsuario = MODELS.Enum.TipoUsuarioEnum.PROFESSOR }; db.Administradors.Add(adm); db.Professors.Add(prof); db.SaveChanges(); } //======================================================================= usuario = db.Administradors.Where(q => q.Login == login && q.Password == password).FirstOrDefault(); if (usuario == null) { usuario = db.Professors.Where(q => q.Login == login && q.Password == password).FirstOrDefault(); } if (usuario == null) { usuario = db.Alunos.Where(q => q.Login == login && q.Password == password).FirstOrDefault(); } if (usuario == null) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add("Usuario não cadastrado"); return(result); } result.Error = false; result.Status = HttpStatusCode.OK; result.Message.Add("ok"); result.Data.Add(usuario); } return(result); } catch (Exception e) { result.Error = true; result.Status = HttpStatusCode.NotFound; result.Message.Add(e.Message); return(result); } }