private void addCardioInspetions_Click(object sender, EventArgs e) { int lastIndx = dutyCardioContainer.Controls.Count - 1; DateTime lastDate = DateTime.Now; DateTime initDate = DateTime.Now; DateTime startRecalculatedTime = DateTime.Now; int startRecalculateIndx = -1; for (int i = lastIndx; i >= 0; i--) { JournalKAGControl jj = (JournalKAGControl)dutyCardioContainer.Controls[i]; if (i == lastIndx) { lastDate = jj.getDateTime(); } if ((jj.isFreeze() || i == 0) && startRecalculateIndx < 0) { initDate = i == 0 ? jj.getDateTime() : DateTime.Now; startRecalculateIndx = i; } if (i == 0) { startRecalculatedTime = jj.getDateTime(); } } DateTime nextDate = lastDate.AddHours(4).AddMinutes(JournalShuffleUtils.shuffleNextIndex(5)); DateTime finalTime = new DateTime(nextDate.Year, nextDate.Month, nextDate.Day, 8, 5, 0); if ((nextDate.Day > initDate.Day || initDate.Hour < 8) && nextDate > finalTime && startRecalculateIndx >= 0) { long ticksAllDay = finalTime.Ticks - startRecalculatedTime.Ticks; double minutesAllDay = ticksAllDay / 10000000 / 60; double minutesPerJ = minutesAllDay / (dutyCardioContainer.Controls.Count); nextDate = finalTime; DateTime lastRecalculated = new DateTime(startRecalculatedTime.Ticks); for (int i = startRecalculateIndx + 1; i <= lastIndx; i++) { JournalKAGControl jj = (JournalKAGControl)dutyCardioContainer.Controls[i]; //weight 100% = 240 minutes; DateTime re = lastRecalculated.AddMinutes(minutesPerJ); jj.initDateTime(re); lastRecalculated = new DateTime(re.Ticks); } } JournalKAGControl control = new JournalKAGControl(this, null, false); control.Anchor = AnchorStyles.Right; control.initDateTime(nextDate); dutyCardioContainer.Controls.Add(control); }
private void initCardioConslusions(IDbDataService service) { IList <DdtJournal> cardioConclusions = service.GetDdtJournalService().GetByJournalDayId(journalDayId); for (int i = 0; i < cardioConclusions.Count; i++) { if (dutyCardioContainer.Controls.Count <= i) { JournalKAGControl control = new JournalKAGControl(this, cardioConclusions[i].ObjectId, false); //control.Anchor = AnchorStyles.Right; dutyCardioContainer.Controls.Add(control); } } }
public bool Save() { if (!getIsValid()) { return(false); } service.GetDdtHospitalService().Save(hospitalitySession); DdtJournalDay journalDay = null; if (!string.IsNullOrEmpty(journalDayId)) { journalDay = service.GetDdtJournalDayService().GetById(journalDayId); } else { journalDay = new DdtJournalDay(); journalDay.JournalType = 1; journalDay.HospitalitySession = hospitalitySession.ObjectId; journalDay.Patient = hospitalitySession.Patient; journalDay.JournalType = (int)DdtJournalDsiType.AfterKag; //journal.Complaints = "Жалоб на момент осмотра не предъявляет."; } journalDay.AdmissionDate = CommonUtils.ConstructDateWIthTime(admissionDateTxt.Value, admissionTimeTxt.Value); DdvDoctor doc = (DdvDoctor)journalDocBox.SelectedItem; journalDay.Doctor = doc == null ? hospitalitySession.DutyDoctor : doc.ObjectId; journalDay.Diagnosis = afterKagDiagnosisTxt.Text; journalDayId = service.GetDdtJournalDayService().Save(journalDay); DdtVariousSpecConcluson cardioVascularConc = service.GetDdtVariousSpecConclusonService().GetByParentId(journalDayId); if (cardioVascularConc == null) { cardioVascularConc = new DdtVariousSpecConcluson(); cardioVascularConc.Parent = journalDayId; } cardioVascularConc.AdmissionDate = CommonUtils.ConstructDateWIthTime(cardioDate.Value, cardioTime.Value); cardioVascularConc.SpecialistConclusion = surgeryInspectationTxt.Text; cardioVascularConc.AdditionalInfo1 = chddSurgeryTxt.Text; cardioVascularConc.AdditionalInfo3 = adSurgeryTxt.Text; cardioVascularConc.AdditionalInfo2 = chssSurgeryTxt.Text; cardioVascularConc.AdditionalInfo4 = (string)cardioVascularBox.SelectedValue; service.GetDdtVariousSpecConclusonService().Save(cardioVascularConc); if (!string.IsNullOrEmpty(kagDiagnosisTxt.Text)) { DdtKag kag = service.GetDdtKagService().GetById(kagId); if (kag == null) { kag = new DdtKag(); kag.Doctor = hospitalitySession.CuringDoctor; kag.HospitalitySession = hospitalitySession.ObjectId; kag.Patient = hospitalitySession.Patient; DateTime admissionDateTime = CommonUtils.ConstructDateWIthTime(admissionDateTxt.Value, admissionTimeTxt.Value); kag.AnalysisDate = admissionDateTime.AddMinutes(-75); kag.StartTime = admissionDateTime.AddMinutes(-75); kag.EndTime = admissionDateTime.AddMinutes(-15); kag.KagAction = kagDiagnosisTxt.Text; kagId = service.GetDdtKagService().Save(kag); IDdtRelationService relationService = DbDataService.GetInstance().GetDdtRelationService(); if (kagId != null && relationService.GetByParentAndChildIds(journalDayId, kagId) == null) { DdtRelation relation = new DdtRelation(); relation.Parent = journalDayId; relation.Child = kagId; relation.ChildType = DdtJournal.NAME; relationService.Save(relation); } } } for (int i = 0; i < dutyCardioContainer.Controls.Count; i++) { JournalKAGControl journalCtrl = (JournalKAGControl)dutyCardioContainer.Controls[i]; journalCtrl.saveObject(hospitalitySession, journalDayId, DdtJournal.NAME); } analysisTabControl1.save(journalDayId, DdtJournal.NAME); return(true); }