Ejemplo n.º 1
0
        private void btnGuardar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            using (TransactionScope scope = new TransactionScope())
            {
                //si la conexcion esta disponible
                if (Bl_Paciente.VerificarConecxion())
                {
                    //Si tengo seleccionado el tabPacientes, los botones estan enable false
                    if (tabPrincipalPacientes.SelectedTabPage == tabPacientes && txtNombres.Enabled == true)
                    {
                        //Validar los datos importantes

                        if (Controles.ValidarCampoVacio(txtNombres, "El campo" + " Nombre" + " debe ser completado", toolTipController1) ||
                            Controles.ValidarCampoVacio(txtApellidos, "El campo" + " Apellido" + " debe ser completado", toolTipController1) ||
                            Controles.ValidarCampoVacio(cmbTipoIdentificacion, "El campo" + " Tipo de Identificación" + " debe ser completado", toolTipController1) ||
                            Controles.ValidarCampoVacio(cmbGenero, "El campo" + " Genero" + " debe ser completado", toolTipController1) ||
                            Controles.ValidarCampoVacio(cmbTipoPaciente, "El campo" + " Tipo de Paciente" + " debe ser completado", toolTipController1)
                            )
                        {
                        }
                        else
                        if (!Controles.ValidarCedula(txtIdentificacion) && cmbTipoIdentificacion.Text == "Cédula")
                        {
                            Controles.MostrarMensajeCampoVacio(txtIdentificacion, "La cédula suministrada no es válida", toolTipController1);
                            txtIdentificacion.Focus();
                        }
                        else
                        if (!Controles.ValidarEmail(txtEmail) && txtEmail.Text != string.Empty)
                        {
                            Controles.MostrarMensajeCampoVacio(txtEmail, "El email suministrado no es valido", toolTipController1);
                            txtEmail.Focus();
                        }


                        else
                        {
                            DialogResult Respuesta = MessageBox.Show("Desea realmente guardar el registro?", "Smart Clinic", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                            if (Respuesta == DialogResult.Yes)
                            {
                                try
                                {
                                    //Valores Entidad Paciente
                                    txtIDPaciente.Text          = Convert.ToString(Bl_Paciente.SearchIDPaciente());//para actualizar
                                    paciente.IDPaciente         = txtIDPaciente.Text.Trim();
                                    paciente.Nombres            = txtNombres.Text;
                                    paciente.Apellidos          = txtApellidos.Text;
                                    paciente.IDTipoIdentifacion = cmbTipoIdentificacion.SelectedIndex;
                                    paciente.Identificacion     = txtIdentificacion.Text;
                                    paciente.Edad         = txtEdad.Text.Trim();
                                    paciente.Genero       = cmbGenero.Text;
                                    paciente.EstadoCivil  = cmbEstadoCivil.Text.Trim();
                                    paciente.TipoSangre   = cmbTipoSangre.Text.Trim();
                                    paciente.TipoPaciente = cmbTipoPaciente.SelectedIndex;
                                    paciente.Email        = txtEmail.Text;
                                    paciente.Direccion    = txtDireccion.Text;
                                    paciente.Peso         = txtPeso.Value;
                                    paciente.Altura       = txtAltura.Value;

                                    //-----------------------------------------------------INSERT--------------------------------------------------------------------//

                                    if (NUEVO == true)
                                    {
                                        //Valores Entidad Direcciones
                                        if (vistaDirecciones.RowCount > 0)
                                        {
                                            for (int i = 0; i < vistaDirecciones.RowCount; i++)
                                            {
                                                //paso el valor de la columna a la entidad al parecer es ese.
                                                direcciones.Direccion = Convert.ToString(vistaDirecciones.GetRowCellValue(i, "Direcciones")).Trim();


                                                if (!Bl_Direcciones.Insert(direcciones))
                                                {
                                                    seGuardoDirecciones = false;
                                                    MessageBox.Show("Hay problemas para insertar las direcciones del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                                }
                                            }    //fin del for dtgDireccionn
                                        }        //fin insert direcciones

                                        if (vistaTelefonos.RowCount > 0 && seGuardoDirecciones == true)
                                        {
                                            for (int i = 0; i < vistaTelefonos.RowCount; i++)
                                            {
                                                telefonos.Telefono = Convert.ToString(vistaTelefonos.GetRowCellValue(i, "Teléfonos")).Trim();

                                                if (!Bl_Telefono.Insert(telefonos))
                                                {
                                                    seGuardoTelefonos = false;
                                                    MessageBox.Show("Hay problemas para insertar los telefonos del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                                }
                                            }    //fin del for dtgTelefonos
                                        }        //fin insert Telefonos

                                        if (VistaContactos.RowCount > 0 && seGuardoTelefonos == true)
                                        {
                                            for (int i = 0; i < VistaContactos.RowCount; i++)
                                            {
                                                contacto.Contacto = Convert.ToString(VistaContactos.GetRowCellValue(i, "Contacto")).Trim();
                                                contacto.Telefono = Convert.ToString(VistaContactos.GetRowCellValue(i, "Teléfono")).Trim();

                                                if (!Bl_Contacto.Insert(contacto))
                                                {
                                                    seGuardoContactos = false;
                                                    MessageBox.Show("Hay problemas para insertar los contactos del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                                }
                                            }    //fin del for dtgContactos
                                        }        //fin insert Contactos


                                        if (seGuardoDirecciones == true && seGuardoTelefonos == true && seGuardoContactos == true)
                                        {
                                            if (Bl_Paciente.Insert(paciente))
                                            {
                                                txtIDPaciente.Text = Bl_Paciente.SearchIDPaciente().ToString();
                                                //Si todo paso bien

                                                NUEVO = true;

                                                //Deshabilito los Txt
                                                Controles.DeshabilitarText(frm_pacientes);

                                                //Deshabilito los Datagried
                                                Controles.DeshabilitarDGV(frm_pacientes);

                                                MessageBox.Show("Los datos del paciente fueron insertados correctamente", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                            }
                                            else
                                            {
                                                MessageBox.Show("Hay problemas para insertar los datos en general del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                            }
                                        }
                                    }        //fin del NUEVO

                                    //-----------------------------------------------------UPDATE--------------------------------------------------------------------//

                                    //si existe un problema entonces muestro un mensaje de aviso al usuario.
                                    else
                                    if (EDITANDO == true)
                                    {
                                        //Valores Entidad Direcciones
                                        if (vistaDirecciones.RowCount > 0)
                                        {
                                            if (Bl_Direcciones.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())))
                                            {
                                                for (int i = 0; i < vistaDirecciones.RowCount; i++)
                                                {
                                                    direcciones.IDPaciente = txtIDPaciente.Text.Trim();
                                                    direcciones.Direccion  = Convert.ToString(vistaDirecciones.GetRowCellValue(i, "Direcciones")).Trim();

                                                    if (!Bl_Direcciones.Update(direcciones))
                                                    {
                                                        seGuardoDirecciones = false;
                                                        MessageBox.Show("Hay problemas para actualizar las direcciones del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                                    }
                                                }
                                            }
                                        }

                                        if (vistaTelefonos.RowCount > 0 && seGuardoDirecciones == true)
                                        {
                                            if (Bl_Telefono.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())))
                                            {
                                                for (int i = 0; i < vistaTelefonos.RowCount; i++)
                                                {
                                                    telefonos.IDPaciente = txtIDPaciente.Text.Trim();
                                                    telefonos.Telefono   = Convert.ToString(vistaTelefonos.GetRowCellValue(i, "Teléfonos")).Trim();


                                                    if (!Bl_Telefono.Update(telefonos))
                                                    {
                                                        seGuardoTelefonos = false;
                                                        MessageBox.Show("Hay problemas para actualizar los telefonos del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                                    }
                                                }
                                            }
                                        }

                                        if (VistaContactos.RowCount > 0 && seGuardoTelefonos == true)
                                        {
                                            if (Bl_Contacto.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())))
                                            {
                                                for (int i = 0; i < VistaContactos.RowCount; i++)
                                                {
                                                    contacto.IDContacto = txtIDPaciente.Text.Trim();
                                                    contacto.Contacto   = Convert.ToString(VistaContactos.GetRowCellValue(i, "Contacto")).Trim();
                                                    contacto.Telefono   = Convert.ToString(VistaContactos.GetRowCellValue(i, "Teléfono")).Trim();

                                                    if (!Bl_Contacto.Update(contacto))
                                                    {
                                                        seGuardoContactos = false;
                                                        MessageBox.Show("Hay problemas para actualizar los contactos del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                                    }
                                                }            //fin del for dtgContactos
                                            }
                                        }

                                        if (seGuardoDirecciones == true && seGuardoTelefonos == true && seGuardoContactos == true)
                                        {
                                            if (Bl_Paciente.Update(paciente))
                                            {
                                                //Deshabilito los Txt
                                                Controles.DeshabilitarText(frm_pacientes);

                                                //Deshabilito los Datagried
                                                Controles.DeshabilitarDGV(frm_pacientes);

                                                NUEVO    = true;
                                                EDITANDO = false;


                                                MessageBox.Show("La edición se realizó correctamente", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                            }
                                            else
                                            {
                                                MessageBox.Show("Hay problemas para actualizar los datos en general del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                            }
                                        }
                                    }    //fin del if UPDATE
                                }        //FIN DEL TRY


                                catch (Exception)
                                {
                                    MessageBox.Show("Hubo un error para obtener los datos del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                        }        //desea guardar??
                    }//Fin del If TabControl


                    //si todo esta bien y es el fin del If Tabcontrol envia los datos al sevidor
                }
                else
                if (!Bl_Paciente.VerificarConecxion() && txtNombres.Enabled == true)
                {
                    //si no hay una conexcion a la base de datos entonces emitira este mensaje.
                    MessageBox.Show("Hay problemas de conexión a la base de datos, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                scope.Complete();
            }//fin del Using Scope
        }
Ejemplo n.º 2
0
        private void btnEliminar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            //si tenemos el tabpaciente activo y textID no esta vacio y no se esta editando entonces borra.
            if (tabPrincipalPacientes.SelectedTabPage == tabPacientes && !string.IsNullOrEmpty(txtIDPaciente.Text) && EDITANDO == false)
            {
                DialogResult Respuesta = MessageBox.Show("Desea realmente eliminar el registro?", "Smart Clinic", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                if (Respuesta == DialogResult.Yes)
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        try
                        {
                            //Si nunguno de los metodos de borrar emite un error entonces borra

                            if (!Bl_Paciente.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())) && !Bl_Direcciones.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())) &&
                                !Bl_Telefono.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())) && !Bl_Contacto.Delete(Convert.ToInt32(txtIDPaciente.Text.Trim())))
                            {
                                MessageBox.Show("Hubo problemas eliminando los datos del paciente, comuniquese con el administrador del sistema, disculpe los inconvenientes", "Smart Clinic", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            else
                            {
                                //Limpio los Txt
                                Controles.VaciarText(frm_pacientes);

                                //Limpio los DatagriedView
                                Controles.VaciarDGV(frm_pacientes);

                                //Deshabilito los Txt
                                Controles.DeshabilitarText(frm_pacientes);

                                //Deshabilito los Datagried
                                Controles.DeshabilitarDGV(frm_pacientes);
                            }
                        }
                        catch (Exception)
                        {
                            throw;
                        }


                        scope.Complete();
                    } //fin del Scope
                }
            }         // fin del if
        }