Ejemplo n.º 1
0
		///<summary></summary>
		public static void Update(Vitalsign vitalsign){
			if(RemotingClient.RemotingRole==RemotingRole.ClientWeb){
				Meth.GetVoid(MethodBase.GetCurrentMethod(),vitalsign);
				return;
			}
			Crud.VitalsignCrud.Update(vitalsign);
		}
Ejemplo n.º 2
0
        public static List <CDSIntervention> TriggerMatch(object triggerObject)
        {
            if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
            {
                return(Meth.GetObject <List <CDSIntervention> >(MethodBase.GetCurrentMethod(), triggerObject));
            }
            //create one of: DiseaseDef, ICD9, Icd10, Snomed, Medication, RxNorm, Cvx, AllergyDef, EhrLabResult, Patient, Vitalsign, MedicationPat
            //fill List<object> with above objects
            //create CDSIntervention and set TriggerObjects=above list of objects
            Vitalsign vitalSign = (Vitalsign)triggerObject;

            vitalSign.WeightCode = DirtyString;
            List <object> listObjs = new List <object> {
                vitalSign,
                new Patient                             {
                    AddrNote = DirtyString
                },
                new MedicationPat       {
                    MedDescript = DirtyString
                },
                new EhrLabResult        {
                    UnitsText = DirtyString, ListEhrLabResultNotes = new List <EhrLabNote> {
                        new EhrLabNote {
                            Comments = DirtyString
                        }
                    }
                },
                new AllergyDef          {
                    Description = DirtyString
                },
                new Cvx                                         {
                    Description = DirtyString
                },
                new RxNorm                              {
                    Description = DirtyString
                },
                new Medication          {
                    Notes = DirtyString
                },
                new Snomed                              {
                    Description = DirtyString
                },
                new ICD9                                        {
                    Description = DirtyString
                },
                new Icd10                                       {
                    Description = DirtyString
                },
                new DiseaseDef          {
                    DiseaseName = DirtyString
                }
            };

            return(new List <CDSIntervention> {
                new CDSIntervention {
                    InterventionMessage = DirtyString,
                    TriggerObjects = EhrTriggers.ConvertListToKnowledgeRequests(listObjs)
                }
            });
        }
Ejemplo n.º 3
0
		///<summary></summary>
		public static long Insert(Vitalsign vitalsign){
			if(RemotingClient.RemotingRole==RemotingRole.ClientWeb){
				vitalsign.VitalsignNum=Meth.GetLong(MethodBase.GetCurrentMethod(),vitalsign);
				return vitalsign.VitalsignNum;
			}
			return Crud.VitalsignCrud.Insert(vitalsign);
		}
Ejemplo n.º 4
0
 ///<summary></summary>
 public static void Update(Vitalsign vitalsign)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         Meth.GetVoid(MethodBase.GetCurrentMethod(), vitalsign);
         return;
     }
     Crud.VitalsignCrud.Update(vitalsign);
 }
Ejemplo n.º 5
0
 ///<summary></summary>
 public static long Insert(Vitalsign vitalsign)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         vitalsign.VitalsignNum = Meth.GetLong(MethodBase.GetCurrentMethod(), vitalsign);
         return(vitalsign.VitalsignNum);
     }
     return(Crud.VitalsignCrud.Insert(vitalsign));
 }
Ejemplo n.º 6
0
 public static object GetObjectFromVitalsignParam(Vitalsign vs)
 {
     if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
     {
         return(Meth.GetObject <object>(MethodBase.GetCurrentMethod(), vs));
     }
     vs.IsIneligible  = false;
     vs.Documentation = DirtyString;
     return((object)vs);
 }
Ejemplo n.º 7
0
        public static Vitalsign GetVitalsignFromObjectParam(object obj)
        {
            if (RemotingClient.RemotingRole == RemotingRole.ClientWeb)
            {
                return(Meth.GetObject <Vitalsign>(MethodBase.GetCurrentMethod(), obj));
            }
            Vitalsign retVal = (Vitalsign)obj;

            retVal.IsIneligible  = false;
            retVal.Documentation = DirtyString;
            return(retVal);
        }
Ejemplo n.º 8
0
Archivo: EhrCCD.cs Proyecto: mnisl/OD
		///<summary>Helper for GenerateCCD().</summary>
		private void GenerateCcdSectionVitalSigns(bool hasVitalSign) {//Currently just a skeleton
			_w.WriteComment(@"
=====================================================================================================
Vital Signs
=====================================================================================================");
			List<Vitalsign> listVitalSignsFiltered;
			if(!hasVitalSign) {
				listVitalSignsFiltered=new List<Vitalsign>();
			}
			else {
				listVitalSignsFiltered=_listVitalSignsFiltered;
			}
			Start("component");
			Start("section");
			TemplateId("2.16.840.1.113883.10.20.22.2.4.1");//Vital signs section with coded entries required.
			_w.WriteComment("Vital Signs section template");
			StartAndEnd("code","code","8716-3","codeSystem",strCodeSystemLoinc,"codeSystemName",strCodeSystemNameLoinc,"displayName","Vital Signs");
			_w.WriteElementString("title","Vital Signs");
			Start("text");//The following text will be parsed as html with a style sheet to be human readable.
			if(listVitalSignsFiltered.Count>0 && hasVitalSign) {
				Start("table","width","100%","border","1");
				Start("thead");
				Start("tr");
				_w.WriteElementString("th","Date");
				_w.WriteElementString("th","Height");
				_w.WriteElementString("th","Weight");
				_w.WriteElementString("th","BMI");
				_w.WriteElementString("th","Blood Pressure");
				End("tr");
				End("thead");
				Start("tbody");
				for(int i=0;i<listVitalSignsFiltered.Count;i++) {
					Vitalsign vitalsign=listVitalSignsFiltered[i];
					Start("tr");
					if(vitalsign.DateTaken.Year<1880) {
						_w.WriteElementString("td","");
					}
					else {
						DateText("td",vitalsign.DateTaken);
					}
					if(vitalsign.Height>0) {
						_w.WriteElementString("td",vitalsign.Height.ToString("f0")+" in");
					}
					else {
						_w.WriteElementString("td","");
					}
					if(vitalsign.Weight>0) {
						_w.WriteElementString("td",vitalsign.Weight.ToString("f0")+" lbs");
					}
					else {
						_w.WriteElementString("td","");
					}
					float bmi=Vitalsigns.CalcBMI(vitalsign.Weight,vitalsign.Height);//will be 0 if either wight is 0 or height is 0.
					if(bmi>0) {
						_w.WriteElementString("td",bmi.ToString("f1")+" lbs/in");
					}
					else {
						_w.WriteElementString("td","");
					}
					if(vitalsign.BpSystolic>0 && vitalsign.BpDiastolic>0) {
						_w.WriteElementString("td",vitalsign.BpSystolic.ToString("f0")+"/"+vitalsign.BpDiastolic.ToString("f0"));
					}
					else {
						_w.WriteElementString("td","");
					}
					End("tr");
				}
				End("tbody");
				End("table");
			}
			else {
				_w.WriteString("None");
			}
			End("text");
			if(listVitalSignsFiltered.Count==0) {//If there are no entries in the filtered list, then we want to add a dummy entry since at least one is required.
				Vitalsign viS=new Vitalsign();
				listVitalSignsFiltered.Add(viS);
			}
			for(int i=0;i<listVitalSignsFiltered.Count;i++) {//Fill Vital Signs Info
				Vitalsign vitalsign=listVitalSignsFiltered[i];
				Start("entry","typeCode","DRIV");
				Start("organizer","classCode","CLUSTER","moodCode","EVN");
				_w.WriteComment("Vital Signs Organizer template");//Vital Signs Organizer
				TemplateId("2.16.840.1.113883.10.20.22.4.26");
				Guid();
				StartAndEnd("code","code","46680005","codeSystem",strCodeSystemSnomed,"codeSystemName",strCodeSystemNameSnomed,"displayName","Vital signs");
				StartAndEnd("statusCode","code","completed");
				if(vitalsign.DateTaken.Year<1880) {
					StartAndEnd("effectiveTime","nullFlavor","UNK");
				}
				else {
					DateElement("effectiveTime",vitalsign.DateTaken);
				}
				GenerateCcdVitalSign("8302-2",vitalsign.DateTaken,vitalsign.Height,"in");//Height
				GenerateCcdVitalSign("3141-9",vitalsign.DateTaken,vitalsign.Weight,"lbs");//Weight
				float bmi=Vitalsigns.CalcBMI(vitalsign.Weight,vitalsign.Height);//will be 0 if either wight is 0 or height is 0.
				GenerateCcdVitalSign("39156-5",vitalsign.DateTaken,bmi,"lbs/in");//BMI
				GenerateCcdVitalSign("8480-6",vitalsign.DateTaken,vitalsign.BpSystolic,"mmHg");//Blood Pressure Systolic
				GenerateCcdVitalSign("8462-4",vitalsign.DateTaken,vitalsign.BpDiastolic,"mmHg");//Blood Pressure Diastolic
				End("organizer");
				End("entry");
			}
			End("section");
			End("component");
		}