/// <summary>Часть. Получение нормы по возрасту</summary> public string f_GetPartNormValue(Cl_User.E_Sex a_Sex, byte a_Age) { decimal?min = null; decimal?max = null; return(f_GetPartNormValue(a_Sex, a_Age, out min, out max)); }
/// <summary>Создание новой медкарты</summary> /// <param name="a_Number">Номер медкарта</param> /// <param name="a_PatientID">ID пациента</param> /// <param name="a_PatientSex">Пол пациента</param> /// <param name="a_PatientSurName">Фамиля пациента</param> /// <param name="a_PatientName">Имя пациента</param> /// <param name="a_PatientLastName">Отчество пациента</param> /// <param name="a_PatientDateBirth">Дата рождения пациента</param> /// <param name="a_Comment">Комментарий</param> /// <returns>Созданная медкарта</returns> public Cl_MedicalCard f_CreateMedicalCard(string a_Number, int a_PatientID, Cl_User.E_Sex a_PatientSex, string a_PatientSurName, string a_PatientName, string a_PatientLastName, DateTime a_PatientDateBirth, string a_Comment) { if (m_DataContextMegaTemplate != null) { if (string.IsNullOrWhiteSpace(a_Number)) { MonitoringStub.Error("Error_CreateMedicalCard", "Не указан номер медкарты", null, null, null); return(null); } if (string.IsNullOrWhiteSpace(a_PatientSurName)) { MonitoringStub.Error("Error_CreateMedicalCard", "Не указано фамилия пациента", null, null, null); return(null); } if (string.IsNullOrWhiteSpace(a_PatientName)) { MonitoringStub.Error("Error_CreateMedicalCard", "Не указано имя пациента", null, null, null); return(null); } if (string.IsNullOrWhiteSpace(a_PatientLastName)) { MonitoringStub.Error("Error_CreateMedicalCard", "Не указано отчество пациента", null, null, null); return(null); } var medicalCard = new Cl_MedicalCard(); try { medicalCard.p_Number = a_Number; medicalCard.p_DateCreate = DateTime.Now; medicalCard.p_PatientID = a_PatientID; medicalCard.p_PatientSex = a_PatientSex; medicalCard.p_PatientSurName = a_PatientSurName; medicalCard.p_PatientName = a_PatientName; medicalCard.p_PatientLastName = a_PatientLastName; medicalCard.p_PatientDateBirth = a_PatientDateBirth; medicalCard.p_Comment = a_Comment; m_DataContextMegaTemplate.p_MedicalCards.Add(medicalCard); m_DataContextMegaTemplate.SaveChanges(); return(medicalCard); } catch (Exception er) { m_DataContextMegaTemplate.p_MedicalCards.Remove(medicalCard); MonitoringStub.Error("Error_CreateMedicalCard", "Не удалось создать медкарту", er, null, null); return(null); } } else { MonitoringStub.Error("Error_MedicalCardsFacade", "Не инициализирован фасад", null, null, null); return(null); } }
/// <summary>Получение максимального значения нормы</summary> public decimal f_GetMax(Cl_User.E_Sex a_Sex, byte a_Round) { if (a_Sex == Cl_User.E_Sex.Man) { return(Math.Round(p_MaleMax, a_Round)); } else if (a_Sex == Cl_User.E_Sex.Female) { return(Math.Round(p_FemaleMax, a_Round)); } else { return(0); } }
/// <summary>Часть. Получение нормы по возрасту</summary> public string f_GetPartNormValue(Cl_User.E_Sex a_Sex, byte a_Age, out decimal?a_Min, out decimal?a_Max) { a_Min = null; a_Max = null; if (p_IsPartNorm) { a_Max = p_PartNorm; return(p_PartNorm.ToString()); } else if (p_IsPartNormRange && p_PartAgeNorms != null && p_PartAgeNorms.Count > 0) { Cl_AgeNorm ageNorm = p_PartAgeNorms.FirstOrDefault(a => a.p_AgeFrom <= a_Age && a.p_AgeTo >= a_Age); if (ageNorm != null) { a_Min = ageNorm.f_GetMin(a_Sex, p_NumberRound); a_Max = ageNorm.f_GetMax(a_Sex, p_NumberRound); return(string.Format("{0} - {1}", a_Min, a_Max)); } } return(""); }