/// <summary> /// Metodo que inactiva una cita a elección del usuario logeado /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_EliminarCita_Click(object sender, EventArgs e) { //Ejecuta la accion mas no inactiva el valor gbx_datosCita.Visible = true; gbx_datosCita.Enabled = true; if (string.IsNullOrWhiteSpace(txt_CedulaUsuario.Text)) { MessageBox.Show("Campo Cedula vacio, llene el campo correspondiente!", "Campos Vacios!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { using (GestorCita elGestorCita = new GestorCita()) { DialogResult result = MessageBox.Show("¿Desea eliminar la cita?", "Confirmacion", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (result == DialogResult.Yes) { elGestorCita.InactivarCita(txt_CedulaUsuario.Text); bloquearCamposCita(); MessageBox.Show("Datos Registrados Eliminados satifactoriamente", "EXITO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); gbx_datosCita.Visible = false; limpiarCamposCita(); grb_menuCita.Visible = true; cargarGridCitas(); cargarGridCitasRecientes(); } } } }
public void TestObtenerCita() { string pacienteEsperado1 = "[{‘id’:’2041’,’NombreCentro’:’ClinicaAntioquia’,’HoraInicio’:’09:20:30’,’HoraFinalizacion’:’10:20:30’,’Fecha’:’1/06/2020 12:00:00 a. m.’},{‘id’:’2042’,’NombreCentro’:’ClinicaAntioquia’,’HoraInicio’:’12:00:00’,’HoraFinalizacion’:’13:00:00’,’Fecha’:’1/06/2020 12:00:00 a. m.’}]"; GestorCita obj = new GestorCita(); Convertidor conver = new Convertidor(); Assert.AreEqual(pacienteEsperado1, conver.DataTableToJsonObj(obj.ObtenerCita("ClinicaAntioquia")).Replace("\"", "'")); }
public void TestNocitas() { string pacienteEsperado1 = "[{‘id’:’1’,’Nombre’:’Cecilia’,’Apellido’:’Meza’,’cedula’:’43165413’,’fecha’:’30/05/2020 1:00:00 p. m.’},{‘id’:’2’,’Nombre’:’Cecilia’,’Apellido’:’Meza’,’cedula’:’43165413’,’fecha’:’31/05/2020 6:12:04 p. m.’},{‘id’:’3’,’Nombre’:’Cecilia’,’Apellido’:’Meza’,’cedula’:’43165413’,’fecha’:’31/05/2020 6:46:11 p. m.’},{‘id’:’4’,’Nombre’:’Cecilia’,’Apellido’:’Meza’,’cedula’:’43165413’,’fecha’:’31/05/2020 10:56:18 p. m.’}]".Replace("’", "'"); GestorCita obj = new GestorCita(); Convertidor conver = new Convertidor(); Assert.AreEqual(pacienteEsperado1, conver.DataTableToJsonObj(obj.MostrarNoCitas()).Replace("\"", "'")); }
/// <summary> /// Metodo que carga un datagridview con citas con un periodo de registro no mayor a 11 meses /// </summary> private void cargarGridCitasRecientes() { using (GestorCita cita = new GestorCita()) { dgvCitasRecientes.DataSource = cita.ListarCitas(); dgvCitasRecientes.Columns["cedula"].HeaderText = "CEDULA"; dgvCitasRecientes.Columns["nombre_paciente"].HeaderText = "NOMBRE"; dgvCitasRecientes.Columns["telefono"].HeaderText = "TELEFONO"; dgvCitasRecientes.Columns["detalle"].HeaderText = "DETALLE"; dgvCitasRecientes.Columns["fecha"].HeaderText = "FECHA"; } }
public void TestCitaXpaciente() { string pacienteEsperado1 = "[{‘Id’:’15’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’15:00:00’,’HoraFin’:’16:00:00’,’Fecha’:’8/09/2019 12:00:00 a. m.’},{‘Id’:’16’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’12:01:00’,’HoraFin’:’13:24:00’,’Fecha’:’8/06/2019 12:00:00 a. m.’},{‘Id’:’1013’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’," + "’HoraInicio’:’17:00:00’,’HoraFin’:’18:00:00’,’Fecha’:’30/05/2020 12:00:00 a. m.’},{‘Id’:’1015’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’16:00:00’,’HoraFin’:’17:00:00’,’Fecha’:’30/05/2020 12:00:00 a. m.’},{‘Id’:’1016’,’Nombre’:’Cecilia’,’Nombre1’:’CaldasAntioquia’,’HoraInicio’:’12:30:00’,’HoraFin’:’15:20:00’,’Fecha’:’8/06/2019 12:00:00 a. m.’}," + "{‘Id’:’1018’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’12:00:00’,’HoraFin’:’14:03:00’,’Fecha’:’6/06/2019 12:00:00 a. m.’},{‘Id’:’1021’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’18:00:00’,’HoraFin’:’19:00:00’,’Fecha’:’31/05/2020 12:00:00 a. m.’},{‘Id’:’1022’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’06:00:20’," + "’HoraFin’:’07:00:20’,’Fecha’:’30/05/2020 12:00:00 a. m.’},{‘Id’:’1023’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’12:00:00’,’HoraFin’:’13:00:00’,’Fecha’:’21/05/2020 12:00:00 a. m.’},{‘Id’:’1024’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’10:00:00’,’HoraFin’:’11:00:00’,’Fecha’:’7/06/2019 12:00:00 a. m.’},{‘Id’:’1026’,’Nombre’:’Cecilia’," + "’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’19:00:00’,’HoraFin’:’20:00:00’,’Fecha’:’31/05/2020 12:00:00 a. m.’},{‘Id’:’1027’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’12:00:00’,’HoraFin’:’13:00:00’,’Fecha’:’6/01/2020 12:00:00 a. m.’},{‘Id’:’1031’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’16:00:00’,’HoraFin’:’17:00:00’,’Fecha’:’6/02/2020 12:00:00 a. m.’}," + "{‘Id’:’1032’,’Nombre’:’Cecilia’,’Nombre1’:’ClinicaAntioquia’,’HoraInicio’:’14:00:00’,’HoraFin’:’15:00:00’,’Fecha’:’6/01/2020 12:00:00 a. m.’}]".Replace("’", "'"); GestorCita obj = new GestorCita(); Convertidor conver = new Convertidor(); Assert.AreEqual(pacienteEsperado1, conver.DataTableToJsonObj(obj.CitaXPaciente(43165413)).Replace("\"", "'")); }
/// <summary> /// Metodo que guarda una cita /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_guardarCita_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(txt_CedulaUsuario.Text) || string.IsNullOrWhiteSpace(txt_nombreUsuario.Text) || string.IsNullOrWhiteSpace(txt_telefonoUsuario.Text) || string.IsNullOrWhiteSpace(txt_detalleCita.Text)) { MessageBox.Show("Hay Uno o mas Campos Vacios!", "Campos Vacios!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { try { using (GestorCita Cita = new GestorCita()) { string cedula = txt_CedulaUsuario.Text; this.dsCitas = Cita.ConsultarCitaCedula(cedula); this.dtCitas = this.dsCitas.Tables[0]; if (dtCitas.Rows.Count > 0) { MessageBox.Show("Ya existe un usuario con esa cedula, intente de nuevo", "Fallo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); limpiarCedula(); } else { if (dtpFechaCita.Value < DateTime.Now) { MessageBox.Show("La fecha debe ser una posterior a la fecha actual", "Fallo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { Cita.InsertarCita(txt_CedulaUsuario.Text, txt_nombreUsuario.Text, txt_telefonoUsuario.Text, txt_detalleCita.Text, dtpFechaCita.Value, "A"); bloquearCamposCita(); MessageBox.Show("Datos Registrados satisfactoriamente", "EXITO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); gbx_datosCita.Visible = false; limpiarCamposCita(); cargarGridCitas(); cargarGridCitasRecientes(); grb_menuCita.Visible = true; } } } } catch (Exception x) { MessageBox.Show("Error de SQL: " + x.Message); } } }
/// <summary> /// Metodo que modifica una cita ya registrada /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_EditarCita_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(txt_CedulaUsuario.Text) || string.IsNullOrWhiteSpace(txt_nombreUsuario.Text) || string.IsNullOrWhiteSpace(txt_telefonoUsuario.Text) || string.IsNullOrWhiteSpace(txt_detalleCita.Text)) { MessageBox.Show("Hay Uno o mas Campos Vacios!", "Campos Vacios!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { using (GestorCita Cita = new GestorCita()) { Cita.ModificarCita(txt_CedulaUsuario.Text, txt_CedulaUsuario.Text, txt_nombreUsuario.Text, txt_telefonoUsuario.Text, txt_detalleCita.Text, Convert.ToDateTime(dtpFechaCita.Value), "A"); bloquearCamposCita(); MessageBox.Show("Datos Modificados Satisfactoriamente", "EXITO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); gbx_datosCita.Visible = false; limpiarCamposCita(); grb_menuCita.Visible = true; cargarGridCitas(); cargarGridCitasRecientes(); } } }
static void Main(string[] args) { GestorCita obj1 = new GestorCita(); GestorPaciente obj2 = new GestorPaciente(); string usuario = ""; string contrasena = ""; int opcion = 0; int terminar = 0; int envio = 0; string nombreCSV = ""; string rutaCSV = ""; int credenciales = 0; while (credenciales != 1) { Console.WriteLine("Usuario: "); usuario = Console.ReadLine(); Console.WriteLine("Contraseña: "); contrasena = Console.ReadLine(); if (obj1.sesion(usuario, contrasena)) { while (terminar != 4) { Console.WriteLine(""); Console.WriteLine("Menu de opciones"); Console.WriteLine(""); Console.WriteLine("1. Consultar la lista de usuarios que no encontraron citas disponibles cuando deseaban reservar"); Console.WriteLine("2. Consultar la lista de usuarios que han iniciado sesión en la aplicación móvil o web"); Console.WriteLine("3. Consultar el número de veces que han intentado iniciar sesión en una cuenta existente de forma erronéa"); Console.WriteLine("4. Terminar"); opcion = Convert.ToInt32(Console.ReadLine()); switch (opcion) { case 1: DataTable dt = new DataTable(); dt = obj1.Nocita(); Console.WriteLine("Id Nombre Apellido Cedula Fecha"); foreach (DataRow row in dt.Rows) { Console.WriteLine(); for (int x = 0; x < dt.Columns.Count; x++) { Console.Write(row[x].ToString() + " "); } } Console.WriteLine(""); Console.WriteLine("Digite 1 si desea enviar los datos a un CSV"); envio = Convert.ToInt32(Console.ReadLine()); if (envio == 1) { //Console.WriteLine("Digite el nombre que desea darle al archivo: "); //nombreCSV = Console.ReadLine(); Console.WriteLine("Digite la ruta donde desea que se guarde al final de la ruta debe especificar el nombre del archivo .csv : "); rutaCSV = Console.ReadLine(); dt.ToCSV(rutaCSV); } break; case 2: DataTable dt1 = new DataTable(); dt1 = obj2.LoginRegistro(); Console.WriteLine("Id cedula Fecha"); foreach (DataRow row in dt1.Rows) { Console.WriteLine(); for (int x = 0; x < dt1.Columns.Count; x++) { Console.Write(row[x].ToString() + " "); } } Console.WriteLine(""); Console.WriteLine("Digite 1 si desea enviar los datos a un CSV"); envio = Convert.ToInt32(Console.ReadLine()); if (envio == 1) { //Console.WriteLine("Digite el nombre que desea darle al archivo: "); //nombreCSV = Console.ReadLine(); Console.WriteLine("Digite la ruta donde desea que se guarde al final de la ruta debe especificar el nombre del archivo .csv : "); rutaCSV = Console.ReadLine(); dt1.ToCSV(rutaCSV); } break; case 3: DataTable dt2 = new DataTable(); dt2 = obj2.LoginError(); Console.WriteLine("Id cedula ip Fecha"); foreach (DataRow row in dt2.Rows) { Console.WriteLine(); for (int x = 0; x < dt2.Columns.Count; x++) { Console.Write(row[x].ToString() + " "); } } Console.WriteLine(""); Console.WriteLine("Digite 1 si desea enviar los datos a un CSV"); envio = Convert.ToInt32(Console.ReadLine()); if (envio == 1) { //Console.WriteLine("Digite el nombre que desea darle al archivo: "); //nombreCSV = Console.ReadLine(); Console.WriteLine("Digite la ruta donde desea que se guarde al final de la ruta debe especificar el nombre del archivo .csv : "); rutaCSV = Console.ReadLine(); dt2.ToCSV(rutaCSV); } break; case 4: terminar = 4; credenciales = 1; break; } } } else { Console.WriteLine("Credenciales incorrectas"); } } }
/// <summary> /// Metodo que busca una cita independientemente de la opcion de busqueda de acuerdo a los radiobutton /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_buscarCita_Click(object sender, EventArgs e) { buscar = txt_valor_Cita.Text; txt_CedulaUsuario.Enabled = false; btn_guardarCita.Visible = false; lbl_guardarCita.Visible = false; using (GestorCita Cita = new GestorCita()) { if (string.IsNullOrWhiteSpace(txt_valor_Cita.Text)) { MessageBox.Show("Hay Uno o mas Campos Vacios!", "Campos Vacios!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { if (rbtn_CedulaCita.Checked == true) { this.dsCitas = Cita.ConsultarCitaCedula(txt_valor_Cita.Text.Trim()); this.dtCitas = this.dsCitas.Tables[0]; if (dtCitas.Rows.Count > 0) { if (!Regex.IsMatch(buscar, @"^[\p{L}]+$")) { CargarDatosCita(); txt_CedulaUsuario.Enabled = false; gbx_datosCita.Visible = true; btn_EliminarCita.Visible = true; lbl_editarCita.Visible = true; lbl_eliminarCita.Visible = true; btn_EditarCita.Visible = true; gbx_datosCita.Enabled = true; txt_valor_Cita.Text = ""; } else { MessageBox.Show("Solo permiten numeros(Cedula), cambie la seleccion de busqueda!", "Error de busqueda!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txt_valor_Cita.Text = ""; } } else { MessageBox.Show("El valor de busqueda no existe!", "Error de busqueda!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txt_valor_Cita.Text = ""; } } else { if (rbtn_nombreCita.Checked == true) { this.dsCitas = Cita.ConsultarCitaNombre(txt_valor_Cita.Text.Trim()); this.dtCitas = this.dsCitas.Tables[0]; if (dtCitas.Rows.Count > 0) { if (!Regex.IsMatch(buscar, @"[A-Z][a-zA-Z\s\'-]*")) { CargarDatosCita(); gbx_datosCita.Visible = true; btn_EliminarCita.Visible = true; btn_EditarCita.Visible = true; lbl_editarCita.Visible = true; lbl_eliminarCita.Visible = true; gbx_datosCita.Enabled = true; txt_valor_Cita.Text = ""; } else { MessageBox.Show("Solo se permiten letras(Nombre), cambie la seleccion de busqueda!", "Error de busqueda!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txt_valor_Cita.Text = ""; } } else { MessageBox.Show("El valor de busqueda no existe!", "Error de busqueda!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txt_valor_Cita.Text = ""; } } } } } }