public static List <AgendamentoModels> GetListAgendamento(MySqlConnection conn, int usuarioClinica, int horarioAtendimento) { HttpResponseMessage retorno = new HttpResponseMessage(); string connectionString = ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString; List <AgendamentoModels> listAgendamento = new List <AgendamentoModels>(); try { MySqlCommand comando = new MySqlCommand("SELECT AGD.ID, AGD.ID_USUARIO_APLICATIVO, AGD.DATA, AGD.HORA, " + "AGD.STATUS, AGD.ESTADO, AGD.DESCRICAO FROM TB_AGENDAMENTO AGD " + "WHERE AGD.ID_USUARIO_CLINICA = @USUARIOCLINICA AND AGD.STATUS = 1", conn); if (horarioAtendimento > 0) { comando.CommandText += " AND AGD.ID_HORARIO_ATENDIMENTO = @HORARIOATENDIMENTO"; } comando.Parameters.AddWithValue("@USUARIOCLINICA", usuarioClinica); comando.Parameters.AddWithValue("@HORARIOATENDIMENTO", horarioAtendimento); try { conn.Open(); MySqlDataReader rdr = comando.ExecuteReader(); while (rdr.Read()) { AgendamentoModels userAgendamento = new AgendamentoModels(); userAgendamento.id = Convert.ToInt32(rdr[0].ToString()); userAgendamento.id_Usuario_Aplicativo = Convert.ToInt32(rdr[1].ToString()); userAgendamento.data = Convert.ToDateTime(rdr[2].ToString()); userAgendamento.hora = TimeSpan.Parse(rdr[3].ToString()); userAgendamento.status = Convert.ToInt32(rdr[4].ToString()); userAgendamento.estado = rdr[5].ToString(); userAgendamento.descricao = rdr[6].ToString(); listAgendamento.Add(userAgendamento); } rdr.Close(); return(listAgendamento); } catch (Exception e) { return(new List <AgendamentoModels>()); } finally { } } catch (Exception e) { return(new List <AgendamentoModels>()); } }
public HttpResponseMessage GetListAgendamento(string usuario) { string connectionString = ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString; List <AgendamentoModels> listAgendamento = new List <AgendamentoModels>(); try { using (MySqlConnection conn = new MySqlConnection(connectionString)) { MySqlCommand comando = new MySqlCommand("SELECT AGD.ID, AGD.ID_USUARIO_APLICATIVO, AGD.DATA, AGD.HORA," + "AGD.STATUS, AGD.ESTADO, AGD.DESCRICAO, " + "CONCAT(APL.NOME, ' ', APL.SOBRENOME), CLI.NOME, " + "CONCAT(CLI.ENDERECO, ', Número ', CLI.NUMERO), " + "CONCAT(CID.NOME, '/', (SELECT EST.SIGLA FROM TB_ESTADO EST WHERE EST.ID = CID.ID_ESTADO)), " + "AGD.ID_USUARIO_CLINICA " + "FROM TB_AGENDAMENTO AGD " + "JOIN TB_USUARIO_CLINICA CLI ON CLI.ID = AGD.ID_USUARIO_CLINICA " + "JOIN TB_USUARIO_APLICATIVO APL ON APL.ID = AGD.ID_USUARIO_APLICATIVO " + "JOIN TB_USUARIO USU ON USU.ID = APL.ID_USUARIO " + "JOIN TB_HORARIO_ATENDIMENTO HOR ON HOR.ID = AGD.ID_HORARIO_ATENDIMENTO " + "JOIN TB_CIDADE CID " + "WHERE CID.ID = HOR.ID_CIDADE " + "AND USU.EMAIL = '*****@*****.**' " + "ORDER BY AGD.DATA, AGD.HORA", conn); comando.Parameters.AddWithValue("@USUARIO", usuario); try { conn.Open(); MySqlDataReader rdr = comando.ExecuteReader(); while (rdr.Read()) { AgendamentoModels userAgendamento = new AgendamentoModels(); userAgendamento.dadosComplementares = new AgendamentoComplementar(); userAgendamento.id = Convert.ToInt32(rdr[0].ToString()); userAgendamento.id_Usuario_Aplicativo = Convert.ToInt32(rdr[1].ToString()); userAgendamento.data = Convert.ToDateTime(rdr[2].ToString()); userAgendamento.dadosComplementares.dataConsulta = userAgendamento.data.ToShortDateString(); userAgendamento.hora = TimeSpan.Parse(rdr[3].ToString()); userAgendamento.dadosComplementares.horaConsulta = userAgendamento.hora.ToString().Substring(0, 5); userAgendamento.status = Convert.ToInt32(rdr[4].ToString()); userAgendamento.estado = rdr[5].ToString(); userAgendamento.descricao = rdr[6].ToString(); userAgendamento.dadosComplementares.nomeUsuarioAplicativo = rdr[7].ToString(); userAgendamento.dadosComplementares.nomeUsuarioClinica = rdr[8].ToString(); userAgendamento.dadosComplementares.enderecoUsuarioClinica = rdr[9].ToString(); userAgendamento.dadosComplementares.cidadeEstadUsuarioClinica = rdr[10].ToString(); userAgendamento.id_Usuario_Clinica = Convert.ToInt32(rdr[11].ToString()); listAgendamento.Add(userAgendamento); } foreach (var agendamento in listAgendamento) { if (listAgendamento.Where(x => x.id_Agendamento == agendamento.id).Count() > 0) { agendamento.agendaRetorno = false; } } return(Request.CreateResponse(HttpStatusCode.OK, listAgendamento)); } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.ExpectationFailed, "Houve um erro ao listar os Agendamentos.")); } finally { conn.Close(); } } } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.ExpectationFailed, "Falha ao conectar no servidor: " + e.Message)); } }