/// <summary> /// Получить консультацию по уникальным данным /// </summary> /// <param name="visitDate">Дата консультации</param> /// <param name="patientFIO">ФИО пациента</param> /// <param name="patientNosologyName">Название нозологии</param> /// <param name="wrongVisitId">id консультации, который надо игнорировать</param> /// <returns></returns> public CVisit GetByGeneralData( DateTime visitDate, string patientFIO, string patientNosologyName, int wrongVisitId) { foreach (CVisit visit in _visitList) { CPatient patient = _workersKeeper.PatientWorker.GetById(visit.PatientId); if (CCompareEngine.CompareDateTime(visit.VisitDate, visitDate) == 0 && patient.GetFullName() == patientFIO && patient.Nosology == patientNosologyName && visit.Id != wrongVisitId) { return(visit); } } return(null); }
/// <summary> /// Получить госпитализацию по дате поступления /// </summary> /// <param name="deliveryDate">Дата поступления</param> /// <param name="patientFIO">ФИО пациента</param> /// <param name="patientNosologyName">Название нозологии</param> /// <param name="wrongHospitalizationId">id госпитализации, которая игнорируется</param> /// <returns></returns> public CHospitalization GetByGeneralData( DateTime deliveryDate, string patientFIO, string patientNosologyName, int wrongHospitalizationId) { foreach (CHospitalization hospitalization in _hospitalizationList) { CPatient patient = _workersKeeper.PatientWorker.GetById(hospitalization.PatientId); if (CCompareEngine.CompareDateTime(hospitalization.DeliveryDate, deliveryDate) == 0 && patient.GetFullName() == patientFIO && patient.Nosology == patientNosologyName && hospitalization.Id != wrongHospitalizationId) { return(hospitalization); } } return(null); }
/// <summary> /// Получить операцию с указанным названием /// </summary> /// <param name="name">Название операции</param> /// <param name="hospitalizationDeliveryDate">Дата госпитализации</param> /// <param name="patientFIO">ФИО пациента</param> /// <param name="patientNosologyName">Название нозологии</param> /// <param name="wrongOperationId">id операции, которая игнорируется</param> /// <returns></returns> public COperation GetByGeneralData( string name, DateTime hospitalizationDeliveryDate, string patientFIO, string patientNosologyName, int wrongOperationId) { foreach (COperation operation in _operationList) { CHospitalization hospitalization = _workersKeeper.HospitalizationWorker.GetById(operation.HospitalizationId); CPatient patient = _workersKeeper.PatientWorker.GetById(hospitalization.PatientId); if (operation.Name == name && CCompareEngine.CompareDateTime(hospitalization.DeliveryDate, hospitalizationDeliveryDate) == 0 && patient.GetFullName() == patientFIO && patient.Nosology == patientNosologyName && operation.Id != wrongOperationId) { return(operation); } } return(null); }
public static int Compare(CVisit visit1, CVisit visit2) { return(CCompareEngine.CompareDateTime(visit1.VisitDate, visit2.VisitDate)); }
public CPatientView(CPatient patientInfo, CWorkersKeeper workersKeeper) { Id = patientInfo.Id.ToString(CultureInfo.InvariantCulture); Nosology = patientInfo.Nosology; FullName = patientInfo.GetFullName(); HospitalizationCnt = workersKeeper.HospitalizationWorker.GetCountByPatientId(patientInfo.Id).ToString(CultureInfo.InvariantCulture); VisitCnt = workersKeeper.VisitWorker.GetCountByPatientId(patientInfo.Id).ToString(CultureInfo.InvariantCulture); COperation[] operations = workersKeeper.OperationWorker.GetListByPatientId(patientInfo.Id); OperationCnt = operations.Length.ToString(CultureInfo.InvariantCulture); Age = CConvertEngine.GetAge(patientInfo.Birthday); var operationTypeSB = new StringBuilder(); foreach (COperation operation in operations) { foreach (string operationType in operation.OperationTypes) { if (!operationTypeSB.ToString().Contains(operationType)) { operationTypeSB.Append(operationType + ", "); } } } OperationTypes = operationTypeSB.Length > 0 ? operationTypeSB.ToString().Substring(0, operationTypeSB.Length - 2) : operationTypeSB.ToString(); int hospitalizationCnt = Convert.ToInt32(HospitalizationCnt); int visitCnt = Convert.ToInt32(VisitCnt); CVisit lastVisit = null; if (visitCnt > 0) { lastVisit = workersKeeper.VisitWorker.GetListByPatientId(patientInfo.Id)[visitCnt - 1]; } CHospitalization lastHospitalization = null; if (hospitalizationCnt > 0) { lastHospitalization = workersKeeper.HospitalizationWorker.GetListByPatientId(patientInfo.Id)[hospitalizationCnt - 1]; } if (lastHospitalization != null) { DeliveryDateString = CConvertEngine.DateTimeToString(lastHospitalization.DeliveryDate, true); ReleaseDateString = CConvertEngine.DateTimeToString(lastHospitalization.ReleaseDate, false); KD = lastHospitalization.KD; if (lastVisit == null) { Diagnose = lastHospitalization.DiagnoseOneLine; } } if (lastVisit != null) { VisitDateString = CConvertEngine.DateTimeToString(lastVisit.VisitDate, true); } if (lastHospitalization == null && lastVisit != null) { Diagnose = lastVisit.DiagnoseOneLine; } else if (lastHospitalization != null && lastVisit != null) { int dateCompareResult = CCompareEngine.CompareDateTime(lastHospitalization.DeliveryDate, lastVisit.VisitDate); Diagnose = dateCompareResult >= 0 ? lastHospitalization.DiagnoseOneLine : lastVisit.DiagnoseOneLine; } }
public static int Compare(CHospitalization hospitalization1, CHospitalization hospitalization2) { return(CCompareEngine.CompareDateTime(hospitalization1.DeliveryDate, hospitalization2.DeliveryDate)); }