/// <summary> /// comprueba si el turno esta disponible /// </summary> /// <param name="turno"></param> /// <returns></returns> public bool existeTurno(clsTurno turno) { foreach(clsTurno existente in padre.Turnos) { if(existente.IdMedico==turno.IdMedico && existente.Fecha==turno.Fecha) { MessageBox.Show("Turno ya asignado, verifique horarios disponibles en la pestaña \"Turnos\"", "Error", MessageBoxButtons.OK, MessageBoxIcon.Hand); return true; } } return false; }
/// <summary> /// TURNO ALTA /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnGuardarT_Click(object sender, EventArgs e) { DialogResult tur = MessageBox.Show("Confirme :"+dtpFecha.Value.ToLongDateString()+" Horario: "+nudHoras.Value.ToString()+":"+nudMinutos.Value.ToString(),"Confirmación.", MessageBoxButtons.OKCancel,MessageBoxIcon.Question); if(tur==DialogResult.OK) { DateTime fechaTurno = new DateTime(dtpFecha.Value.Year, dtpFecha.Value.Month, dtpFecha.Value.Day, (int)nudHoras.Value, (int)nudMinutos.Value, 0); int idMedico=0; int idUsuario = padre.Padre.IdUsuario; foreach(clsMedico med in padre.Medicos) { if((med.Apellido + " " + med.Nombre)==cbMedicos.SelectedItem.ToString()) { idMedico=med.Id; } } clsTurno oClsTurno = new clsTurno(idMedico, paciente.Id, fechaTurno, padre.Padre.IdUsuario); if(!existeTurno(oClsTurno)) { manejador = new MetodosFactory(); metodosTurnos = manejador.getMetodos(MetodoType.turnos); try { metodosTurnos.Alta(oClsTurno); } catch(SqlException ex) { MessageBox.Show("Error de conexion con la base de datos: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } catch(Exception ex) { MessageBox.Show("Se produjo el sgte. error: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } MessageBox.Show("El turno se cargo con exito", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.None); this.Close(); } } }
public IEntidad buscarPorId(int id) { DataTable aux = new DataTable(); clsTurno T = new clsTurno(); try { aux =manejar.Consultar("select * from turno where idTurno="+id); T.Id = Convert.ToInt32(aux.Rows[0]["idTurno"]); T.IdMedico = Convert.ToInt32(aux.Rows[0]["idMedico"]); T.IdUsuario =Convert.ToInt32( aux.Rows[0]["idUsuario"]); T.IdPaciente = Convert.ToInt32(aux.Rows[0]["idPaciente"]); T.Estado = Convert.ToBoolean(aux.Rows[0]["asistencia"]); T.Fecha = Convert.ToDateTime(aux.Rows[0]["fecha"]); T.NroTurno = 0; } catch(SqlException ex) { throw ex; } return T; }
public List<IEntidad> Todo() { List<IEntidad> list= new List<IEntidad>(); DataTable dt = new DataTable(); try { dt = DBManager.Consultar("select * from turno"); foreach(DataRow x in dt.Rows) { clsTurno T = new clsTurno(); T.Id = Convert.ToInt32(x["idturno"]); T.IdUsuario = Convert.ToInt32(x["idusuario"]); T.IdMedico =Convert.ToInt32(x["idmedico"]); T.IdPaciente = Convert.ToInt32(x["idpaciente"]); T.Estado = Convert.ToBoolean(x["asistencia"]); T.Fecha = Convert.ToDateTime(x["fecha"]); T.NroTurno = Convert.ToInt32(x["numero"]); list.Add(T); } } catch (SqlException ex) { throw ex; } return list; }
/// <summary> /// TURNO BAJA /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void eliminarToolStripMenuItem1_Click(object sender, EventArgs e) { if (dgvTurnos.SelectedRows.Count > 0) { IEntidad tur; MessageBox.Show(dgvTurnos.Rows[dgvTurnos.CurrentRow.Index].Cells["idTurno"].Value.ToString()); try { tur = metodosTurnos.buscarPorId(Convert.ToInt32(dgvTurnos.Rows[dgvTurnos.CurrentRow.Index].Cells["idTurno"].Value)); } catch(SqlException ex) { MessageBox.Show("Se ha producido el sgte. error: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DialogResult elim = MessageBox.Show("Desea eliminar el turno seleccionado?", "Confirmación", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (elim == DialogResult.OK) { IEntidad ent = new clsTurno(); ent.Id = Convert.ToInt32(dgvTurnos.Rows[dgvTurnos.CurrentRow.Index].Cells[0].Value); try { metodosTurnos.Baja(ent); actualizar(); } catch (Exception ex) { MessageBox.Show("Se produjo el sgte. error " + ex.Message); } } } }