public List <Tema> ListarTodosPorMateria(int materia_id) { List <Tema> lista = new List <Tema>(); try { lista = temaDAO.PegarTemasPorMateria(materia_id); } catch (ExcecaoSAG ex) { throw new ExcecaoSAG(ex.getMsg()); } return(lista); }
public void Carregar(Avaliacao umaAvaliacao) { List <Avaliacao> avaliacoes = new List <Avaliacao>(); Materia umaMateria; Funcionario umFuncionario; List <Aluno> alunos = new List <Aluno>(); List <Tema> temas = new List <Tema>(); DAOFactory daoFactory = new DAOFactory(); MateriaDAO matDAO = daoFactory.getMateriaDAO(); FuncionarioDAO funcDAO = daoFactory.getFuncionarioDAO(); AlunoDAO alunoDAO = daoFactory.getAlunoDAO(); TemaDAO temaDAO = daoFactory.getTemaDAO(); MySqlConnection db = Connection.getConnection(); MySqlTransaction mySQLTransaction; mySQLTransaction = db.BeginTransaction(); try { MySqlCommand mySQLcmd = db.CreateCommand(); //setando a procedure do banco mySQLcmd.CommandType = CommandType.StoredProcedure; mySQLcmd.CommandText = "Avaliacao_Carregar"; mySQLcmd.Parameters.AddWithValue("LOC_ID", umaAvaliacao.GetId()); //ligando a transação mySQLcmd.Transaction = mySQLTransaction; //execução sem retorno MySqlDataReader rsAvaliacao = mySQLcmd.ExecuteReader(); //se há linhas if (rsAvaliacao.HasRows) { if (rsAvaliacao.Read()) { umaAvaliacao.SetDescricao(rsAvaliacao.GetString("descricao")); umaAvaliacao.SetDataInicio(rsAvaliacao.GetInt32("datainicio")); umaAvaliacao.SetDataFim(rsAvaliacao.GetInt32("datafim")); umaAvaliacao.SetSimulado(rsAvaliacao.GetBoolean("simulado")); int materia_id = rsAvaliacao.GetInt32("materia_id"); int funcionario_id = rsAvaliacao.GetInt32("funcionario_id"); db.Close(); umaMateria = new Materia(); umaMateria.SetId(materia_id); matDAO.Carregar(umaMateria); umaAvaliacao.SetMateria(umaMateria); umFuncionario = new Funcionario(); umFuncionario.SetId(funcionario_id); funcDAO.Carregar(umFuncionario); umaAvaliacao.SetFuncionarioAutor(umFuncionario); alunos = alunoDAO.PegarAlunosPorAvaliacao(umaAvaliacao.GetId()); umaAvaliacao.SetAlunos(alunos); temas = temaDAO.PegarTemasPorMateria(umaMateria.GetId()); umaAvaliacao.SetTemas(temas); } } else { //aluno não carregado throw new ExcecaoSAG("Erro, Pergunta não encontrado."); } } catch (MySqlException ex) { throw new ExcecaoSAG("Erro ao carregar uma Pergunta. Código " + ex.ToString()); } catch (ExcecaoSAG ex) { throw ex; } finally { db.Close(); } }