public Consulta Get(int idConsulta) { Consulta consulta = consultaDAO.Get(idConsulta); consulta.Horario = horariosDAO.Get(consulta.Horario.Codigo); //consulta.Horario.Consulta = consulta; consulta.Horario.Veterinario = veterinarioDAO.Get(consulta.Horario.Veterinario.Codigo); consulta.Cliente = clienteDAO.Get(consulta.Cliente.Codigo); consulta.Pet = petDAO.Get(consulta.Pet.Codigo); return(consulta); }
//Verifica se uma data está disponível para agendar consulta public List <Horarios> verificaHorarios(int idVeterinario, Data data) { List <Horarios> agenda = new List <Horarios>(); Horarios horario = null; //Objeto Mysql que é retornado na consulta MySqlDataReader reader; VeterinarioDAO veterinarioDAO = new VeterinarioDAO(conexaoBD); ConsultaDAO consultaDAO = new ConsultaDAO(conexaoBD); //Cria um objeto 'comando' para manipular a query e a execução using (MySqlCommand comando = conexaoBD.buscar().CreateCommand()) //conexaoBD.buscar() inicia a conexão ao banco de dados { //Parâmetro Type do comando comando.CommandType = CommandType.Text; //Monta a query comando.CommandText = "SELECT h.ID, h.idVeterinario, h.data, h.idConsulta " + "FROM horarios h " + "WHERE DATE(h.data) = @data AND h.idConsulta = 0"; //Substitui os parâmetros da query, com cada atributo utilizado comando.Parameters.Add("@data", MySqlDbType.Int16).Value = data.toUS(); //Executa o comando para resgatar os dados no objeto 'reader' reader = comando.ExecuteReader(); //Para cada registro encontrado while (reader.Read()) { //Cria um objeto zerado horario = new Horarios(); //Seta os dados resgatados no objeto criado horario.Codigo = reader.GetInt16(0); horario.Veterinario = veterinarioDAO.Get(reader.GetInt16(1)); horario.Data = new Data(reader.GetDateTime(2).ToString(), "usTime"); horario.Consulta = consultaDAO.Get(reader.GetInt16(3)); agenda.Add(horario); } //Fecha o leitor reader.Close(); } conexaoBD.fechar(); return(agenda); }