public async Task <int> InsertarHistoriaClinicaAsync(HistoriaClinica historia)
        {
            HistoriaClinicaDAL dal = new HistoriaClinicaDAL();
            var dalp = new PacienteDAL();

            return(await dal.InsertarHistoriaClinicaAsync(historia));
        }
Exemple #2
0
        public void llenarHistoriasClinicas()
        {
            historiaClinica = new HistoriaClinica();
            paciente        = new Paciente();
            SqlConnection conexion = DataBase.obtenerConexion();
            string        consulta = "SELECT numeroHistoria, tblPaciente.cedulaPaciente, nombres, apellidoPaterno, apellidoMaterno FROM tblHistoriaClinica INNER JOIN " +
                                     "tblPaciente ON tblHistoriaClinica.cedulaPaciente = tblPaciente.cedulaPaciente";
            SqlCommand    comando = new SqlCommand(consulta, conexion);
            SqlDataReader reader  = comando.ExecuteReader();

            if (reader.HasRows)
            {
                while (reader.Read())
                {
                    historiaClinica.NumeroHistoria = reader.GetInt32(0);
                    paciente.Cedula          = reader.GetString(1);
                    paciente.Nombres         = reader.GetString(2);
                    paciente.ApellidoPaterno = reader.GetString(3);
                    paciente.ApellidoMaterno = reader.GetString(4);
                    historiaClinica.Paciente = paciente;
                    historiasClinicas.Add(historiaClinica);
                    historiaClinica = new HistoriaClinica();
                    paciente        = new Paciente();
                }
                reader.Close();
                DataBase.cerrarConexion(conexion);
            }
        }
        public async Task <HistoriaClinica> BuscarHistoriaClinicaAsync(string dni)
        {
            HistoriaClinicaDAL dal = new HistoriaClinicaDAL();
            var historia           = new HistoriaClinica();

            ListHistoriaClinica = await dal.GetHistoriaClinicaAsync();

            bool flag = false;

            foreach (var item in ListHistoriaClinica)
            {
                if (item.Dni == dni)
                {
                    flag     = true;
                    historia = item;
                    break;
                }
            }
            if (flag)
            {
                return(historia);
            }
            else
            {
                historia = null;
            }
            return(historia);
        }
        public async Task <int> InsertarHistoriaClinicaAsync(HistoriaClinica historia)
        {
            MySqlConnection conexion       = AbrirConexionSql();
            string          sql            = "INSERT into historiasclinicas (IdHistoria, CodEspecialidad, FechaApertura, Peso, Talla, Dni) values (@IdHistoria, @CodEspecialidad, @FechaApertura, @Peso, @Talla, @Dni)";
            string          sqlp           = "update pacientes set IdHistoria = @IdHistoria where Dni = @Dni;";
            int             FilasAfectadas = 0;

            try
            {
                if (conexion != null)
                {
                    FilasAfectadas = await conexion.ExecuteAsync(sql, new { IdHistoria = historia.IdHistoria, CodEspecialidad = historia.CodEspecialidad, FechaApertura = historia.FechaApertura, Peso = historia.Peso, Talla = historia.Talla, Dni = historia.Dni });

                    FilasAfectadas = await conexion.ExecuteAsync(sqlp, new { IdHistoria = historia.IdHistoria, Dni = historia.Dni });
                }
                return(FilasAfectadas);
            }
            catch
            {
                return(FilasAfectadas);
            }
            finally
            {
                if (conexion.State == System.Data.ConnectionState.Open)
                {
                    conexion.Close();
                }
            }
        }
Exemple #5
0
        private void btnEliminar_Click(object sender, EventArgs e)
        {
            HistoriaClinica historiaClinica = new HistoriaClinica();

            historiaClinica.eliminarHC(txtCI.Text);
            dataGridView1.DataSource = historiaClinica.listarHC();
        }
Exemple #6
0
        //CREA UN NUEVO DIAGNOSTICO PARA EL PACIENTE//
        public bool CrearHistoria(HistoriaClinica historia)
        {
            AccesoDatos conexion = null;

            try
            {
                conexion = new AccesoDatos();
                conexion.setearConsulta("Insert into HISTORIAS_CLINICAS (ID_PACIENTE,ID_MEDICO,FECHA_SOLICITUD," +
                                        "DIAGNOSTICO, FEC_PROCESO,USUARIO) VALUES (@ID_Paciente,@ID_Medico," +
                                        "@Fecha_Solicitud,@Diagnistico,@FEC_PROSESO,@USUARIO)");

                conexion.Comando.Parameters.AddWithValue("@ID_Paciente", historia.paciente.dni);
                conexion.Comando.Parameters.AddWithValue("@ID_Medico", historia.medico.dni);
                conexion.Comando.Parameters.AddWithValue("@Fecha_Solicitud", historia.fecha);
                conexion.Comando.Parameters.AddWithValue("@Diagnistico", historia.comentario);
                conexion.Comando.Parameters.AddWithValue("@FEC_PROSESO", DateTime.Now);
                conexion.Comando.Parameters.AddWithValue("@USUARIO", Usuario.User.id);


                conexion.abrirConexion();
                conexion.ejecutarAccion();
            }
            catch (Exception ex)
            {
                return(false);
            }
            finally
            {
                if (conexion != null)
                {
                    conexion.cerrarConexion();
                }
            }
            return(true);
        }
        public ActionResult AgregarHistoria(int idPaciente)
        {
            HistoriaClinica historia = new HistoriaClinica();

            idPacienteParaHistoria = idPaciente;
            return(View("AgregarHistoria", historia));
        }
Exemple #8
0
        private void btnBuscar_Click(object sender, EventArgs e)
        {
            HistoriaClinica historiaClinica = new HistoriaClinica();

            RtxtAlergias.Text     = historiaClinica.MostrarA(txtCedula.Text);
            RtxtEnfermedades.Text = historiaClinica.MostrarE(txtCedula.Text);
        }
Exemple #9
0
        public IHttpActionResult PutHistoriaClinica(int id, HistoriaClinica historiaClinica)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != historiaClinica.idHiistoriaClinica)
            {
                return(BadRequest());
            }

            db.Entry(historiaClinica).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!HistoriaClinicaExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public Registro CreateRegistro(RegistroDTO registro)
        {
            DateTime fechaconsulta = DateTime.Now;

            var entity = new Registro
            {
                Analisis        = registro.Analisis,
                Diagnostico     = registro.Diagnostico,
                EspecialistaId  = registro.EspecialistaId,
                FechaRegistro   = DateTime.Now,
                MotivoConsulta  = registro.MotivoConsulta,
                ProximaRevision = registro.ProximaRevision,
                Receta          = registro.Receta,
            };

            _repository.Add <Registro>(entity);
            // add HC
            var hc = new HistoriaClinica
            {
                PacienteId = registro.pacienteId,
                RegistroId = entity.RegistroId
            };

            _repository.Add <HistoriaClinica>(hc);
            return(entity);
        }
        public ActionResult Create(Mascota mascota)
        {
            if (ModelState.IsValid)
            {
                mascota.propietario = Convert.ToInt64(mascota.id);
                mascota.id          = Metodos.generarCodigo();
                if (mascota.fecha_nacimiento > DateTime.Now)
                {
                    ModelState.AddModelError("", "La fecha de nacimiento no puede ser mayor a la fecha actual");
                }
                else
                {
                    var historia = new HistoriaClinica();
                    historia.id             = mascota.id;
                    historia.fecha_creacion = DateTime.Now.Date;
                    db.HistoriaClinicas.Add(historia);

                    db.Mascotas.Add(mascota);
                    db.SaveChanges();
                    return(RedirectToAction("Details", "Propietarios", new { id = mascota.propietario }));
                }
            }

            ViewBag.id = new SelectList(db.HistoriaClinicas, "id", "id", mascota.id);


            ViewBag.especie = new SelectList(db.Especies.OrderBy(t => t.nombre), "id", "nombre");
            ViewBag.raza    = new SelectList(db.Razas.OrderBy(t => t.nombre).Where(tt => tt.idEspecie == db.Especies.FirstOrDefault().id), "id", "nombre");
            return(View(mascota));
        }
        public static List <HistoriaClinica> ObtenerMovimientosDelArchivo(string identificacion)
        {
            List <HistoriaClinica> HistoriasClinicas = new List <HistoriaClinica>();

            string[] archivoHistoriaClinica = File.ReadAllLines(nombreArchivo);

            for (int i = 0; i < archivoHistoriaClinica.Length; i++)
            {
                var linea = archivoHistoriaClinica[i];

                if (!string.IsNullOrEmpty(linea))
                {
                    var historiaClinicaNueva = new HistoriaClinica();

                    historiaClinicaNueva.IdentificacionPaciente = linea.Substring(0, 8);
                    historiaClinicaNueva.IdentificacionMedico   = linea.Substring(8, 10);
                    historiaClinicaNueva.MotivoIngreso          = linea.Substring(18, 70);
                    historiaClinicaNueva.Diagnostico            = linea.Substring(88, 80);
                    historiaClinicaNueva.Tratamiento            = linea.Substring(168, 100);
                    historiaClinicaNueva.Fecha = DateTime.Parse(linea.Substring(268, 10));

                    HistoriasClinicas.Add(historiaClinicaNueva);
                }
            }

            return(HistoriasClinicas
                   .Where(x => x.IdentificacionPaciente == identificacion)
                   .ToList());
        }
Exemple #13
0
        public ActionResult DeleteConfirmed(int id)
        {
            HistoriaClinica historiaClinica = db.HistoriaClinica.Find(id);

            db.HistoriaClinica.Remove(historiaClinica);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public async Task <int> UpdateHistoriaClinicaAsync(HistoriaClinica historia, string dni)
        {
            HistoriaClinicaDAL dal = new HistoriaClinicaDAL();

            return(await dal.UpdateHistoriaClinicaAsync(historia, dni));

            //return alumno;
        }
Exemple #15
0
 public void InsertarHistoriaClinica(Paciente user)
 {
     HistoriaClinica historiaclinica = new HistoriaClinica()
     {
         FechaCreacion = DateTime.Now,
         Anamnesis     = null
     };
 }
Exemple #16
0
        // GET IDHistoria
        public ActionResult GetIDHistoria(string TextBuscar)
        {
            HistoriaClinicaManager Manager  = new HistoriaClinicaManager();
            HistoriaClinica        Paciente = Manager.ConsultarIDHistoria(TextBuscar);

            ViewBag.HistoriaClinica = Paciente;

            return(View("~/Views/HistoriaClinica/HistoriaBuscar.cshtml"));
        }
Exemple #17
0
        // GET Historia Clinica
        public ActionResult GetHistoria(string ID)
        {
            HistoriaClinicaManager Manager  = new HistoriaClinicaManager();
            HistoriaClinica        Paciente = Manager.ConsultarHistoria(ID);

            ViewBag.HistoriaClinica = Paciente;

            return(View("~/Views/HistoriaClinica/VerHistoria.cshtml"));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            HistoriaClinica historiaClinica = await db.HistoriaClinicas.FindAsync(id);

            db.HistoriaClinicas.Remove(historiaClinica);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
 public void asignarHistoriaClinica(Object historia)
 {
     this.historiaClinica          = (HistoriaClinica)historia;
     txtNumeroHistoriaClinica.Text = Convert.ToString(historiaClinica.NumeroHistoria);
     txtCedula.Text          = historiaClinica.Paciente.Cedula;
     txtNombres.Text         = historiaClinica.Paciente.Nombres;
     txtApellidoPaterno.Text = historiaClinica.Paciente.ApellidoPaterno;
     txtApellidoMaterno.Text = historiaClinica.Paciente.ApellidoMaterno;
 }
Exemple #20
0
        public async Task <IActionResult> RegistrarPaciente(PacienteDto model)
        {
            if (ModelState.IsValid)
            {
                Usuario usuario = new Usuario();
                usuario.NormalizedEmail    = model.Email.ToUpper();
                usuario.Email              = model.Email;
                usuario.UserName           = model.Email;
                usuario.NormalizedUserName = model.Email.ToUpper();

                var resultadoDeCreacion = await _usrmgr.CreateAsync(usuario, model.Password);

                if (resultadoDeCreacion.Succeeded)
                {
                    Paciente paciente = new Paciente();
                    paciente.ObraSocial = model.ObraSocial;
                    paciente.Nombre     = model.Nombre;
                    paciente.Apellido   = model.Apellido;
                    paciente.DNI        = model.DNI;
                    paciente.FechaAlta  = DateTime.Now;
                    paciente.Direccion  = model.Direccion;
                    paciente.Telefono   = model.Telefono;
                    paciente.Email      = model.Email;
                    paciente.UsuarioId  = usuario.Id;
                    paciente.Usuario    = usuario;
                    _contexto.Pacientes.Add(paciente);

                    var nuevaHistoriaClinica = new HistoriaClinica();
                    nuevaHistoriaClinica.PacienteId = paciente.Id;
                    nuevaHistoriaClinica.Paciente   = paciente;
                    nuevaHistoriaClinica.Episodios  = new List <Episodio>();
                    _contexto.HistoriaClinicas.Add(nuevaHistoriaClinica);
                    paciente.HistoriaClinica = nuevaHistoriaClinica;

                    _contexto.SaveChanges();


                    await _usrmgr.AddToRoleAsync(usuario, "Paciente");

                    if (!_signinmgr.IsSignedIn(User))
                    {
                        await _signinmgr.SignInAsync(usuario, isPersistent : false);
                    }

                    return(RedirectToAction("Index", "Home"));
                }

                //tratamiento para los errores
                foreach (var error in resultadoDeCreacion.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }

            return(View(model));
        }
        public ActionResult BorrarHistoria(int?id)
        {
            HistoriaClinica historia = db.HistoriaClinicas.Find(id);

            if (historia == null)
            {
                return(HttpNotFound());
            }
            return(View(historia));
        }
Exemple #22
0
 public ActionResult Edit([Bind(Include = "ID_HistClinica,IDPaciente,Fecha_Nacimiento,Antecedentes_Medicos,Alergias,Enfermedades_Hereditarias,Observaciones,Fotografias")] HistoriaClinica historiaClinica)
 {
     if (ModelState.IsValid)
     {
         db.Entry(historiaClinica).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.IDPaciente = new SelectList(db.Paciente, "Cedula", "Nombre", historiaClinica.IDPaciente);
     return(View(historiaClinica));
 }
Exemple #23
0
        public IHttpActionResult GetHistoriaClinica(int id)
        {
            HistoriaClinica historiaClinica = db.HistoriaClinica.Find(id);

            if (historiaClinica == null)
            {
                return(NotFound());
            }

            return(Ok(historiaClinica));
        }
Exemple #24
0
        public ActionResult GuardarHistoria(string ApellidoyNombre, string DNI, string Nacionalidad, string Genero, string EstadoCivil, string FechaNacimiento, string EstudiosAlcanzados, string Carrera, string Ocupacion, string Residencia, string VSVinculo, string VSApellidoyNombre, string VSFechaNacimiento, string VSOcupacion, string VSConvive, string ObraSocial, string Plan, string Credencial, string Observaciones, string Sintomas, string DFecha, string DDSM, string DNombre, string MApellidoyNombre, string Especialidad, string Contacto, string Droga, string Dosis, HttpPostedFileBase FotoPerfil, int Celular, int Telefono, string Email, string Skype, string Direccion, string NRNombreyVinculo, string NRNumero)
        {
            HistoriaClinica Paciente = new HistoriaClinica();

            Paciente.ApellidoyNombre    = ApellidoyNombre;
            Paciente.DNI                = DNI;
            Paciente.Nacionalidad       = Nacionalidad;
            Paciente.Genero             = Genero;
            Paciente.EstadoCivil        = EstadoCivil;
            Paciente.FechaNacimiento    = FechaNacimiento;
            Paciente.EstudiosAlcanzados = EstudiosAlcanzados;
            Paciente.Carrera            = Carrera;
            Paciente.Ocupacion          = Ocupacion;
            Paciente.Residencia         = Residencia;
            Paciente.VSVinculo          = VSVinculo;
            Paciente.VSApellidoyNombre  = VSApellidoyNombre;
            Paciente.VSFechaNacimiento  = VSFechaNacimiento;
            Paciente.VSOcupacion        = VSOcupacion;
            Paciente.VSConvive          = VSConvive;
            Paciente.ObraSocial         = ObraSocial;
            Paciente.Plan               = Plan;
            Paciente.Credencial         = Credencial;
            Paciente.Observaciones      = Observaciones;
            Paciente.Sintomas           = Sintomas;
            Paciente.DFecha             = DFecha;
            Paciente.DDSM               = DDSM;
            Paciente.DNombre            = DNombre;
            Paciente.MApellidoyNombre   = MApellidoyNombre;
            Paciente.Especialidad       = Especialidad;
            Paciente.Contacto           = Contacto;
            Paciente.Droga              = Droga;

            if (FotoPerfil != null)
            {
                FotoPerfil.SaveAs(Server.MapPath("~/Content/FotoPerfilHistoria/" + DNI + ".jpg"));
            }

            Paciente.Dosis            = Dosis;
            Paciente.Celular          = Celular;
            Paciente.Telefono         = Telefono;
            Paciente.Email            = Email;
            Paciente.Skype            = Skype;
            Paciente.Direccion        = Direccion;
            Paciente.NRNombreyVinculo = NRNombreyVinculo;
            Paciente.NRNumero         = NRNumero;

            HistoriaClinicaManager Manager = new HistoriaClinicaManager();

            Manager.InsertarHistoriaClinica(Paciente);

            return(GetHistoria(Paciente.ID));
            //RedirectToAction("GetHistoria", "HistoriaClinica");
        }
 public ActionResult Edit([Bind(Include = "IdHistoriaClinica,FechaAtencion,Descripcion,IdPaciente,IdTurno")] HistoriaClinica historiaClinica)
 {
     if (ModelState.IsValid)
     {
         db.Entry(historiaClinica).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.IdPaciente = new SelectList(db.Paciente, "IdPaciente", "Nombres", historiaClinica.IdPaciente);
     ViewBag.IdTurno    = new SelectList(db.Turno, "IdTurno", "Diagnostico", historiaClinica.IdTurno);
     return(View(historiaClinica));
 }
Exemple #26
0
        public IHttpActionResult PostHistoriaClinica(HistoriaClinica historiaClinica)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.HistoriaClinica.Add(historiaClinica);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = historiaClinica.idHiistoriaClinica }, historiaClinica));
        }
 public ActionResult ModificarHistoria(int id, HistoriaClinica historia)
 {
     if (ModelState.IsValid)
     {
         db.Entry(historia).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("MostrarHistoria", historia.ID));
     }
     else
     {
         return(View("ModificarHistoria", historia));
     }
 }
        public async Task <ActionResult> Edit([Bind(Include = "Id,PacienteId,TurnoId,Motivo,Detalle,Comentario")] HistoriaClinica historiaClinica)
        {
            if (ModelState.IsValid)
            {
                db.Entry(historiaClinica).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewBag.PacienteId = new SelectList(db.Pacientes, "Id", "Nombre", historiaClinica.PacienteId);
            ViewBag.TurnoId    = new SelectList(db.Turnos, "Id", "Id", historiaClinica.TurnoId);
            return(View(historiaClinica));
        }
Exemple #29
0
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        ClinicaDataContext db = new ClinicaDataContext();

        if (Request.QueryString["id"] == null)
        {
            HistoriaClinica hist = new HistoriaClinica();
            db.HistoriaClinicas.InsertOnSubmit(hist);
            hist.Alergias = "";
            hist.AntecedentesFamiliares = "";
            hist.Enfermedades           = "";
            hist.GrupoSanguineo         = "";
            db.SubmitChanges();
            Paciente temp = new Paciente();
            temp.Nombre          = txtNombre.Text;
            temp.Apellido        = txtApellido.Text;
            temp.Sexo            = Char.Parse(txtSexo.Text);
            temp.Dni             = Int32.Parse(txtDNI.Text);
            temp.FechaNacimiento = Convert.ToDateTime(txtFecha.Text);
            temp.EstadoCivil     = Char.Parse(txtEstadoCivil.Text);
            temp.Domicilio       = txtDomicilio.Text;
            temp.Localidad       = txtLocalidad.Text;
            temp.Telefono        = txtTelefono.Text;
            temp.Ocupacion       = txtOcupacion.Text;
            temp.Email           = txtEmail.Text;
            db.Pacientes.InsertOnSubmit(temp);
            temp.ID_HistoriaClinica = hist.ID_HistoriaClinica;
            db.SubmitChanges();
        }
        else
        {
            var temp = (from pac in db.Pacientes
                        where pac.ID_Paciente == Convert.ToInt32(Request.QueryString["id"])
                        select pac).Single();

            temp.Nombre          = txtNombre.Text;
            temp.Apellido        = txtApellido.Text;
            temp.Dni             = Int32.Parse(txtDNI.Text);
            temp.Sexo            = Char.Parse(txtSexo.Text);
            temp.EstadoCivil     = Char.Parse(txtEstadoCivil.Text);
            temp.FechaNacimiento = Convert.ToDateTime(txtFecha.Text);
            temp.Domicilio       = txtDomicilio.Text;
            temp.Localidad       = txtLocalidad.Text;
            temp.Telefono        = txtTelefono.Text;
            temp.Email           = txtEmail.Text;
            temp.Ocupacion       = txtOcupacion.Text;
            db.SubmitChanges();
        }

        Response.Redirect("Pacientes.aspx");
    }
Exemple #30
0
        public IHttpActionResult DeleteHistoriaClinica(int id)
        {
            HistoriaClinica historiaClinica = db.HistoriaClinica.Find(id);

            if (historiaClinica == null)
            {
                return(NotFound());
            }

            db.HistoriaClinica.Remove(historiaClinica);
            db.SaveChanges();

            return(Ok(historiaClinica));
        }
        //Convierte un objeto DTO en una Entity de NHibernate, sus propiedades basicas
        //y utiliza el metodo Transformer de sus objetos mas complejos
        public static HistoriaClinicaDTO EntityToDTO(HistoriaClinica pHistoriaClinica)
        {
            HistoriaClinicaDTO pReturn = new HistoriaClinicaDTO();
            pReturn.ID = pHistoriaClinica.ID;
            pReturn.IdPaciente = pHistoriaClinica.IdPaciente;
            pReturn.AntecedentesFamiliares = pHistoriaClinica.AntecedentesFamiliares;
            pReturn.AntecedentesPersonales = pHistoriaClinica.AntecedentesPersonales;
            pReturn.DatosDeInteres = pHistoriaClinica.DatosDeInteres;
            if (pHistoriaClinica.IdPacienteLookup != null)
                pReturn.IdPacienteLookup = TransformerPaciente.EntityToDTO(pHistoriaClinica.IdPacienteLookup);

            //Consultas
            if (pHistoriaClinica.Consultas != null)
            {
                foreach (Consulta pObj in pHistoriaClinica.Consultas)
                {
                    pReturn.Consultas.Add(TransformerConsulta.EntityToDTO(pObj));
                }
            }

            return pReturn;
        }
        private void btnAccept_Click(object sender, EventArgs e)
        {
            try
            {
                if (ValidData())
                {
                    PacienteEntity.Nombre = txtNombre.Text;
                    PacienteEntity.Apellido = txtApellido.Text;
                    PacienteEntity.Direccion = txtDireccion.Text;
                    PacienteEntity.TipoDocumento = Convert.ToInt32(cmbTipoDocumento.SelectedItem);
                    PacienteEntity.NumeroDocumento = Convert.ToDecimal(txtNumeroDocumento.Text);
                    PacienteEntity.CorreoElectronico = txtCorreoElectronico.Text;
                    PacienteEntity.FechaNacimiento = dtpFechaNacimiento.Value;
                    if ((Enumeraciones.Sexo)cmbSexo.SelectedItem == Enumeraciones.Sexo.M)
                    {
                        PacienteEntity.Sexo = Constantes.Sexo.Masculino;
                    }
                    else
                    {
                        PacienteEntity.Sexo = Constantes.Sexo.Femenino;
                    }
                    PacienteEntity.Comentario = txtComentario.Text;
                    PacienteEntity.Telefono = txtTelefono.Text;
                    PacienteEntity.Celular = txtCelular.Text;
                    //PacienteEntity.IDCiudad = (Int32)cmbCiudad.SelectedValue;
                    PacienteEntity.IDCiudad = (Int32)txtCiudad.Tag;

                    switch (Estado)
                    {
                        case EstadoForm.Editar:
                            PacienteEntity.HistoriaClinicas[0].FechaInicioAtencion = dtpInicioAtencion.Value;
                            PacienteEntity.HistoriaClinicas[0].Observaciones = txtObservaciones.Text;
                            PacienteEntity.HistoriaClinicas[0].AntecedentesHereditarios = txtAntecedentesHereditarios.Text;
                            PacienteEntity.HistoriaClinicas[0].AntecedentesPersonales = txtAntecedentesPersonales.Text;
                            PacienteEntity.HistoriaClinicas[0].EstadoSalud = txtEstadoSalud.Text;
                            PacienteBP.Update(PacienteEntity);
                            PacienteBP.Commit();

                            //ObraSocialXPacienteBusiness wObraSocialXPacienteBP = new ObraSocialXPacienteBusiness(DaoFactory.GetObraSocialXPacienteDao());
                            ////Borramos las anteriores
                            //ObraSocialXPaciente wObraSocialesABorrar = new ObraSocialXPaciente();
                            //wObraSocialesABorrar.IDPacienteLookup = PacienteEntity;
                            //wObraSocialesABorrar.IDPaciente = PacienteEntity.ID;
                            //wObraSocialXPacienteBP.Delete(wObraSocialesABorrar);
                            //wObraSocialXPacienteBP.Commit();
                            ////Agregamos las nuevas
                            //foreach (ObraSocialXPaciente wObraSocialXPaciente in PacienteEntity.ObraSocialXPacientes)
                            //{
                            //    wObraSocialXPaciente.IDPaciente = PacienteEntity.ID;
                            //    wObraSocialXPacienteBP.Insert(wObraSocialXPaciente);
                            //}
                            break;
                        case EstadoForm.Eliminar:
                            PacienteBP.Delete(PacienteEntity);
                            PacienteBP.Commit();
                            ////Borra la Historia clinica
                            //HistoriaClinicaBusiness HistoriaClinicaBP = new HistoriaClinicaBusiness(DaoFactory.GetHistoriaClinicaDao());
                            //HistoriaClinica wHistoria = new HistoriaClinica();
                            //wHistoria.ID = PacienteEntity.HistoriaClinicas[0].ID;
                            //HistoriaClinicaBP.Delete(wHistoria);
                            //HistoriaClinicaBP.Commit();
                            ////Borramos las Obras Sociales
                            //ObraSocialXPaciente wObraSocialesABorrar2 = new ObraSocialXPaciente();
                            //wObraSocialesABorrar2.IDPacienteLookup = PacienteEntity;
                            //wObraSocialesABorrar2.IDPaciente = PacienteEntity.ID;
                            //ObraSocialXPacienteBusiness wObraSocialXPacienteBP2 = new ObraSocialXPacienteBusiness(DaoFactory.GetObraSocialXPacienteDao());
                            //wObraSocialXPacienteBP2.Delete(wObraSocialesABorrar2);
                            //wObraSocialXPacienteBP2.Commit();
                            break;
                        case EstadoForm.Nuevo:

                            HistoriaClinica wHistoriaNuevo = new HistoriaClinica();
                            wHistoriaNuevo.FechaInicioAtencion = dtpInicioAtencion.Value;
                            wHistoriaNuevo.Observaciones = txtObservaciones.Text;
                            wHistoriaNuevo.AntecedentesHereditarios = txtAntecedentesHereditarios.Text;
                            wHistoriaNuevo.AntecedentesPersonales = txtAntecedentesPersonales.Text;
                            wHistoriaNuevo.EstadoSalud = txtEstadoSalud.Text;
                            wHistoriaNuevo.IDPacienteLookup = PacienteEntity;
                            PacienteEntity.HistoriaClinicas.Add(wHistoriaNuevo);
                            PacienteBP.Insert(PacienteEntity);
                            break;
                    }
                    pnlDetails.Visible = false;
                    CambiarTamaño(true);
                    Estado = EstadoForm.Grilla;
                    LoadList(false);
                }
            }

            catch (Exception ex)
            {
                ProcesarExcepcion(ex);
            }
        }