Beispiel #1
0
 /// <summary>
 /// default constructor
 /// </summary>
 public Derivacion()
 {
     m_idderivacion       = 0;
     m_iddetalleprotocolo = new DetalleProtocolo();
     m_fecharegistro      = DateTime.MinValue;
     m_idusuarioregistro  = 0;
     m_estado             = 0;
     m_observacion        = String.Empty;
     m_resultado          = String.Empty;
     m_idusuarioresultado = 0;
     m_fecharesultado     = DateTime.MinValue;
 }
Beispiel #2
0
 /// <summary>
 /// required (not null) fields only constructor
 /// </summary>
 public Derivacion(
     DetalleProtocolo iddetalleprotocolo,
     DateTime fecharegistro,
     int idusuarioregistro,
     int estado,
     string observacion,
     string resultado,
     int idusuarioresultado,
     DateTime fecharesultado)
     : this()
 {
     m_iddetalleprotocolo = iddetalleprotocolo;
     m_fecharegistro      = fecharegistro;
     m_idusuarioregistro  = idusuarioregistro;
     m_estado             = estado;
     m_observacion        = observacion;
     m_resultado          = resultado;
     m_idusuarioresultado = idusuarioresultado;
     m_fecharesultado     = fecharesultado;
 }
        public string BuscarResultadoAnterior(Item subitem, Item itemprincipal, bool conFecha)
        {
            string s_resultadoAnterior = "";
            string s_idPaciente        = this.IdProtocolo.IdPaciente.IdPaciente.ToString();
            //     int s_idSubItem = this.IdSubItem.IdItem;
            string s_idProtocoloActual = this.IdProtocolo.IdProtocolo.ToString();

            //DataSet Ds = new DataSet();
            //SqlConnection conn = (SqlConnection)NHibernateHttpModule.CurrentSession.Connection;
            //SqlCommand cmd = new SqlCommand();
            //cmd.CommandType = CommandType.StoredProcedure;

            //cmd.CommandText = "LAB_ResultadoAnterior";


            /////////Parametro hoja de trabajo
            //cmd.Parameters.Add("@idProtocolo", SqlDbType.Int);
            //cmd.Parameters["@idProtocolo"].Value = int.Parse(s_idProtocoloActual);


            /////////Parametro @idEfectorSolicitante
            //cmd.Parameters.Add("@idPaciente", SqlDbType.Int);
            //cmd.Parameters["@idPaciente"].Value = int.Parse(s_idPaciente);

            /////////Parametro @@idOrigen
            //cmd.Parameters.Add("@idItem", SqlDbType.Int);
            //cmd.Parameters["@idItem"].Value = itemprincipal.IdItem;

            /////////Parametro @@@idPrioridad
            //cmd.Parameters.Add("@idSubItem", SqlDbType.Int);
            //cmd.Parameters["@idSubItem"].Value = subitem.IdItem;

            //cmd.Connection = conn;

            //SqlDataAdapter da = new SqlDataAdapter(cmd);

            //da.Fill(Ds);
            //if (Ds.Tables[0].Rows.Count > 0)
            //    s_resultadoAnterior = Ds.Tables[0].Rows[0][0].ToString() + Environment.NewLine + Ds.Tables[0].Rows[0][1].ToString();

            ICriteria critProtocolo = m_session.CreateCriteria(typeof(Protocolo));

            string ssql_Protocolo = " IdProtocolo in (Select top 10 LAb_Protocolo.IdProtocolo From LAb_Protocolo where LAb_Protocolo.baja=0 and LAb_Protocolo.estado>0 and LAb_Protocolo.idPaciente=" + s_idPaciente + " and LAb_Protocolo.IdProtocolo<" + s_idProtocoloActual + " order by LAb_Protocolo.IdProtocolo desc )";

            critProtocolo.Add(Expression.Sql(ssql_Protocolo));
            //Protocolo oUltimoProtocolo = (Protocolo)critProtocolo.List;

            IList detalle = critProtocolo.List();

            if (detalle.Count > 0)
            {
                foreach (Protocolo oDetalle in detalle)

                //if (oUltimoProtocolo != null)
                {
                    ICriteria crit = m_session.CreateCriteria(typeof(DetalleProtocolo));
                    crit.Add(Expression.Eq("IdItem", itemprincipal));
                    crit.Add(Expression.Eq("IdSubItem", subitem));
                    crit.Add(Expression.Eq("IdProtocolo", oDetalle));
                    DetalleProtocolo oUltimoResultado = (DetalleProtocolo)crit.UniqueResult();

                    if (oUltimoResultado != null)
                    {
                        Utility oUtil = new Utility();
                        if ((oUltimoResultado.IdUsuarioValida > 0) && (oUltimoResultado.ConResultado))
                        {
                            //if (oUltimoResultado.IdSubItem.IdTipoResultado == 1)
                            if (oUltimoResultado.ResultadoCar.Trim() == "")
                            {
                                decimal resultadoAnterior = oUltimoResultado.ResultadoNum;
                                //string formato = oUtil.Formato(subitem.FormatoDecimal.ToString());
                                string  formato = oUtil.Formato(oUltimoResultado.FormatoValida.ToString());
                                decimal x       = decimal.Parse(resultadoAnterior.ToString(formato));
                                s_resultadoAnterior = x.ToString(System.Globalization.CultureInfo.InvariantCulture) + " " + oUltimoResultado.UnidadMedida;
                            }
                            else
                            {
                                s_resultadoAnterior = oUltimoResultado.ResultadoCar;
                                if (s_resultadoAnterior.Length > 10)
                                {
                                    s_resultadoAnterior = s_resultadoAnterior.Substring(0, 10);
                                }
                            }
                            if (conFecha)
                            {
                                s_resultadoAnterior = s_resultadoAnterior + Environment.NewLine + oUltimoResultado.IdProtocolo.Fecha.ToShortDateString();
                            }
                            break;
                        }
                        //else
                        //  s_resultadoAnterior = "";
                    }
                }
            }
            return(s_resultadoAnterior);
        }