private void button1_Click(object sender, EventArgs e) { if (cbAfi.Text != "") { profesional = (Profesional)cbAfi.SelectedItem; DialogResult = DialogResult.OK; } else MessageBox.Show("Porfavor, selecciona un profesional"); }
public Turno(DataRow dr) { id = Convert.ToInt32(dr["tur_id"]); afiliado = new Afiliado((int)dr["tur_afiliado"]); profesional = new Profesional((int)dr["tur_profesional"]); if(dr["tur_especialidad"] != DBNull.Value) especialidad = new Especialidad((int)dr["tur_especialidad"]); turno = Convert.ToDateTime(dr["tur_fechaYHoraTurno"]); habilitado = Convert.ToBoolean(dr["tur_habilitado"]); }
public void FillForDay(Profesional _prof, DateTime _dia) { //--Trae los turnos de un profesional en un día específico Fill(DB.ExecuteReader("SELECT * FROM " + DB.schema + "turno" + " JOIN " + DB.schema + "vProfesional ON tur_profesional = pro_id" + " JOIN " + DB.schema + "vAfiliado ON tur_afiliado = afi_id" + " WHERE tur_profesional = " + _prof.id + " " + //Que sea del profesional que atendiste "AND CAST(tur_fechaYHoraTurno as DATE) = '" + _dia.ToString("yyyy-MM-dd") + "' " + //Que sea de ese dia "AND tur_habilitado = 1 " + "ORDER BY tur_fechaYHoraTurno ASC")); //Ordenados }
public void FillForProf(Profesional _prof, Boolean llego) { //El discriminador es para saber si tiene que tomar los turnos que llegaron, o lo que todavia no Fill(DB.ExecuteReader("SELECT * FROM " + DB.schema + "turno" + " JOIN "+DB.schema+"vProfesional ON tur_profesional = pro_id" + " JOIN " + DB.schema + "vAfiliado ON tur_afiliado = afi_id" + " WHERE tur_profesional = " + _prof.id + " " + //Que sea del profesional que atendiste "AND (SELECT COUNT(1) FROM " + DB.schema + "atencion WHERE ate_turno = tur_id) " + (!llego ? "=0 " : "=1 ") + "AND CAST(tur_fechaYHoraTurno as DATE) = '" + FuncionesBoludas.GetDateTime().ToString("yyyy-MM-dd") +"' " + //Que sea de ese dia "AND CAST(tur_fechaYHoraTurno as TIME) > '" + FuncionesBoludas.GetDateTime().ToString("HH:mm") + "' " + //Pero que sea mas tarde "AND tur_habilitado=1 " + "ORDER BY tur_fechaYHoraTurno ASC")); //Ordenados }
public GenerarReceta(Usuario _usuario) { InitializeComponent(); int tmp = DB.ExecuteCardinal("SELECT TOP 1 afi_id FROM " + DB.schema + "vProfesional WHERE usu_id=" + _usuario.id); if (tmp != -1) { profesional = new Profesional(tmp); } else { //Si fallo al traer afiliados, es que el usuario no es un afiliado MessageBox.Show("Este usuario no tiene un profecional asociado,\na modo de debug, le vamos a dejar elejir un profesional"); miniProfesional mini = new miniProfesional(); if (mini.ShowDialog() != DialogResult.OK) cerrar = true; profesional = mini.profesional; } }
/// <summary> /// Formulario para la edición de un profesional /// </summary> /// <param name="p_prof">Profesional a editar</param> public EditProfesional(Profesional p_prof) { InitializeComponent(); profId = p_prof.id; usuarioID = p_prof.usuario.id; nombre = p_prof.usuario.nombre; apellido = p_prof.usuario.apellido; direccion = p_prof.usuario.direccion; tipoDocumento = p_prof.usuario.tipoDocumento; numeroDocumento = p_prof.usuario.numeroDocumento; telefono = p_prof.usuario.telefono; mail = p_prof.usuario.mail; nombreUsuario = p_prof.usuario.nombreUsuario; contrasegna = p_prof.usuario.contrasegna; sexo = (p_prof.usuario.sexo == "M") ? "Masculino" : ((p_prof.usuario.sexo == "F") ? "Femenino" : ""); fechaNacimiento = p_prof.usuario.fechaNacimiento; matricula = p_prof.matricula; especialidades = p_prof.especialidades; nueva = false; }
private void dgvProfesionales_CellContentClick(object sender, DataGridViewCellEventArgs e) { //--Guardar profesional que clickeo y habilita para seleccionar día if (dgvProfesionales.Columns[e.ColumnIndex].Name == "Seleccionar") { prof = profs[dgvProfesionales.Rows[e.RowIndex].Cells["id"].Value.ToString()]; gbProf.Enabled = false; gbEspecialidad.Enabled = true; //--Cargar lb con especialidades cmbEspecialidades.Items.Clear(); cmbEspecialidades.Items.AddRange(prof.especialidades.ToList()); //--Traer agenda del elegido y setear min y max date DateTime aux = DateTime.Now; //--los igualo así no los agrega al filtro agendas.FillWithFilter(prof, aux, aux, -1, "", ""); dtpDia.MinDate = FuncionesBoludas.GetDateTime(); if (agendas.items.Count > 0) dtpDia.MaxDate = agendas[0].hasta; } }
private void dgvProfesionales_CellContentClick(object sender, DataGridViewCellEventArgs e) { //--Guardar profesional que clickeo y habilita para seleccionar día if (dgvProfesionales.Columns[e.ColumnIndex].Name == "Seleccionar") { prof = profs[dgvProfesionales.Rows[e.RowIndex].Cells["id"].Value.ToString()]; gbTurno.Enabled = true; gbProf.Enabled = false; turnos.FillForProf(prof, false); lbTurnos.Items.AddRange(turnos.ToList()); } }
public void FillWithFilter(Profesional _profesional, DateTime _desde, DateTime _hasta, int _dia, string _dia_desde, string _dia_hasta) { string query = "SELECT DISTINCT age_id, age_desde, age_hasta, age_profesional, profesional FROM " + DB.schema + "vAgenda WHERE age_habilitado=1 AND"; if (_profesional != null) query += " age_profesional = " + _profesional.id + " AND "; if (_desde != _hasta) query += " age_desde > '" + _desde.Date.ToString("yyyy-MM-dd") + "' AND age_hasta < '" + _hasta.Date.ToString("yyy-MM-dd") + "' AND "; if (_dia != -1 && (_dia_desde != "" || _dia_hasta != "")) { query += " sem_dia = " + _dia + " AND "; if (_dia_desde != "") query += "sem_hora > '" + _dia_desde + "' AND "; if (_dia_hasta != "") query += "sem_hora < '" + _dia_hasta + "' AND "; } query = query.Substring(0, query.Length - 5); try { Fill(DB.ExecuteReader(query)); } catch (Exception ex) { MessageBox.Show(ex.Message); } }