public static List <LabTestItem> GetLabTestItem(int sID, int doDate) { char cTmp = '-'; double refL = 0, refH = 0; int iTmp = 0; string sTmp = "", sTmp1 = "", unit = ""; LabTestItem tmp = null; List <LabTestItem> rtnList = new List <LabTestItem>(); string sqlString = " SELECT b.chinname as 'cName',b.Unit as 'unit',a.SValue as 'sValue',a.ResultState as 'rState'," + " a.Reftype as 'reftype',a.RefLow as 'refLow',a.RefHigh as 'refHigh' " + " FROM [LISSerV].[his].[dbo].LabResult a,[LISSerV].[his].[dbo].Labtest b " + " WHERE ( a.DoDate = @DODATE ) AND ( a.SpecimenID = @SID ) " + " AND ( a.IsProfile = '0' ) AND ( a.testcode = b.testcode) " + " order by b.reportorder "; SqlParameter[] cmdParms = new SqlParameter[] { new SqlParameter("@SID", SqlDbType.Int), new SqlParameter("@DODATE", SqlDbType.Int) }; cmdParms[0].Value = sID; cmdParms[1].Value = doDate; DataSet ds = DbHelperSQL_18.Query(sqlString, cmdParms); DataTable dt = ds.Tables["ds"]; //遍历行 foreach (DataRow dr in dt.Rows) { //遍历列 tmp = new LabTestItem(); tmp.cName = dr["cName"].ToString().Trim(); unit = dr["unit"].ToString().Trim(); if (double.TryParse(dr["refHigh"].ToString().Trim(), out refH)) { } if (double.TryParse(dr["refLow"].ToString().Trim(), out refL)) { } if (char.TryParse(dr["reftype"].ToString().Trim(), out cTmp)) { switch (cTmp) { case '1': case '2': sTmp = "" + refL.ToString() + "-" + refH.ToString() + ""; sTmp1 = unit.ToUpper().Substring(0, 1); if (sTmp1.Equals("X") || sTmp1.Equals("%")) { sTmp = "(" + sTmp + ")" + unit; } break; case '3': sTmp = "阴性"; break; case '4': sTmp = "阳性"; break; case '5': sTmp = "<" + refH.ToString() + unit; break; case '6': sTmp = ">" + refL.ToString() + unit; break; case '7': sTmp = "<" + refL.ToString() + ":" + refH.ToString() + " " + unit; break; default: sTmp = ""; break; } } tmp.refference = sTmp; tmp.unit = unit; if (dr["rState"].ToString().Trim().ToUpper().Equals("H")) { tmp.state = "↑"; } else if (dr["rState"].ToString().Trim().ToUpper().Equals("L")) { tmp.state = "↓"; } else { tmp.state = ""; } tmp.sValue = dr["sValue"].ToString().Trim(); rtnList.Add(tmp); } return(rtnList); }
public static PatientInfoDto AsDto(this LabTestItem item, int value, string note, DateTime testDate, Guid patientId, string name) { return(new PatientInfoDto(item.Id, item.Name, item.Value, value, note, testDate, patientId, name)); }