Пример #1
0
        public bool GuardarSignosVitales(NOTA_SIGNOS_VITALES Entity, short Anio, int IdImputado, short?IdCentro, short IdIngreso)
        {
            try
            {
                using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions()
                {
                    IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
                }))
                {
                    var AtencionMedica = new ATENCION_MEDICA
                    {
                        ID_TIPO_ATENCION   = (short)eTipoAtencionMedica.CONSULTA_MEDICA,
                        ID_ANIO            = Anio,
                        ID_IMPUTADO        = IdImputado,
                        ID_CENTRO          = IdCentro,
                        ID_INGRESO         = IdIngreso,
                        ID_ATENCION_MEDICA = GetSequence <short>("ATENCION_MEDICA_SEQ")
                    };

                    var SignoVital = new NOTA_SIGNOS_VITALES
                    {
                        FRECUENCIA_CARDIAC = Entity.FRECUENCIA_CARDIAC,
                        FRECUENCIA_RESPIRA = Entity.FRECUENCIA_RESPIRA,
                        ID_ATENCION_MEDICA = AtencionMedica.ID_ATENCION_MEDICA,
                        ID_RESPONSABLE     = Entity.ID_RESPONSABLE,
                        OBSERVACIONES      = Entity.OBSERVACIONES,
                        PESO             = Entity.PESO,
                        TALLA            = Entity.TALLA,
                        TEMPERATURA      = Entity.TEMPERATURA,
                        TENSION_ARTERIAL = Entity.TENSION_ARTERIAL
                    };

                    Context.ATENCION_MEDICA.Add(AtencionMedica);
                    Context.NOTA_SIGNOS_VITALES.Add(SignoVital);

                    Context.SaveChanges();
                    transaccion.Complete();
                    return(true);
                }
            }

            catch (System.Exception)
            {
                throw;
            }

            return(false);
        }
Пример #2
0
 public void RecrearTVCanalizaciones(ATENCION_MEDICA atencion_medica, short id_centro, int id_tv_canalizacion)
 {
     try
     {
         using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions()
         {
             IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
         }))
         {
             var id_atencion_medica = GetIDProceso <int>("ATENCION_MEDICA", "ID_ATENCION_MEDICA", string.Format("ID_CENTRO_UBI={0}", id_centro));
             atencion_medica.ID_ATENCION_MEDICA             = id_atencion_medica;
             atencion_medica.NOTA_MEDICA.ID_ATENCION_MEDICA = id_atencion_medica;
             atencion_medica.NOTA_MEDICA.CANALIZACION.ID_ATENCION_MEDICA = id_atencion_medica;
             if (atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_ESPECIALIDAD != null && atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_ESPECIALIDAD.Count() > 0)
             {
                 foreach (var can_esp in atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_ESPECIALIDAD)
                 {
                     can_esp.ID_ATENCION_MEDICA = id_atencion_medica;
                 }
             }
             if (atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_SERV_AUX != null && atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_SERV_AUX.Count() > 0)
             {
                 foreach (var can_serv_aux in atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_SERV_AUX)
                 {
                     can_serv_aux.ID_ATENCION_MEDICA = id_atencion_medica;
                 }
             }
             Context.ATENCION_MEDICA.Add(atencion_medica);
             var _tv_canalizacion = Context.TV_CANALIZACION.Where(w => w.ID_TV_CANALIZACION == id_tv_canalizacion && w.ID_CENTRO_UBI == id_centro).FirstOrDefault();
             if (_tv_canalizacion == null)
             {
                 throw new Exception("No se pudo encontrar el registro en la tabla TV_CANALIZACION");
             }
             _tv_canalizacion.ID_TV_MEDICO_ESTATUS = "RP";
             Context.SaveChanges();
             transaccion.Complete();
         }
     }
     catch (Exception ex)
     {
         throw new ApplicationException(ex.Message + " " + (ex.InnerException != null ? ex.InnerException.InnerException.Message : ""));
     }
 }
Пример #3
0
 public void RecrearTVInterconsulta(ATENCION_MEDICA atencion_medica, short id_centro, int id_tv_interconsulta)
 {
     try
     {
         using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions()
         {
             IsolationLevel = System.Transactions.IsolationLevel.Serializable
         }))
         {
             var id_atencion_medica = GetIDProceso <int>("ATENCION_MEDICA", "ID_ATENCION_MEDICA", string.Format("ID_CENTRO_UBI={0}", id_centro));
             atencion_medica.ID_ATENCION_MEDICA             = id_atencion_medica;
             atencion_medica.NOTA_MEDICA.ID_ATENCION_MEDICA = id_atencion_medica;
             atencion_medica.NOTA_MEDICA.CANALIZACION.ID_ATENCION_MEDICA = id_atencion_medica;
             if (atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_ESPECIALIDAD != null && atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_ESPECIALIDAD.Count() > 0)
             {
                 foreach (var can_esp in atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_ESPECIALIDAD)
                 {
                     can_esp.ID_ATENCION_MEDICA = id_atencion_medica;
                 }
             }
             if (atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_SERV_AUX != null && atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_SERV_AUX.Count() > 0)
             {
                 foreach (var can_serv_aux in atencion_medica.NOTA_MEDICA.CANALIZACION.CANALIZACION_SERV_AUX)
                 {
                     can_serv_aux.ID_ATENCION_MEDICA = id_atencion_medica;
                 }
             }
             if (atencion_medica.NOTA_MEDICA.CANALIZACION.INTERCONSULTA_SOLICITUD != null)
             {
                 var _inter_sol   = atencion_medica.NOTA_MEDICA.CANALIZACION.INTERCONSULTA_SOLICITUD.First();
                 var id_inter_sol = GetIDProceso <int>("INTERCONSULTA_SOLICITUD", "ID_INTERSOL", string.Format("ID_CENTRO_UBI={0}", id_centro));
                 _inter_sol.ID_INTERSOL    = id_inter_sol;
                 _inter_sol.ID_NOTA_MEDICA = id_atencion_medica;
                 if (_inter_sol.SERVICIO_AUX_INTERCONSULTA != null && _inter_sol.SERVICIO_AUX_INTERCONSULTA.Count() > 0)
                 {
                     foreach (var item_serv_aux in _inter_sol.SERVICIO_AUX_INTERCONSULTA)
                     {
                         _inter_sol.ID_INTERSOL = id_inter_sol;
                     }
                 }
                 if (_inter_sol.HOJA_REFERENCIA_MEDICA != null && _inter_sol.HOJA_REFERENCIA_MEDICA.Count() > 0)
                 {
                     var _hoja_ref = _inter_sol.HOJA_REFERENCIA_MEDICA.First();
                     var id_hoja   = GetIDProceso <int>("HOJA_REFERENCIA_MEDICA", "ID_HOJA", string.Format("ID_CENTRO_UBI={0}", id_centro));
                     _hoja_ref.ID_HOJA     = id_hoja;
                     _hoja_ref.ID_INTERSOL = id_inter_sol;
                 }
                 if (_inter_sol.SOL_INTERCONSULTA_INTERNA != null && _inter_sol.SOL_INTERCONSULTA_INTERNA.Count() > 0)
                 {
                     var _sol_inter   = _inter_sol.SOL_INTERCONSULTA_INTERNA.First();
                     var id_solicitud = GetIDProceso <int>("SOL_INTERCONSULTA_INTERNA", "ID_SOLICITUD", string.Format("ID_CENTRO_UBI={0}", id_centro));
                     _sol_inter.ID_SOLICITUD = id_solicitud;
                     _sol_inter.ID_INTERSOL  = id_inter_sol;
                 }
             }
             Context.ATENCION_MEDICA.Add(atencion_medica);
             var _tv_interconsulta = Context.TV_INTERCONSULTA_SOLICITUD.Where(w => w.ID_TV_INTERSOL == id_tv_interconsulta && w.ID_CENTRO_UBI == id_centro).FirstOrDefault();
             if (_tv_interconsulta == null)
             {
                 throw new Exception("No se pudo encontrar el registro en la tabla TV_INTERCONSULTA");
             }
             _tv_interconsulta.ID_TV_MEDICO_ESTATUS = "RP";
             Context.SaveChanges();
             transaccion.Complete();
         }
     }
     catch (Exception ex)
     {
         throw new ApplicationException(ex.Message + " " + (ex.InnerException != null ? ex.InnerException.InnerException.Message : ""));
     }
 }
Пример #4
0
 public void ReagendarTVCitaMedica(int id_tv_cita, ATENCION_CITA cita, short id_centro, ATENCION_MEDICA atencion_medica = null)
 {
     try
     {
         using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions()
         {
             IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
         }))
         {
             var id_cita = GetIDProceso <int>("ATENCION_CITA", "ID_CITA", string.Format("ID_CENTRO_UBI={0}", id_centro));
             cita.ID_CITA = id_cita;
             Context.ATENCION_CITA.Add(cita);
             Context.SaveChanges();
             if (atencion_medica != null)
             {
                 var id_atencion_medica = GetIDProceso <int>("ATENCION_MEDICA", "ID_ATENCION_MEDICA", string.Format("ID_CENTRO_UBI={0}", id_centro));
                 atencion_medica.ID_ATENCION_MEDICA = id_atencion_medica;
                 foreach (var proc_at_med in atencion_medica.PROC_ATENCION_MEDICA)
                 {
                     var id_proc_prog = 1;
                     proc_at_med.ID_ATENCION_MEDICA = id_atencion_medica;
                     foreach (var proc_prog in proc_at_med.PROC_ATENCION_MEDICA_PROG)
                     {
                         proc_prog.ID_ATENCION_MEDICA = id_atencion_medica;
                         proc_prog.ID_AM_PROG         = id_proc_prog;
                         proc_prog.ID_CITA            = id_cita;
                         foreach (var detalle in proc_prog.PROC_MEDICO_PROG_DET)
                         {
                             detalle.ID_AM_PROG         = id_proc_prog;
                             detalle.ID_ATENCION_MEDICA = id_atencion_medica;
                         }
                         id_proc_prog += 1;
                     }
                 }
                 Context.ATENCION_MEDICA.Add(atencion_medica);
             }
             Context.SaveChanges();
             var _tv_cita_medica = Context.TV_CITA_MEDICA.Where(w => w.ID_TV_CITA == id_tv_cita && w.ID_CENTRO_UBI == id_centro).FirstOrDefault();
             if (_tv_cita_medica == null)
             {
                 throw new Exception("No se pudo encontrar el registro en la tabla TV_CITA_MEDICA");
             }
             _tv_cita_medica.ID_TV_MEDICO_ESTATUS = "RP";
             Context.SaveChanges();
             transaccion.Complete();
         }
     }
     catch (Exception ex)
     {
         throw new ApplicationException(ex.Message + " " + (ex.InnerException != null ? ex.InnerException.InnerException.Message : ""));
     }
 }