示例#1
0
        private void btn_cancelar_Click(object sender, EventArgs e)
        {
            Errores errores = new Errores();

            if ((DateTime)cb_dia_desde.SelectedItem > (DateTime)cb_dia_hasta.SelectedItem)
            {
                errores.agregarError("La fecha final de la franja debe ser anterior a la inicial.");
            }
            if (tb_motivo.TextLength == 0)
            {
                errores.agregarError("Debe escribir un motivo de cancelacion");
            }
            if (errores.huboError())
            {
                MessageBox.Show(errores.stringErrores(), "Clinica-FRBA ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                SqlCommand cancelar = new SqlCommand("ELIMINAR_CAR.cancelarTurnoProfesional", DBConnector.ObtenerConexion());
                cancelar.CommandType = CommandType.StoredProcedure;
                cancelar.Parameters.Add("@matricula", SqlDbType.BigInt).Value = matricula;
                cancelar.Parameters.Add("@fecha_desde", SqlDbType.Date).Value = (DateTime)cb_dia_desde.SelectedItem;
                cancelar.Parameters.Add("@fecha_hasta", SqlDbType.Date).Value = (DateTime)cb_dia_hasta.SelectedItem;
                cancelar.Parameters.Add("@motivo", SqlDbType.VarChar).Value   = tb_motivo.Text;
                cancelar.ExecuteNonQuery();
                MessageBox.Show("Franja Cancelada Correctamente", "Clinica-FRBA", MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.Close();
            }
        }
示例#2
0
      private void button1_Click(object sender, EventArgs e)
      {
          Errores errores = new Errores();

          if (dt_dia.Value.DayOfWeek == DayOfWeek.Sunday)
          {
              errores.agregarError("No se puede realizar una consulta un domingo");
          }
          if (tb_diagnostico.TextLength == 0)
          {
              errores.agregarError("El diagnostico no puede ser nulo.");
          }
          if (tb_sintomas.TextLength == 0)
          {
              errores.agregarError("Los sintomas no pueden ser nulos.");
          }
          if (errores.huboError())
          {
              MessageBox.Show(errores.stringErrores(), "Clinica-FRBA ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
          }
          else
          {
              SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.registrarConsulta", DBConnector.ObtenerConexion());
              insertar.CommandType = CommandType.StoredProcedure;
              insertar.Parameters.Add("@fecha", SqlDbType.DateTime).Value      = dt_dia.Value.Date.Add(dt_hora.Value.TimeOfDay);
              insertar.Parameters.Add("@turno", SqlDbType.BigInt).Value        = ((Turno)dgv_turno.CurrentRow.DataBoundItem).id_turno;
              insertar.Parameters.Add("@sintomas", SqlDbType.VarChar).Value    = tb_sintomas.Text;
              insertar.Parameters.Add("@diagnostico", SqlDbType.VarChar).Value = tb_diagnostico.Text;
              insertar.ExecuteNonQuery();
              MessageBox.Show("Atencion registrada Correctamente", "Clinica-FRBA", MessageBoxButtons.OK, MessageBoxIcon.Information);
              ActualizarHora();
              ActualizarTurnos();
              ActualizarCampos();
          }
      }
        private void btn_aceptar_Click(object sender, EventArgs e)
        {
            Errores errores = new Errores();

            if (cb_dia_mes.SelectedItem == null)
            {
                errores.agregarError("El campo dia no puede ser nulo.");
            }
            if (cb_hora.SelectedItem == null)
            {
                errores.agregarError("El campo hora no puede ser nulo.");
            }
            if (errores.huboError())
            {
                MessageBox.Show(errores.stringErrores(), "Clinica-FRBA ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                if (!pedirTurno())
                {
                    MessageBox.Show("No se pudo agregar el turno", "Clinica-FRBA ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    MessageBox.Show("Turno agregado correctamente", "Clinica-FRBA", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                this.cerrar = true;
                this.Close();
            }
        }
        private void btn_agregar_Click(object sender, EventArgs e)
        {
            Agenda_Diaria nueva = new Agenda_Diaria();
            Errores       error = new Errores();

            if (cb_dia.SelectedValue == null)
            {
                error.agregarError("Debe seleccionar un dia.");
            }
            if (l_especialidad.SelectedItem == null)
            {
                error.agregarError("La especialidad no puede ser nula.");
            }
            if (!error.huboError())
            {
                nueva = new Agenda_Diaria(((Dia)cb_dia.SelectedItem).dia, profesional.matricula, (int)l_desde_h.Value, (int)l_desde_m.Value, (int)l_hasta_h.Value, (int)l_hasta_m.Value, ((Especialidad)l_especialidad.SelectedItem).id_especialidad);
                if (!nueva.esValida())
                {
                    error.agregarError("La hora de fin debe ser posterior a la de inicio.");
                }
                if (agendas.Sum(elem => elem.horasDiarias()) + nueva.horasDiarias() > 48)
                {
                    error.agregarError("Esta prohibido trabajar mas de 48hs semanales. Si quiere agregar mas horas debe eliminar algunas.");
                }
                if (Agenda_Diaria.seSuperponen(agendas, nueva))
                {
                    error.agregarError("No puede elegir rangos que se superpongan en el mismo dia.");
                }
                if (agendas.Any(elem => elem.dia == nueva.dia && elem.id_especialidad == nueva.id_especialidad))
                {
                    error.agregarError("No se puede trabajar dos veces con la misma especialidad en el mismo dia.");
                }
            }
            if (!error.huboError())
            {
                agendas.Add(nueva);
                actualizarAgenda();
            }
            else
            {
                MessageBox.Show(error.stringErrores(), "Clinica-FRBA ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void btn_aceptar_Click(object sender, EventArgs e)
        {
            Rango_Atencion rango = new Rango_Atencion();

            rango.matricula   = profesional.matricula;
            rango.fecha_desde = franja_inicio.Value.Date;
            rango.fecha_hasta = franja_fin.Value.Date;
            Errores errores = new Errores();

            if (rango.fecha_desde.Year < 2016 || rango.fecha_hasta.Year < 2016)
            {
                errores.agregarError("No se permiten registrar agendas anteriores a 2016");
            }
            if (!rango.esValido())
            {
                errores.agregarError("La fecha de inicio de la franja debe ser anterior a la de fin.");
            }
            if (rango.fecha_desde < ClinicaFrba.Utils.Fechas.getCurrentDateTime().Date || rango.fecha_hasta < ClinicaFrba.Utils.Fechas.getCurrentDateTime().Date)
            {
                errores.agregarError("Las fechas de inicio y fin de la franja deben ser posteriores o iguales al dia de hoy.");
            }
            if (agendas.Any(elem => !elem.esValida()))
            {
                errores.agregarError("La hora de fin del turno no puede ser anterior a la de inicio.");
            }
            if (agendas.Sum(elem => elem.horasDiarias()) > 48)
            {
                errores.agregarError("Esta prohibido trabajar mas de 48hs semanales. Por favor disminuya sus horas diarias.");
            }
            if (agendas.Any(elem => elem.id_especialidad == null))
            {
                errores.agregarError("La especialidad no puede ser nula.");
            }
            if (agendas.Count == 0)
            {
                errores.agregarError("Debe seleccionar por lo menos un dia de la semana.");
            }
            if (Rango_Atencion.SeSolapan(profesional.matricula, rango))
            {
                errores.agregarError("El rango seleccionado no puede solaparse con un rango ya registrado.");
            }
            if (errores.huboError())
            {
                MessageBox.Show(errores.stringErrores(), "Clinica-FRBA: ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                insert(agendas, rango);
                MessageBox.Show("Se ha insertado la agenda correctamente.", "Clinica-FRBA", MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.Close();
            }
        }
        private void botonAceptar_Click(object sender, EventArgs e)
        {
            Errores errores = new Errores();

            if (textBox_NombAfi.TextLength == 0)
            {
                errores.agregarError("El nombre del afiliado no puede ser nulo");
            }
            if (textBox_ApAfi.TextLength == 0)
            {
                errores.agregarError("El apellido del afiliado no puede ser nulo");
            }
            if (textBox_NumDoc.TextLength == 0)
            {
                errores.agregarError("El número de documento del afiliado no puede ser nulo");
            }
            if (PlanMedAfi.SelectedItem == null)
            {
                errores.agregarError("El plan médico del afiliado no puede ser nulo");
            }
            SqlCommand cuantosHayConDNI = new SqlCommand("ELIMINAR_CAR.verificar_doc_afiliado", DBConnector.ObtenerConexion());
            int        cantDNI          = 0;

            cuantosHayConDNI.CommandType = CommandType.StoredProcedure;
            cuantosHayConDNI.Parameters.AddWithValue("@tipo", (int)comboBox_TipoDoc.SelectedItem);
            cuantosHayConDNI.Parameters.AddWithValue("@dni", Int64.Parse(textBox_NumDoc.Text));
            cuantosHayConDNI.Parameters.AddWithValue("@resultado", cantDNI);
            cuantosHayConDNI.Parameters["@resultado"].Direction = ParameterDirection.Output;
            cuantosHayConDNI.ExecuteNonQuery();
            cantDNI = (int)cuantosHayConDNI.Parameters["@resultado"].Value;
            if (cantDNI > 0)
            {
                errores.agregarError("El tipo y numero de documento ingresado ya existe.");
            }
            if (errores.huboError())
            {
                MessageBox.Show(errores.stringErrores(), "Clinica-FRBA: ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            else //Coportamiento si esta todo ok
            {
                //Insertar Chabon
                if (tipo == 0)
                {
                    SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.insertarAfiliadoRaiz", DBConnector.ObtenerConexion());
                    insertar.CommandType = CommandType.StoredProcedure;
                    insertar.Parameters.Add(new SqlParameter("@tipo_doc", (Int32)comboBox_TipoDoc.SelectedValue));
                    insertar.Parameters.Add(new SqlParameter("@n_doc", Decimal.Parse(textBox_NumDoc.Text)));
                    insertar.Parameters.Add(new SqlParameter("@nombre", textBox_NombAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@apellido", textBox_ApAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@direccion", textBox_DirecAfi.Text));
                    int telefono;
                    if (Int32.TryParse(textBox_TelAfi.Text, out telefono))
                    {
                        insertar.Parameters.Add(new SqlParameter("@telefono", Int64.Parse(textBox_TelAfi.Text)));
                    }
                    else
                    {
                        insertar.Parameters.Add(new SqlParameter("@telefono", DBNull.Value));
                    }
                    insertar.Parameters.Add(new SqlParameter("@mail", textBox_MailAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@fecha_nac", dtp_fecha_nac.Value));
                    insertar.Parameters.Add(new SqlParameter("@estado_civil", (Int32)comboBox_EstadoCivilAfi.SelectedItem));
                    insertar.Parameters.Add(new SqlParameter("@sexo", (Int32)comboBox_SexoAfi.SelectedItem));
                    insertar.Parameters.Add(new SqlParameter("@id_plan", ((Plan)PlanMedAfi.SelectedItem).id_plan));
                    int familiares = 0;
                    //Le ponemos 0 a cargo porque no cuenta el conyuge y al agregar los demas se suman
                    // if (Int32.TryParse(textBox_CantFami.Text, out familiares)) ;
                    //else familiares = 0;
                    insertar.Parameters.Add(new SqlParameter("@familiares_a_cargo", familiares));

                    insertar.Parameters.Add(new SqlParameter("@id_familia_out", numFam));
                    Int64 id_afiliado = 0;
                    insertar.Parameters.Add(new SqlParameter("@id_afiliado_out", id_afiliado));
                    insertar.Parameters["@id_familia_out"].Direction  = ParameterDirection.Output;
                    insertar.Parameters["@id_afiliado_out"].Direction = ParameterDirection.Output;
                    insertar.ExecuteNonQuery();
                    numFam = (Int64)insertar.Parameters["@id_familia_out"].Value;

                    id_afiliado = (Int64)insertar.Parameters["@id_afiliado_out"].Value;
                }
                else if (tipo == 1 || tipo == 2)
                {
                    SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.insertarConyuge", DBConnector.ObtenerConexion());
                    insertar.CommandType = CommandType.StoredProcedure;
                    insertar.Parameters.Add(new SqlParameter("@id_familia", numFam));
                    insertar.Parameters.Add(new SqlParameter("@tipo_doc", (Int32)comboBox_TipoDoc.SelectedValue));
                    insertar.Parameters.Add(new SqlParameter("@n_doc", Decimal.Parse(textBox_NumDoc.Text)));
                    insertar.Parameters.Add(new SqlParameter("@nombre", textBox_NombAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@apellido", textBox_ApAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@direccion", textBox_DirecAfi.Text));
                    int telefono;
                    if (Int32.TryParse(textBox_TelAfi.Text, out telefono))
                    {
                        insertar.Parameters.Add(new SqlParameter("@telefono", Int64.Parse(textBox_TelAfi.Text)));
                    }
                    else
                    {
                        insertar.Parameters.Add(new SqlParameter("@telefono", DBNull.Value));
                    }
                    insertar.Parameters.Add(new SqlParameter("@mail", textBox_MailAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@fecha_nac", dtp_fecha_nac.Value));
                    insertar.Parameters.Add(new SqlParameter("@estado_civil", (Int32)comboBox_EstadoCivilAfi.SelectedItem));
                    insertar.Parameters.Add(new SqlParameter("@sexo", (Int32)comboBox_SexoAfi.SelectedItem));
                    insertar.Parameters.Add(new SqlParameter("@id_plan", ((Plan)PlanMedAfi.SelectedItem).id_plan));

                    Int64 id_afiliado = 0;
                    insertar.Parameters.Add(new SqlParameter("@id_afiliado_out", id_afiliado));
                    insertar.Parameters["@id_afiliado_out"].Direction = ParameterDirection.Output;
                    insertar.ExecuteNonQuery();

                    id_afiliado = (Int64)insertar.Parameters["@id_afiliado_out"].Value;
                }
                else
                {
                    SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.insertarDependiente", DBConnector.ObtenerConexion());
                    insertar.CommandType = CommandType.StoredProcedure;
                    insertar.Parameters.Add(new SqlParameter("@id_familia", numFam));
                    insertar.Parameters.Add(new SqlParameter("@tipo_doc", (Int32)comboBox_TipoDoc.SelectedValue));
                    insertar.Parameters.Add(new SqlParameter("@n_doc", Decimal.Parse(textBox_NumDoc.Text)));
                    insertar.Parameters.Add(new SqlParameter("@nombre", textBox_NombAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@apellido", textBox_ApAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@direccion", textBox_DirecAfi.Text));
                    int telefono;
                    if (Int32.TryParse(textBox_TelAfi.Text, out telefono))
                    {
                        insertar.Parameters.Add(new SqlParameter("@telefono", Int64.Parse(textBox_TelAfi.Text)));
                    }
                    else
                    {
                        insertar.Parameters.Add(new SqlParameter("@telefono", DBNull.Value));
                    }
                    insertar.Parameters.Add(new SqlParameter("@mail", textBox_MailAfi.Text));
                    insertar.Parameters.Add(new SqlParameter("@fecha_nac", dtp_fecha_nac.Value));
                    insertar.Parameters.Add(new SqlParameter("@estado_civil", (Int32)comboBox_EstadoCivilAfi.SelectedItem));
                    insertar.Parameters.Add(new SqlParameter("@sexo", (Int32)comboBox_SexoAfi.SelectedItem));
                    insertar.Parameters.Add(new SqlParameter("@id_plan", ((Plan)PlanMedAfi.SelectedItem).id_plan));

                    Int64 id_afiliado = 0;
                    insertar.Parameters.Add(new SqlParameter("@id_afiliado_out", id_afiliado));
                    insertar.Parameters["@id_afiliado_out"].Direction = ParameterDirection.Output;
                    insertar.ExecuteNonQuery();

                    id_afiliado = (Int64)insertar.Parameters["@id_afiliado_out"].Value;
                }


                MessageBox.Show("El afiliado fue agregado corrrectamente\n", "Clinica-FRBA", MessageBoxButtons.OK);
                //Casteo a tipo de dato, porque devuelve object

                if ((tipo == 0) && ((estado_civil)comboBox_EstadoCivilAfi.SelectedItem == estado_civil.Casado))
                {
                    DialogResult res = MessageBox.Show("¿Desea agregar a su conyuge?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (res == DialogResult.Yes)
                    {
                        NuevoAfiliado conyuge = new NuevoAfiliado(1, numFam);
                        this.Visible = false;
                        conyuge.ShowDialog();
                        this.Visible = true;
                    }
                }

                if ((tipo == 0) && ((estado_civil)comboBox_EstadoCivilAfi.SelectedItem == estado_civil.Concubinato))
                {
                    DialogResult res = MessageBox.Show("¿Desea agregar a su conyuge?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (res == DialogResult.Yes)
                    {
                        NuevoAfiliado conyuge = new NuevoAfiliado(2, numFam);
                        this.Visible = false;
                        conyuge.ShowDialog();
                        this.Visible = true;
                    }
                }

                if ((tipo == 0) && textBox_CantFami.TextLength > 0 && (int.Parse(textBox_CantFami.Text) > 0))
                {
                    int cantFamiliares = int.Parse(textBox_CantFami.Text);
                    for (int i = 0; i < cantFamiliares; i++)
                    {
                        DialogResult resultado = MessageBox.Show("¿Desea agregar un nuevo familiar a cargo?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                        if (resultado == DialogResult.Yes)
                        {
                            NuevoAfiliado familiar = new NuevoAfiliado(3, numFam);
                            this.Visible = false;
                            familiar.ShowDialog();
                            this.Visible = true;
                        }
                        else
                        {
                            break;
                        }
                    }
                }

                this.Close();
            }
        }