public override Patient_DTO GetPatient(string patientId) { try { var patientUrl = Config.HttpConfigModel.PatientUrl; CommunicationHelper.RecordTrace("GetPatient", $"开始获取病人{patientId}的信息"); Patient_DTO patient = null; if (_helper == null) { return(null); } CommunicationHelper.RecordTrace("GetPatient", $"获取病人信息地址为{patientUrl}"); string url = string.Empty; if (patientUrl.EndsWith("=") || patientUrl.EndsWith("/")) { url = patientUrl + patientId; } else { url = patientUrl + "/" + patientId; } var finalUrl = AddToken(url); _helper.NeedUrlDecode = NeedUrlDecode; patient = _helper.HttpGetData <Patient_DTO>(finalUrl); return(patient); } catch (KRException ex) { throw new Exception(ex.Msg); } }
public Patient_DTO GetPatient(string patientId) { var patient = new Patient_DTO() { PatientID = patientId, Name = "路飞", Age = 27, Address = "河北廊坊", Birthday = DateTime.Now.AddYears(-30).ToShortDateString(), City = "廊坊", IdentityType = 0, CredentialName = "身份证", FirstName = "Zhang", Work = "IT", Gender = 1, Nation = "汉", CustomerFields = new List <CustomerFields>() { new CustomerFields() { PatientID = patientId, DataType = "string", FieldName = "别名", FieldValue = "海贼王" } } }; return(patient); }
public override Patient_DTO GetPatient(string patientId) { try { Patient_DTO patient = null; string sql = Config.PatientMapModel.GetPatientInfoSql(_dbConfig.DatabaseSoft); string targetCheck = Config.PatientMapModel.GetTargetCheckByCheckType(1); sql = string.Format(sql, patientId, targetCheck); Trace.WriteLine(string.Format("根据patientId:{0}去数据库取病人信息,Sql 语句为:{2}", patientId, sql)); DataTable table = _dbHelper.ExecuteQuery(sql); if (table == null || table.Rows.Count == 0) { Trace.WriteLine("没有查到病人信息"); return(null); } DataRow dr = table.AsEnumerable().FirstOrDefault(); if (table.Rows.Count == 1) { PopOpen = false; patient = BuildDTO(dr); } else if (table.Rows.Count > 1) { PopView = table.DefaultView; PopOpen = true; } return(patient); } catch (Exception ex) { throw new Exception("获取病人信息失败"); } }
private Patient_DTO BuildDTO(DataRow p_dataRow) { Patient_DTO patient = null; if (p_dataRow == null) { return(null); } try { DataColumnCollection rowColumns = p_dataRow.Table.Columns; for (int i = 0; i < rowColumns.Count; i++) { DataColumn dc = rowColumns[i]; var obj = p_dataRow[dc.ColumnName]; if (obj is DBNull) { continue; } switch (dc.ColumnName.ToUpper()) { case "PATIENTID": patient.PatientID = obj.ToString(); break; case "NAME": patient.FullName = obj.ToString(); break; case "GENDER": string gender = obj.ToString(); switch (gender) { case "0": case "男": patient.Gender = 0; break; case "1": case "女": patient.Gender = 1; break; } break; case "BIRTHDAY": patient.Birthday = obj.ToString(); break; case "AGE": patient.Age = int.Parse(obj.ToString()); break; case "REQUESTDOCTOR": patient.RequestDoctor = obj.ToString(); break; case "REQUESTDEPOT": patient.RequestDepartment = obj.ToString(); break; case "REQUESTDATE": patient.RequestDate = obj.ToString(); break; case "EXAMDEPARTMENT": patient.ExamDepartment = obj.ToString(); break; case "EXAMDOCTOR": patient.ExamDoctor = obj.ToString(); break; case "DIAGNOSTICIANDOCTOR": patient.DiagnosticianDoctor = obj.ToString(); break; } } return(patient); } catch (Exception ex) { ClientHelper.TraceException("DBClient.BuildDTO", "数据映射失败", "p_dataRow数据出错"); } return(null); }