コード例 #1
0
        public async Task <IComandoResultado> ManipuladorAsync(AddTurmaComando comando)
        {
            //Criar Entidade
            var turmaAluno = new TurmaAluno(comando.IdTurma, comando.IdAluno);

            //Validar Turma/Aluno Unico
            if (await _repositorio.CheckTurmaAlunoAsync(turmaAluno))
            {
                AddNotification("Turma", "Aluno já está cadastrado para turma informada");
            }

            //Validar Comando
            comando.Valido();
            if (Invalid)
            {
                return(new ComandoResultado(false, "Por favor, corrija os campos abaixo", Notifications));
            }
            //Persistir Dados
            var total = await _repositorio.SalvarTurmaAsync(turmaAluno);

            // Retornar o resultado para tela
            return(new ComandoResultado(true, "Turma/Aluno cadastrado com sucesso", new
            {
                Id = total,
                Nome = "OK",
                Status = true
            }));
        }
コード例 #2
0
        public async Task <ActionResult <TurmaAluno> > PostTurmaAluno(TurmaAluno turmaAluno)
        {
            _context.TurmaAlunos.Add(turmaAluno);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetTurmaAluno", new { id = turmaAluno.Id }, turmaAluno));
        }
コード例 #3
0
        public async Task <IActionResult> PutTurmaAluno(int id, TurmaAluno turmaAluno)
        {
            if (id != turmaAluno.Id)
            {
                return(BadRequest());
            }

            _context.Entry(turmaAluno).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TurmaAlunoExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #4
0
        public TurmaAluno FindTurmaAluno(int?id)
        {
            if (id == null)
            {
                return(null);
            }
            Context db = new Context();

            TurmaAluno turmaAluno = db.TurmaAluno.Find(id);

            if (turmaAluno == null)
            {
                return(null);
            }

            Pessoa aluno = db.Pessoa.Find(turmaAluno.IdPessoa);

            if (aluno == null)
            {
                return(null);
            }

            Instituicao instituicao = db.Instituicao.Find(aluno.IdInstituicao);

            if (instituicao == null || (instituicao.IdInstituicao != IdMatriz && instituicao.IdMatriz != IdMatriz))
            {
                return(null);
            }

            return(turmaAluno);
        }
コード例 #5
0
 public IActionResult Cadastro(TurmaAluno turmaAluno)
 {
     try
     {
         TurmaAlunoDal turmaAlunoDal = new TurmaAlunoDal();
         string        sucesso       = turmaAlunoDal.CadastroMateriaProfessor(turmaAluno);
         if (sucesso == "Sim")
         {
             //Cadastro feito
             TempData["ResultadoMateria"] = 1;
             return(View());
         }
         else
         {
             //Erro
             TempData["ResultadoMateria"] = 2;
             return(View());
         }
     }
     catch
     {
         TempData["ResultadoMateria"] = 2;
         return(View());
     }
 }
コード例 #6
0
        public TurmaAluno CreateTurmaAluno(TurmaAluno turmaAluno)
        {
            Context db = new Context();

            TurmaAluno ta = db.TurmaAluno.Where(x => x.IdTurma == turmaAluno.IdTurma && x.IdPessoa == turmaAluno.IdPessoa).FirstOrDefault();

            if (ta != null)
            {
                return(null);
            }

            Turma turma = db.Turma.Find(turmaAluno.IdTurma);

            if (turma == null)
            {
                return(null);
            }

            Instituicao instituicao = db.Instituicao.Find(turma.IdInstituicao);

            if (instituicao == null)
            {
                return(null);
            }
            if (instituicao.IdInstituicao != IdMatriz && (instituicao.IdMatriz == null || instituicao.IdMatriz != IdMatriz))
            {
                return(null);
            }

            db.TurmaAluno.Add(turmaAluno);
            db.SaveChanges();
            db.Dispose();
            return(turmaAluno);
        }
コード例 #7
0
        public bool DeleteTurmaAluno(int?id)
        {
            if (id == null)
            {
                return(false);
            }
            Context    db = new Context();
            TurmaAluno ta = db.TurmaAluno.Find(id);

            if (ta == null)
            {
                return(false);
            }

            Turma turma = db.Turma.Find(ta.IdTurma);

            if (turma == null)
            {
                return(false);
            }

            Instituicao instituicao = db.Instituicao.Find(turma.IdInstituicao);

            if (instituicao == null || (instituicao.IdInstituicao != IdMatriz && instituicao.IdMatriz != IdMatriz))
            {
                return(false);
            }

            db.TurmaAluno.Remove(ta);
            db.SaveChanges();
            db.Dispose();
            return(true);
        }
コード例 #8
0
 public IEnumerable <TurmaAluno> Put(Guid id, [FromBody] TurmaAluno turmaProfessor)
 {
     if (id.Equals(turmaProfessor.Id))
     {
         repo.Alterar(turmaProfessor);
     }
     return(repo.SelecionarTudo());
 }
コード例 #9
0
        public void UpdateTurmaAlunoAsync(TurmaAluno turmaAluno)
        {
            bool isDetached = _dbContext.Entry(turmaAluno).State == EntityState.Detached;

            if (isDetached)
            {
                _dbContext.TurmaAluno.Attach(turmaAluno);
            }

            _dbContext.TurmaAluno.Update(turmaAluno);
        }
コード例 #10
0
 public IActionResult Get(int id)
 {
     try
     {
         TurmaAluno turmaAluno = _repo.Selecionar(id);
         return(Ok(_mapper.Map <TurmaAlunoDto>(turmaAluno)));
     }
     catch (System.Exception)
     {
         return(StatusCode(500));
     }
 }
コード例 #11
0
 public IActionResult Post([FromBody] TurmaAluno turmaAluno)
 {
     try
     {
         _repo.Incluir(turmaAluno);
         return(Ok(_repo.SelecionarTudo()));
     }
     catch (System.Exception)
     {
         return(BadRequest("Aconteceu um erro."));
     }
 }
コード例 #12
0
 public IActionResult Put([FromBody] TurmaAluno turmaAluno)
 {
     try
     {
         _repo.Alterar(turmaAluno);
         return(Ok(_repo.SelecionarTudo()));
     }
     catch (System.Exception)
     {
         return(StatusCode(500));
     }
 }
コード例 #13
0
 public IActionResult Post([FromBody] TurmaAluno turmaAluno)
 {
     try
     {
         _repo.Incluir(turmaAluno);
         List <TurmaAluno> turmasAlunos = _repo.SelecionarTudo();
         return(Ok(_mapper.Map <IEnumerable <TurmaAlunoDto> >(turmasAlunos)));
     }
     catch (System.Exception)
     {
         return(BadRequest("Aconteceu um erro."));
     }
 }
コード例 #14
0
 public IActionResult Put([FromBody] TurmaAluno turmaAluno)
 {
     try
     {
         _repo.Alterar(turmaAluno);
         List <TurmaAluno> turmasAlunos = _repo.SelecionarTudo();
         return(Ok(_mapper.Map <IEnumerable <TurmaAlunoDto> >(turmasAlunos)));
     }
     catch (System.Exception)
     {
         return(StatusCode(500));
     }
 }
コード例 #15
0
        public string CadastroMateriaProfessor(TurmaAluno turmaAluno)
        {
            Conexao      con = new Conexao();
            MySqlCommand cmd = new MySqlCommand
                                   ("CALL sp_InsertMatProf(@Cpf_Prof,@Nm_Materia,@Cd_Turma)", con.conectarBD());

            cmd.Parameters.Add("@Cpf_Prof", MySqlDbType.VarChar).Value = turmaAluno.Cpf_Prof;
            cmd.Parameters.Add("@Nm_Materia", MySqlDbType.Date).Value  = turmaAluno.Nm_Materia;
            cmd.Parameters.Add("@Cd_Turma", MySqlDbType.Int64).Value   = turmaAluno.Cd_Turma;

            string sucesso = Convert.ToString(cmd.ExecuteScalar());

            con.desconectarBD();

            return(sucesso);
        }
コード例 #16
0
        public TurmaAluno EditTurmaAluno(TurmaAluno turmaAluno)
        {
            Context db = new Context();

            TurmaAluno turmaAluno_aux = db.TurmaAluno.Find(turmaAluno.IdTurmaAluno);

            if (turmaAluno_aux == null)
            {
                return(null);
            }
            if (turmaAluno_aux.IdTurmaAluno != turmaAluno.IdTurmaAluno)
            {
                Turma turma = db.Turma.Find(turmaAluno.IdTurma);
                if (turma == null)
                {
                    return(null);
                }

                Instituicao instituicao_aux = db.Instituicao.Find(turma.IdInstituicao);
                if (instituicao_aux.IdInstituicao != IdMatriz && (instituicao_aux.IdMatriz == null || instituicao_aux.IdMatriz != IdMatriz))
                {
                    return(null);
                }
            }
            if (turmaAluno_aux.IdPessoa != turmaAluno.IdPessoa)
            {
                Pessoa pessoa = db.Pessoa.Find(turmaAluno.IdPessoa);
                if (pessoa == null)
                {
                    return(null);
                }

                Instituicao instituicao_aux = db.Instituicao.Find(pessoa.IdInstituicao);
                if (instituicao_aux.IdInstituicao != IdMatriz && (instituicao_aux.IdMatriz == null || instituicao_aux.IdMatriz != IdMatriz))
                {
                    return(null);
                }
            }

            db.Dispose();
            db = new Context();
            db.Entry(turmaAluno).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();
            db.Dispose();

            return(turmaAluno);
        }
コード例 #17
0
        public async Task <bool> CheckTurmaAlunoAsync(TurmaAluno turmaAluno)
        {
            try
            {
                var parametros = new DynamicParameters();
                parametros.Add("sp_id_aluno", turmaAluno.IdAluno);
                parametros.Add("sp_id_turma", turmaAluno.IdTurma);
                var existe = (await _contexto
                              .Connection
                              .QueryAsync <int>("SELECT Count(1) FROM academia.turma_aluno where id_aluno = @sp_id_aluno and id_turma = @sp_id_turma;",
                                                parametros,
                                                commandType: System.Data.CommandType.Text)).FirstOrDefault();

                return(existe > 0);
            }
            finally
            {
                _contexto.Dispose();
            }
        }
コード例 #18
0
        public TurmaAluno FindTurmaAluno(int?id)
        {
            if (id == null)
            {
                return(null);
            }
            Context    db = new Context();
            List <int> idAuxList;

            List <TurmaDisciplinaAutor> turmaDisciplinaAutorList = db.TurmaDisciplinaAutor.Where(tda => tda.IdAutor == IdPessoa).ToList();

            if (turmaDisciplinaAutorList == null || turmaDisciplinaAutorList.Count == 0)
            {
                return(null);
            }
            idAuxList = new List <int>();
            foreach (var tda in turmaDisciplinaAutorList)
            {
                idAuxList.Add(tda.IdDisciplinaTurma);
            }

            List <DisciplinaTurma> disciplinaTurmaList = db.DisciplinaTurma.Where(dt => idAuxList.Contains(dt.IdDisciplinaTurma)).ToList();

            if (disciplinaTurmaList == null || disciplinaTurmaList.Count == 0)
            {
                return(null);
            }
            idAuxList = new List <int>();
            foreach (var dt in disciplinaTurmaList)
            {
                idAuxList.Add(dt.IdTurma);
            }

            Turma turma = db.Turma.Where(t => t.IdTurma == id && idAuxList.Contains(t.IdTurma)).FirstOrDefault();

            TurmaAluno turmaAluno = db.TurmaAluno.Where(ta => ta.IdTurmaAluno == id && ta.IdTurma == turma.IdTurma).FirstOrDefault();

            return(turmaAluno);
        }
コード例 #19
0
        public async Task <int> DeletarTurmaAluno(TurmaAluno turmaAluno)
        {
            try
            {
                var parametros = new DynamicParameters();
                parametros.Add("sp_id_turma", turmaAluno.IdTurma);
                parametros.Add("sp_id_aluno", turmaAluno.IdAluno);

                var total = await _contexto
                            .Connection
                            .ExecuteAsync("sp_delete_turma_aluno",
                                          parametros,
                                          commandType : System.Data.CommandType.StoredProcedure);

                return(total);
            }

            finally
            {
                _contexto.Dispose();
            }
        }
コード例 #20
0
        public List <TurmaAluno> SelectAlunoTurmaProfessorMateria(int cdTurma)
        {
            Conexao con = new Conexao();

            MySqlDataAdapter msda = new MySqlDataAdapter
                                        ("SELECT  A.cdAluno, A.nmAluno, T.cdTurma, M.*, F.nmFunc " +
                                        "FROM tblAluno A " +
                                        "INNER JOIN tblTurma T ON T.cdTurma = A.cdTurma " +
                                        "INNER JOIN tblMatProf M ON M.cdTurma = A.cdTurma " +
                                        "INNER JOIN tblFuncionario F ON M.cdFunc = F.cdFunc " +
                                        "WHERE A.cdTurma = " + cdTurma + ";", con.conectarBD());

            DataSet ds = new DataSet();

            msda.Fill(ds);

            con.desconectarBD();

            List <TurmaAluno> lista = new List <TurmaAluno>();
            int vai = 0;

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                TurmaAluno item = new TurmaAluno();
                item.Cd_Aluno = int.Parse(dr["cdAluno"].ToString());
                item.Nm_Aluno = dr["nmAluno"].ToString();
                if (vai == 0)
                {
                    item.Cd_MatProf   = int.Parse(dr["cdMatProf"].ToString());
                    item.Cd_Professor = dr["cdFunc"].ToString();
                    item.Nm_Materia   = dr["nmMateria"].ToString();
                    item.Nm_Professor = dr["nmFunc"].ToString();
                    item.Cd_Turma     = int.Parse(dr["cdTurma"].ToString());
                }
                lista.Add(item);
                vai++;
            }
            return(lista);
        }
コード例 #21
0
        public async Task <int> SalvarTurmaAsync(TurmaAluno turmaAluno)
        {
            try
            {
                var parametros = new DynamicParameters();
                parametros.Add("sp_id", dbType: DbType.Int32, direction: ParameterDirection.Output);
                parametros.Add("sp_id_turma", turmaAluno.IdTurma);
                parametros.Add("sp_id_aluno", turmaAluno.IdAluno);

                var total = await _contexto
                            .Connection
                            .ExecuteAsync("sp_insert_turma_aluno",
                                          parametros,
                                          commandType : System.Data.CommandType.StoredProcedure);

                return(total);
            }
            catch (Exception ex)
            {
                throw new Exception($"Ocorreu um erro ao tentar vincular o aluno na turma:[{turmaAluno.IdTurma}]");
            }
            finally { _contexto.Dispose(); }
        }
コード例 #22
0
 public TurmaAluno CreateTurmaAluno(TurmaAluno turmaAluno) => turmaAlunoMatrizCreator.CreateTurmaAluno(turmaAluno);
コード例 #23
0
 public TurmaAluno EditTurmaAluno(TurmaAluno turmaAluno) => turmaAlunoMatrizCreator.EditTurmaAluno(turmaAluno);
コード例 #24
0
 public IEnumerable <TurmaAluno> Put([FromBody] TurmaAluno ta)
 {
     _repo.Alterar(ta);
     return(_repo.SelecionarTudo());
 }
コード例 #25
0
 public async Task UpdateTurmaAlunoAsync(TurmaAluno turmaAluno)
 {
     _turmaAlunoRepository.UpdateTurmaAlunoAsync(turmaAluno);
     await _turmaAlunoRepository.UnitOfWork.Commit();
 }
コード例 #26
0
 public Task <int> DeletarTurmaAluno(TurmaAluno turmaAluno)
 {
     throw new NotImplementedException();
 }
コード例 #27
0
 public TurmaAluno EditTurmaAluno(TurmaAluno turmaAluno)
 {
     throw new System.NotImplementedException();
 }
コード例 #28
0
 public Task <int> SalvarTurmaAsync(TurmaAluno turmaAluno)
 {
     throw new NotImplementedException();
 }
コード例 #29
0
        public async Task <IActionResult> Post([FromBody] PeriodoDTO request)
        {
            try
            {
                // qtd aluno  criar os aluno, criar as turmas e associar eles a um periodo


                var listaMateria = new List <Materia>();
                var listaTurma   = new List <Turma>();
                var random       = new Random();

                //Criação de Matérias na quantidade recebida

                for (int m = 0; m < request.QuantidadeMaterias; m++)
                {
                    Materia materia = new Materia();
                    var     mt      = (char)random.Next('A', 'Z');
                    materia.NomeMateria = mt.ToString();
                    listaMateria.Add(materia);
                }

                //Criação de Turma na quantidade recebida

                for (int i = 0; i < request.QuantidadeTurmas; i++)
                {
                    Turma turma = new Turma();

                    var nt = (char)random.Next('A', 'Z');

                    turma.NomeTurma = nt.ToString();
                    // Pegar aleatoriamente uma materia de listaMateria

                    var m = random.Next(0, request.QuantidadeMaterias - 1);
                    turma.Materia = listaMateria[m];



                    //Criação de Alunos na quantidade recebida

                    for (int j = 0; j < request.QuantidadeAlunos; j++)
                    {
                        Aluno      aluno      = new Aluno();
                        TurmaAluno turmaAluno = new TurmaAluno();
                        var        na         = (char)random.Next('A', 'Z');

                        aluno.NomeAluno = na.ToString();

                        var acumulaPeso = 0;



                        //cria 3 provas pro aluno
                        for (int k = 1; k < 4; k++)
                        {
                            Prova prova = new Prova();
                            prova.Nota       = random.Next(0, 10);
                            prova.Peso       = random.Next(1, 3);
                            prova.OrdemProva = k;

                            acumulaPeso += prova.Peso;

                            turmaAluno.Provas.Add(prova);
                        }
                        //  média = ((Nota1*Peso1)+(Nota2*Peso2)+(Nota3*Peso3))/acumulaPeso

                        turmaAluno.Media = ((turmaAluno.Provas.First().Nota) * (turmaAluno.Provas.First().Peso)
                                            + (turmaAluno.Provas.Skip(1).First().Nota) * (turmaAluno.Provas.Skip(1).First().Peso)
                                            + (turmaAluno.Provas.Skip(2).First().Nota) * (turmaAluno.Provas.Skip(2).First().Peso))
                                           / acumulaPeso;



                        //testa se ele vai pra prova final

                        if (turmaAluno.Media > 4 && turmaAluno.Media < 6)
                        {
                            Prova provaFinal = new Prova();
                            provaFinal.Nota = random.Next(0, 10);
                            provaFinal.Peso = 1;

                            provaFinal.OrdemProva = 4;

                            turmaAluno.Media = (turmaAluno.Media + provaFinal.Nota) / 2;

                            turmaAluno.Provas.Add(provaFinal);
                        }

                        if (turmaAluno.Media < 5)
                        {
                            aluno.Situacao = "Reprovado";
                        }
                        if (turmaAluno.Media >= 5)
                        {
                            aluno.Situacao = "Aprovado";
                        }
                        turmaAluno.Aluno = aluno;
                        turmaAluno.Turma = turma;

                        aluno.TurmaAlunos.Add(turmaAluno);
                        turma.TurmaAlunos.Add(turmaAluno);
                    }

                    listaTurma.Add(turma);
                }

                Periodo periodo = new Periodo();
                periodo.Materias    = listaMateria;
                periodo.Turmas      = listaTurma;
                periodo.NomePeriodo = request.NomePeriodo;
                _repo.Add(periodo);


                await _repo.SaveChangesAsync();
            }
            catch (System.Exception e)
            {
                throw e;
            }
            return(Ok());
        }
コード例 #30
0
 public Task <bool> CheckTurmaAlunoAsync(TurmaAluno turmaAluno)
 {
     throw new NotImplementedException();
 }