Ejemplo n.º 1
0
        //根据模块获取正在执行的计划 GL 2015-10-13
        public GPlanInfo GetExecutingPlanByModule(DataConnection pclsCache, string PatientId, string Module)
        {
            try
            {
                //string ret = "";
                GPlanInfo planInfo = new PlanInfoMethod().GetExecutingPlanByM(pclsCache, PatientId, Module);
                planInfo.RemainingDays = "";
                Progressrate temp2 = new PlanInfoMethod().GetProgressRate(pclsCache, planInfo.PlanNo);
                if (temp2 != null)
                {
                    planInfo.RemainingDays = temp2.RemainingDays;
                }
                if (planInfo != null)
                {
                    //ret = planInfo.PlanNo;
                    TypeAndName Doctor = new ModuleInfoMethod().PsBasicInfoDetailGetSDoctor(pclsCache, PatientId);
                    if (Doctor != null && Doctor.Type != null) //Doctor.Count > 1
                    {
                        planInfo.DoctorId = Doctor.Type;
                        planInfo.DoctorName = Doctor.Name;
                    }
                }

                return planInfo;
            }
            catch (Exception ex)
            {
                HygeiaComUtility.WriteClientLog(HygeiaEnum.LogType.ErrorLog, "GetExecutingPlanByModule", "PlanInfoRepository error information : " + ex.Message + Environment.NewLine + ex.StackTrace);
                return null;
                throw ex;
            }
        }
Ejemplo n.º 2
0
        //获取健康专员负责的所有患者(最新结束但未达标的)计划列表 GL 2015-10-13
        public List<OverDuePlanDetail> GetOverDuePlanList(DataConnection pclsCache, string DoctorId, string ModuleType)
        {
            List<OverDuePlanDetail> PlanList = new List<OverDuePlanDetail>();
            try
            {
                int nowDate = new CommonFunction().GetServerDate();

                List<PatientPlan> DT_Patients = new PlanInfoMethod().GetOverDuePlanByDoctorId(pclsCache, DoctorId, ModuleType);
                if (DT_Patients == null)
                {
                    return null;
                }
                foreach (PatientPlan item in DT_Patients)
                {
                    string patientId = item.PatientId;
                    string planNo = item.PlanNo;
                    string startDate = item.StartDate;
                    string endDate = item.EndDate;
                    string totalDays = item.TotalDays;
                    string remainingDays = item.RemainingDays;

                    double process = 0.0;
                    //VitalSign
                    List<string> vitalsigns = new List<string>();

                    if (planNo != "")
                    {
                        //double complianceRate = PsCompliance.GetComplianceByDay(pclsCache, patientId, nowDate, planNo);

                        string itemType = "Bloodpressure";
                        string itemCode = "Bloodpressure_1";
                        int recordDate = Convert.ToInt32(endDate);
                        VitalInfo list = new VitalInfoMethod().GetLatestVitalSignsByDate(pclsCache, patientId, itemType, itemCode, recordDate);
                        if (list != null)
                        {
                            vitalsigns.Add(list.Value);
                        }

                        TargetByCode targetlist = new PlanInfoMethod().GetTarget(pclsCache, planNo, itemType, itemCode);
                        if (targetlist != null)
                        {
                            vitalsigns.Add(targetlist.Value);  //value
                        }
                        //非法数据判断 zam 2015-5-18
                        //OverDue Check
                        if (list != null && targetlist != null)
                        {
                            double m, n;
                            bool misNumeric = double.TryParse(list.Value, out m);
                            bool nisNumeric = double.TryParse(targetlist.Value, out n);
                            if (misNumeric && nisNumeric)
                            {
                                //if (Convert.ToInt32(list[2]) <= Convert.ToInt32(targetlist[3])) //已达标
                                if (m <= n)
                                {
                                    continue;
                                }
                            }
                        }
                    }
                    //PhotoAddress
                    string photoAddress = "";
                    PatDetailInfo patientInfolist = new ModuleInfoMethod().PsBasicInfoDetailGetPatientDetailInfo(pclsCache, patientId);
                    if (patientInfolist != null)
                    {
                        photoAddress = patientInfolist.PhotoAddress;
                    }

                    string patientName = "";
                    patientName = new UsersMethod().GetNameByUserId(pclsCache, patientId);

                    OverDuePlanDetail PlanItem = new OverDuePlanDetail();
                    PlanItem.PatientId = patientId;
                    PlanItem.PatientName = patientName;
                    PlanItem.PhotoAddress = photoAddress;
                    PlanItem.PlanNo = planNo;
                    PlanItem.StartDate = startDate;
                    PlanItem.Process = process;
                    PlanItem.RemainingDays = remainingDays;
                    PlanItem.VitalSign = vitalsigns;

                    PlanList.Add(PlanItem);
                }
                return PlanList;
            }
            catch (Exception ex)
            {
                HygeiaComUtility.WriteClientLog(HygeiaEnum.LogType.ErrorLog, "GetOverDuePlanList", "PlanInfoRepository error information : " + ex.Message + Environment.NewLine + ex.StackTrace);
                return null;
                throw (ex);
            }
        }
Ejemplo n.º 3
0
 /// <summary>
 /// 获取风险评估所需输入 LY 2015-10-13
 /// </summary>
 /// <param name="UserId"></param>
 /// <returns></returns>
 public RiskInput GetRiskInput(DataConnection pclsCache, string UserId)
 {
     //当用户缺少某项参数时,设置一个默认值
     int Age = 1;//年龄默认1岁(避免出现0岁)
     int Gender = 0;//性别男
     int Height = 0;//身高176cm
     int Weight = 0;//体重69千克
     int AbdominalGirth = 0; //腹围
     int Heartrate = 0;//心率
     int Parent = 0;//父母中至少有一方有高血压
     int Smoke = 0;//不抽烟
     int Stroke = 0;//没有中风
     int Lvh = 0; ;//有左心室肥大
     int Diabetes = 0;//有伴随糖尿病
     int Treat = 0;//高血压是否在治疗(接受过)没有
     int Heartattack = 0;//有过心脏事件(心血管疾病)
     int Af = 0;//没有过房颤
     int Chd = 0;//有冠心病(心肌梗塞)
     int Valve = 0;//没有心脏瓣膜病
     double Tcho = 0;//总胆固醇浓度5.2mmol/L
     double Creatinine = 0;//肌酐浓度140μmoI/L
     double Hdlc = 0;//高密度脂蛋白胆固醇1.21g/ml
     int SBP = 0;//当前收缩压
     int DBP = 0;//当前舒张压
     //用于取得真实值
     int piParent = 0;//父母中至少有一方有高血压
     int piSmoke = 0;//不抽烟
     int piStroke = 0;//没有中风
     int piLvh = 0; ;//有左心室肥大
     int piDiabetes = 0;//有伴随糖尿病
     int piTreat = 0;//高血压是否在治疗(接受过)没有
     int piHeartattack = 0;//有过心脏事件(心血管疾病)
     int piAf = 0;//没有过房颤
     int piChd = 0;//有冠心病(心肌梗塞)
     int piValve = 0;//没有心脏瓣膜病
     BasicInfo BaseList = new UsersMethod().GetBasicInfo(pclsCache, UserId);
     if (BaseList != null)
     {
         if (BaseList.Birthday != "" && BaseList.Birthday != "0" && BaseList.Birthday != null)
         {
             Age = new UsersMethod().GetAgeByBirthDay(pclsCache, Convert.ToInt32(BaseList.Birthday));//年龄
         }
         if (BaseList.Gender != "" && BaseList.Gender != "0" && BaseList.Gender != null)
         {
             Gender = Convert.ToInt32(BaseList.Gender);//性别
         }
     }
     if (Gender <= 2)
     {
         Gender = Gender - 1;
     }
     else
     {
         Gender = 0;
     }
     if (Gender == 1)//为计算方便,性别值对调
     {
         Gender = 0;
     }
     else
     {
         Gender = 1;
     }
     //获取体重,身高和BMI
     string Weight1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_02", 1);
     if (Weight1 != "" && Weight1 != "0" && Weight1 != null)
     {
         Weight = Convert.ToInt32(Weight1);
     }
     string Height1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_01", 1);
     if (Height1 != "" && Height1 != "0" && Height1 != null)
     {
         Height = Convert.ToInt32(Height1);
     }
     string BMIStr = ((double)Weight / ((double)Height * (double)Height) * 10000).ToString("f2");
     double BMI = double.Parse(BMIStr);
     //获取腹围
     string AbdominalGirth1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_13", 1);
     if (AbdominalGirth1 != "" && AbdominalGirth1 != "0" && AbdominalGirth1 != null)
     {
         AbdominalGirth = Convert.ToInt32(AbdominalGirth1);
     }
     //获取心率
     string Heart = new VitalInfoMethod().GetLatestPatientVitalSigns(pclsCache, UserId, "HeartRate", "HeartRate_1");
     if (Heart != "" && Heart != "0" && Heart != null)
     {
         Heartrate = Convert.ToInt32(Heart);
     }
     //获取遗传信息,即父母有无高血压,1是2否3未知
     string Parent1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1002_01", 1);
     if (Parent1 != "" && Parent1 != "0" && Parent1 != null)
     {
         Parent = Convert.ToInt32(Parent1);
         piParent = Parent;
     }
     if (Parent > 1)
     {
         Parent = 0;
     }
     //获取是否抽烟1是2否3未知
     string Smoke1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1005_04", 1);
     if (Smoke1 != "" && Smoke1 != "0" && Smoke1 != null)
     {
         Smoke = Convert.ToInt32(Smoke1);
         piSmoke = Smoke;
     }
     if (Smoke > 1)
     {
         Smoke = 0;
     }
     //获取是否中风
     string Stroke1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1001_07", 1);
     if (Stroke1 != "" && Stroke1 != "0" && Stroke1 != null)
     {
         Stroke = Convert.ToInt32(Stroke1);
         piStroke = Stroke;
     }
     if (Stroke > 1)
     {
         Stroke = 0;
     }
     //获取是否左心室肥大
     string Lvh1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1001_09", 1);
     if (Lvh1 != "" && Lvh1 != "0" && Lvh1 != null)
     {
         Lvh = Convert.ToInt32(Lvh1);
         piLvh = Lvh;
     }
     if (Lvh > 1)
     {
         Lvh = 0;
     }
     //获取是否糖尿病
     string Diabetes1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1002_02", 1);
     if (Diabetes1 != "" && Diabetes1 != "0" && Diabetes1 != null)
     {
         Diabetes = Convert.ToInt32(Diabetes1);
         piDiabetes = Diabetes;
     }
     if (Diabetes > 1)
     {
         Diabetes = 0;
     }
     //高血压是否在治疗(是否接受高血压治疗)
     string Treat1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1003_02", 1);
     if (Treat1 != "" && Treat1 != "0" && Treat1 != null)
     {
         Treat = Convert.ToInt32(Treat1);
         piTreat = Treat;
     }
     if (Treat > 1)
     {
         Treat = 0;
     }
     //是否有心脏事件(心血管疾病,心脏骤停)
     string Heartattack1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1001_04", 1);
     if (Heartattack1 != "" && Heartattack1 != "0" && Heartattack1 != null)
     {
         Heartattack = Convert.ToInt32(Heartattack1);
         piHeartattack = Heartattack;
     }
     if (Heartattack > 1)
     {
         Heartattack = 0;
     }
     //是否有房颤
     string Af1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1001_05", 1);
     if (Af1 != "" && Af1 != "0" && Af1 != null)
     {
         Af = Convert.ToInt32(Af1);
         piAf = Af;
     }
     if (Af > 1)
     {
         Af = 0;
     }
     //是否有冠心病(心肌梗塞)
     string Chd1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1001_02", 1);
     if (Chd1 != "" && Chd1 != "0" && Chd1 != null)
     {
         Chd = Convert.ToInt32(Chd1);
         piChd = Chd;
     }
     if (Chd > 1)
     {
         Chd = 0;
     }
     //是否有心脏瓣膜病
     string Valve1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1001_06", 1);
     if (Valve1 != "" && Valve1 != "0" && Valve1 != null)
     {
         Valve = Convert.ToInt32(Valve1);
         piValve = Valve;
     }
     if (Valve > 1)
     {
         Valve = 0;
     }
     //总胆固醇浓度
     string Tcho1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_09", 1);
     if (Tcho1 != "" && Tcho1 != "0" && Tcho1 != null)
     {
         Tcho = Convert.ToDouble(Tcho1);
     }
     //肌酐浓度
     string Creatinine1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_08", 1);
     if (Creatinine1 != "" && Creatinine1 != "0" && Creatinine1 != null)
     {
         Creatinine = Convert.ToDouble(Creatinine1);
     }
     //高密度脂蛋白胆固醇
     string Hdlc1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_10", 1);
     if (Hdlc1 != "" && Hdlc1 != "0" && Hdlc1 != null)
     {
         Hdlc = Convert.ToDouble(Hdlc1);
     }
     //收缩压和舒张压
     string SBP1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_05", 1);
     if (SBP1 != "" && SBP1 != "0" && SBP1 != null)
     {
         SBP = Convert.ToInt32(SBP1);
     }
     string DBP1 = new ModuleInfoMethod().PsBasicInfoDetailGetValue(pclsCache, UserId, "M1", "M1006_06", 1);
     if (DBP1 != "" && DBP1 != "0" && DBP1 != null)
     {
         DBP = Convert.ToInt32(DBP1);
     }
     //高血压风险,除血压外的风险已经计算好放在Hyperother中,界面上取了血压之后,加上血压的风险即可。
     double Hyperother = -0.15641 * Age - 0.20293 * Gender - 0.19073 * Smoke - 0.16612 * Parent - 0.03388 * BMI;
     //HarvardRiskInfactor这个变量存的是Harvard风险评估计算公式中的风险因数,界面上需要做的是加上收缩压的风险因数,然后代入公式计算。
     int HarvardRiskInfactor = 0;
     if (Gender == 1)
     {
         if (Age <= 39)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 19;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 0;
             }
         }
         else if (Age <= 44 && Age >= 40)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 7;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 4;
             }
         }
         else if (Age <= 49 && Age >= 45)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 7;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 7;
             }
         }
         else if (Age <= 54 && Age >= 50)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 11;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 6;
             }
         }
         else if (Age <= 59 && Age >= 55)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 14;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 6;
             }
         }
         else if (Age <= 64 && Age >= 60)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 18;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 5;
             }
         }
         else if (Age <= 69 && Age >= 65)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 22;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 4;
             }
         }
         else
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 25;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 4;
             }
         }
         //年龄和抽烟的风险值加成
         if (Tcho < 5)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         else if (Tcho >= 5.0 && Tcho <= 5.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         else if (Tcho >= 6.0 && Tcho <= 6.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 4;
         }
         else if (Tcho >= 7.0 && Tcho <= 7.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 5;
         }
         else if (Tcho >= 8.0 && Tcho <= 8.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 7;
         }
         else
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 9;
         }
         //总胆固醇浓度风险值加成
         if (Height < 145)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 6;
         }
         else if (Height >= 145 && Height <= 154)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 4;
         }
         else if (Height >= 155 && Height <= 164)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 3;
         }
         else if (Height >= 165 && Height <= 174)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         else
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         //身高风险值加成
         if (Creatinine < 50)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         else if (Creatinine >= 50 && Creatinine <= 69)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 1;
         }
         else if (Creatinine >= 70 && Creatinine <= 89)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         else if (Creatinine >= 90 && Creatinine <= 109)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 3;
         }
         else
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 4;
         }
         //肌酐浓度风险值加成
         if (Chd == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 8;
         }
         //心肌梗塞(冠心病)风险值加成
         if (Stroke == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 8;
         }
         //中风风险值加成
         if (Lvh == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 3;
         }
         //左室高血压(左心室肥大)风险值加成
         if (Diabetes == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         //糖尿病风险值加成
     }
     //以上是男性风险值
     else
     {
         if (Age <= 39)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 13;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 0;
             }
         }
         else if (Age <= 44 && Age >= 40)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 12;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 5;
             }
         }
         else if (Age <= 49 && Age >= 45)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 11;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 9;
             }
         }
         else if (Age <= 54 && Age >= 50)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 10;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 14;
             }
         }
         else if (Age <= 59 && Age >= 55)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 10;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 18;
             }
         }
         else if (Age <= 64 && Age >= 60)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 9;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 23;
             }
         }
         else if (Age <= 69 && Age >= 65)
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 9;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 27;
             }
         }
         else
         {
             if (Smoke == 1)
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 8;
             }
             else
             {
                 HarvardRiskInfactor = HarvardRiskInfactor + 32;
             }
         }
         //年龄和抽烟的风险值加成
         if (Tcho < 5)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         else if (Tcho >= 5.0 && Tcho <= 5.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         else if (Tcho >= 6.0 && Tcho <= 6.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 1;
         }
         else if (Tcho >= 7.0 && Tcho <= 7.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 1;
         }
         else if (Tcho >= 8.0 && Tcho <= 8.9)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         else
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         //总胆固醇浓度风险值加成
         if (Height < 145)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 6;
         }
         else if (Height >= 145 && Height <= 154)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 4;
         }
         else if (Height >= 155 && Height <= 164)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 3;
         }
         else if (Height >= 165 && Height <= 174)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         else
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         //身高风险值加成
         if (Creatinine < 50)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 0;
         }
         else if (Creatinine >= 50 && Creatinine <= 69)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 1;
         }
         else if (Creatinine >= 70 && Creatinine <= 89)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 2;
         }
         else if (Creatinine >= 90 && Creatinine <= 109)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 3;
         }
         else
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 4;
         }
         //肌酐浓度风险值加成
         if (Chd == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 8;
         }
         //心肌梗塞(冠心病)风险值加成
         if (Stroke == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 8;
         }
         //中风风险值加成
         if (Lvh == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 3;
         }
         //左室高血压(左心室肥大)风险值加成
         if (Diabetes == 1)
         {
             HarvardRiskInfactor = HarvardRiskInfactor + 9;
         }
         //糖尿病风险值加成
     }
     //以上是女性风险值
     //FraminghamRiskInfactor这个变量存的是Framingham风险评估计算公式中的风险因数,界面上需要做的是加上收缩压的风险因数,然后代入公式计算。
     //这个Framingham模型也是需要收缩压值的,分为接受过治疗的血压和未接受过治疗的血压,模型分为男女进行计算,因为不同性别公式不同
     double FraminghamRiskInfactor = 0.0;
     if (Gender == 1) //男性
     {
         FraminghamRiskInfactor = FraminghamRiskInfactor + Math.Log(Age) * 3.06117;//性别
         FraminghamRiskInfactor = FraminghamRiskInfactor + Math.Log(Tcho) * 1.12370;//总胆固醇
         FraminghamRiskInfactor = FraminghamRiskInfactor + Math.Log(Hdlc) * (-0.93263);//高密度脂蛋白胆固醇
         if (Smoke == 1)
         {
             FraminghamRiskInfactor = FraminghamRiskInfactor + 0.65451;//抽烟
         }
         if (Diabetes == 1)
         {
             FraminghamRiskInfactor = FraminghamRiskInfactor + 0.57367;//抽烟
         }
     }
     else //女性
     {
         FraminghamRiskInfactor = FraminghamRiskInfactor + Math.Log(Age) * 2.3288;//性别
         FraminghamRiskInfactor = FraminghamRiskInfactor + Math.Log(Tcho) * 1.20904;//总胆固醇
         FraminghamRiskInfactor = FraminghamRiskInfactor + Math.Log(Hdlc) * (-0.70833);//高密度脂蛋白胆固醇
         if (Smoke == 1)
         {
             FraminghamRiskInfactor = FraminghamRiskInfactor + 0.52873;//抽烟
         }
         if (Diabetes == 1)
         {
             FraminghamRiskInfactor = FraminghamRiskInfactor + 0.69154;//抽烟
         }
     }
     //StrokeRiskInfactor这个变量存的是中风风险评估计算公式中的风险因数,界面上需要做的是加上收缩压的风险因数,然后计算。
     int StrokeRiskInfactor = 0;
     if (Gender == 1) //男性
     {
         if (Age <= 56)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 0;
         }
         else if (Age >= 57 && Age <= 59)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 1;
         }
         else if (Age >= 60 && Age <= 62)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 2;
         }
         else if (Age >= 63 && Age <= 65)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 3;
         }
         else if (Age >= 66 && Age <= 68)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 4;
         }
         else if (Age >= 69 && Age <= 72)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 5;
         }
         else if (Age >= 73 && Age <= 75)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 6;
         }
         else if (Age >= 76 && Age <= 78)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 7;
         }
         else if (Age >= 79 && Age <= 81)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 8;
         }
         else if (Age >= 82 && Age <= 84)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 9;
         }
         else
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 10;
         }
         if (Diabetes == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 2;
         }
         //糖尿病风险值加成
         if (Smoke == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 3;
         }
         //吸烟风险值加成
         if (Heartattack == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 4;
         }
         //心血管疾病史(心脏事件)风险值加成
         if (Af == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 4;
         }
         //房颤风险值加成
         if (Lvh == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 5;
         }
     }
     else //女性
     {
         if (Age <= 56)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 0;
         }
         else if (Age >= 57 && Age <= 59)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 1;
         }
         else if (Age >= 60 && Age <= 62)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 2;
         }
         else if (Age >= 63 && Age <= 64)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 3;
         }
         else if (Age >= 65 && Age <= 67)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 4;
         }
         else if (Age >= 68 && Age <= 70)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 5;
         }
         else if (Age >= 71 && Age <= 73)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 6;
         }
         else if (Age >= 74 && Age <= 76)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 7;
         }
         else if (Age >= 77 && Age <= 78)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 8;
         }
         else if (Age >= 79 && Age <= 81)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 9;
         }
         else
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 10;
         }
         if (Diabetes == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 3;
         }
         //糖尿病风险值加成
         if (Smoke == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 3;
         }
         //吸烟风险值加成
         if (Heartattack == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 2;
         }
         //心血管疾病史(心脏事件)风险值加成
         if (Af == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 6;
         }
         //房颤风险值加成
         if (Lvh == 1)
         {
             StrokeRiskInfactor = StrokeRiskInfactor + 4;
         }
     }
     //HeartFailureRiskInfactor这个变量存的是心衰风险评估计算公式中的风险因数,界面上需要做的是加上收缩压的风险因数,然后计算。
     int HeartFailureRiskInfactor = 0;
     if (Gender == 1) //男性
     {
         if (Age <= 49)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 0;
         }
         else if (Age >= 50 && Age <= 54)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 1;
         }
         else if (Age >= 55 && Age <= 59)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 2;
         }
         else if (Age >= 60 && Age <= 64)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 3;
         }
         else if (Age >= 65 && Age <= 69)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 4;
         }
         else if (Age >= 70 && Age <= 74)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 5;
         }
         else if (Age >= 75 && Age <= 79)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 6;
         }
         else if (Age >= 80 && Age <= 84)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 7;
         }
         else if (Age >= 85 && Age <= 89)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 8;
         }
         else
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 9;
         }
         if (Heartrate <= 54)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 0;
         }
         else if (Heartrate >= 55 && Heartrate <= 64)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 1;
         }
         else if (Heartrate >= 65 && Heartrate <= 79)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 2;
         }
         else if (Heartrate >= 80 && Heartrate <= 89)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 3;
         }
         else if (Heartrate >= 90 && Heartrate <= 104)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 4;
         }
         else
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 5;
         }
         //心率风险值加成
         if (Lvh == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 4;
         }
         //左心室肥大(左室高血压)风险值加成
         if (Chd == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 8;
         }
         //冠心病风险值加成
         if (Valve == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 5;
         }
         //瓣膜疾病风险值加成
         if (Smoke == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 1;
         }
         //糖尿病风险值加成
     }
     else //女性
     {
         if (Age <= 49)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 0;
         }
         else if (Age >= 50 && Age <= 54)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 1;
         }
         else if (Age >= 55 && Age <= 59)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 2;
         }
         else if (Age >= 60 && Age <= 64)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 3;
         }
         else if (Age >= 65 && Age <= 69)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 4;
         }
         else if (Age >= 70 && Age <= 74)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 5;
         }
         else if (Age >= 75 && Age <= 79)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 6;
         }
         else if (Age >= 80 && Age <= 84)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 7;
         }
         else if (Age >= 85 && Age <= 89)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 8;
         }
         else
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 9;
         }
         //年龄的风险加权值
         if (Heartrate < 60)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 0;
         }
         else if (Heartrate >= 60 && Heartrate <= 79)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 1;
         }
         else if (Heartrate >= 80 && Heartrate <= 104)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 2;
         }
         else
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 3;
         }
         //心率风险值加成
         if (Lvh == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 5;
         }
         //左心室肥大(左室高血压)风险值加成
         if (Chd == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 6;
         }
         //冠心病风险值加成
         if (Valve == 1)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 6;
             if (Smoke == 1)
             {
                 HeartFailureRiskInfactor = HeartFailureRiskInfactor + 2;
             }
         }
         else
         {
             if (Smoke == 1)
             {
                 HeartFailureRiskInfactor = HeartFailureRiskInfactor + 6;
             }
         }
         //瓣膜疾病和糖尿病风险值加成
         if (BMI < 21)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 0;
         }
         else if (BMI >= 21 && BMI <= 25)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 1;
         }
         else if (BMI > 25 && BMI <= 29)
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 2;
         }
         else
         {
             HeartFailureRiskInfactor = HeartFailureRiskInfactor + 3;
         }
     }
     //BMI风险值加成
     RiskInput Input = new RiskInput();
     Input.Age = Age;
     Input.Gender = Gender;
     Input.Height = Height;
     Input.Weight = Weight;
     Input.AbdominalGirth = AbdominalGirth;
     Input.BMI = BMI;
     Input.Heartrate = Heartrate;
     Input.Parent = Parent;
     Input.Smoke = Smoke;
     Input.Stroke = Stroke;
     Input.Lvh = Lvh;
     Input.Diabetes = Diabetes;
     Input.Treat = Treat;
     Input.Heartattack = Heartattack;
     Input.Af = Af;
     Input.Chd = Chd;
     Input.Valve = Valve;
     Input.Tcho = Tcho;
     Input.Creatinine = Creatinine;
     Input.Hdlc = Hdlc;
     Input.Hyperother = Hyperother;
     Input.HarvardRiskInfactor = HarvardRiskInfactor;
     Input.FraminghamRiskInfactor = FraminghamRiskInfactor;
     Input.StrokeRiskInfactor = StrokeRiskInfactor;
     Input.HeartFailureRiskInfactor = HeartFailureRiskInfactor;
     Input.SBP = SBP;
     Input.DBP = DBP;
     Input.piParent = piParent;
     Input.piSmoke = piSmoke;
     Input.piStroke = piStroke;
     Input.piLvh = piLvh;
     Input.piDiabetes = piDiabetes;
     Input.piTreat = piTreat;
     Input.piHeartattack = piHeartattack;
     Input.piAf = piAf;
     Input.piChd = piChd;
     Input.piValve = piValve;
     return Input;
 }