示例#1
0
 public HandbookGroup this[HandbookGroupId id]
 {
     get
     {
         return(GetHandbookGroup(id.ToString()));
     }
 }
        void SetDischargeType()
        {
            List <ReportBuilderId> list = new List <ReportBuilderId>();

            list.Add(ReportBuilderId.Discharge);
            list.Add(ReportBuilderId.DischargeEpicrisis);
            HandbookGroupId hgId = HandbookGroupId.Discharge;

            switch (patient.dischargeTypeId)
            {
            case DischargeTypeId.DepartmentTransfer:
                hgId = HandbookGroupId.DepartmentTransfer;
                list.Add(ReportBuilderId.DepartmentTransferEpicrisis);
                break;

            case DischargeTypeId.SanatoriumTransfer:
                hgId = HandbookGroupId.SanatoriumTransfer;
                list.Add(ReportBuilderId.SanatoriumTransferEpicrisis);
                break;

            case DischargeTypeId.Postmortal:
                hgId = HandbookGroupId.Postmortal;
                list.Add(ReportBuilderId.PostmortalEpicrisis);
                break;
            }
            HandbookGroup hg = App.Config[hgId];

            base.Text = hg.name;
            if (patientName.Trim().Length > 0)
            {
                base.Text += " - " + patientName;
            }
            ucHandbooksInfo.Init(patient.dischargeData, hg);
            ucSelectReport.Init(list);
        }
示例#3
0
        public bool AddHandbook(HandbookGroupId gid, Handbook hb)
        {
            HandbookGroup hg = GetHandbookGroup(gid);

            if (hg != null)
            {
                return(hg.AddHandbook(hb));
            }
            return(false);
        }
示例#4
0
        private void Add(ObservationTypeId observationTypeId)
        {
            try
            {
                using (WaitCursor wc = new WaitCursor())
                {
                    DataRow  dr       = GetPrevObservationRow(observationTypeId);
                    DateTime prevTime = dr != null ? (DateTime)dr["Time"] : patient.admissionDate;
                    DateTime dt       = App.DepartmentConfig.GetNextObservationTime(observationTypeId, patient.patientTypeId, prevTime, dr == null);

                    if (patient.dischargeDate != DateTime.MinValue && dt > patient.dischargeDate)
                    {
                        FormUtils.MessageExcl("Время наблюдения не должно быть позднее времени выписки.");
                        return;
                    }

                    Observation     observation = new Observation(observationTypeId);
                    HandbookGroupId hgId        = Observation.GetHandbookGroupId(observationTypeId);
                    if (dr != null)
                    {
                        observation.description = ObservationData.Create(dr["Description"] as string);
                    }
                    else
                    {
                        observation.description.Init(App.Config[hgId], patient.patientDescription);
                    }
                    observation.time      = dt;
                    observation.patientId = patient.Id;
                    observation.doctorId  = App.Instance.UserId;
                    ObservationForm form = new ObservationForm(observation, patientName);
                    if (form.ShowDialog() == DialogResult.OK)
                    {
                        DataRow newRow = dataTable.NewRow();
                        dataTable.Rows.Add(newRow);
                        UpdateRow(newRow, observation);
                        newRow["ObservationTypeId"]   = (int)observationTypeId;
                        newRow["ObservationTypeName"] = observationTypes[observationTypeId];
                        GridViewUtils.SetCurrentRow(gridView, newRow);
                    }
                }
            }
            catch (Exception ex)
            {
                Log.Exception(ex);
            }
        }
示例#5
0
        private void ObservationForm_Load(object sender, EventArgs e)
        {
            if (DesignMode)
            {
                return;
            }
            dtpTime.Value = observation.time;
            HandbookGroupId hgId = Observation.GetHandbookGroupId(observation.observationTypeId);
            HandbookGroup   hg   = App.Config[hgId];

            base.Text = hg.name;
            if (patientName.Trim().Length > 0)
            {
                base.Text += " - " + patientName;
            }
            ucHandbooksInfo.Init(observation.description, hg);
        }
示例#6
0
 public HandbookGroup GetHandbookGroup(HandbookGroupId id)
 {
     return(GetHandbookGroup(id.ToString()));
 }