/// <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; }
/// <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); }