コード例 #1
0
ファイル: IssuedMedicine.cs プロジェクト: rdn1983/cardiology
        private void printBtn_Click(object sender, EventArgs e)
        {
            SaveIssuedMedicine();

            Dictionary <string, string> values  = new Dictionary <string, string>();
            DdtIssuedMedicineList       medList = service.GetDdtIssuedMedicineListService().GetById(issuedMedId);
            DdtHospital hospitalSession         = service.GetDdtHospitalService().GetById(hospitalitySession.ObjectId);

            DdvDoctor  doc      = null;
            DdvDoctor  nurse    = null;
            DdvDoctor  director = null;
            DdvDoctor  pharma   = null;
            DdvPatient patient  = null;

            if (medList != null)
            {
                doc      = service.GetDdvDoctorService().GetById(medList.Doctor);
                nurse    = service.GetDdvDoctorService().GetById(medList.Nurse);
                director = service.GetDdvDoctorService().GetById(medList.Director);
                pharma   = service.GetDdvDoctorService().GetById(medList.Pharmacologist);
                patient  = service.GetDdvPatientService().GetById(medList.Patient);
            }

            values.Add(@"{doctor.who.short}", doc?.ShortName);
            values.Add(@"{patient.diagnosis}", diagnosisTxt.Text);
            values.Add(@"{patient.age}", patient != null? DateTime.Now.Year - patient.Birthdate.Year + "": "");
            values.Add(@"{admission.date}", hospitalSession.AdmissionDate.ToShortDateString());
            values.Add(@"{patient.historycard}", patient?.MedCode);
            values.Add(@"{patient.fullname}", patient?.FullName);
            values.Add(@"{kag}", kagBtn.Checked ? shortlyOperationTxt.Text : "");
            values.Add(@"{nurse}", nurse?.ShortName);
            values.Add(@"{doctor.pharma}", pharma?.ShortName);
            values.Add(@"{doctor.director}", director?.ShortName);
            values.Add(@"{room}", hospitalitySession.RoomCell);
            values.Add(@"{cell}", "");
            values.Add(@"{diet}", "НКД");
            values.Add(@"{date}", DateTime.Now.ToShortDateString());
            //todo переписать,когда будет время. Сделать добавление в таблицу строчек автоматом
            for (int i = 0; i < 19; i++)
            {
                string value = "";
                if (i < medicineList.Count)
                {
                    DdtCure cure = service.GetDdtCureService().GetById(medicineList[i].Cure);
                    value = cure.Name;
                }
                values.Add(@"{issued_medicine_" + i + "}", value);
            }
            string templatePath = Directory.GetCurrentDirectory() + "\\Templates\\issued_medicine_template.doc";

            TemplatesUtils.FillTemplateAndShow(templatePath, values, TemplatesUtils.getTempFileName("Назначения", patient.FullName));
        }
コード例 #2
0
        private void InitIssuedMedicine()
        {
            DdtIssuedMedicineList medList =
                service.GetDdtIssuedMedicineListService().GetListByParentId(anamnesis?.ObjectId);

            if (medList != null)
            {
                IList <DdtIssuedMedicine> list = DbDataService.GetInstance().GetDdtIssuedMedicineService().GetListByMedicineListId(medList.ObjectId);
                foreach (DdtIssuedMedicine med in list)
                {
                    DdtCure cure = DbDataService.GetInstance().GetDdtCureService().GetById(med.Cure);
                    AddIssuedMedicine(med, cure);
                }
                templateName = medList.TemplateName;
            }
        }
コード例 #3
0
ファイル: IssuedMedicine.cs プロジェクト: rdn1983/cardiology
        private void InitIssuedMedList(DdtIssuedMedicineList medList)
        {
            if (medList != null)
            {
                diagnosisTxt.Text        = medList.Diagnosis;
                shortlyOperationTxt.Text = medList.HasKag;

                IList <DdtIssuedMedicine> list = DbDataService.GetInstance().GetDdtIssuedMedicineService().GetListByMedicineListId(medList.ObjectId);
                foreach (DdtIssuedMedicine med in list)
                {
                    DdtCure cure = DbDataService.GetInstance().GetDdtCureService().GetById(med.Cure);
                    AddIssuedMedicine(med, cure);
                }
            }
            else
            {
                copyFirstMedicineBtn_Click(null, null);
            }
        }
コード例 #4
0
        public string Save(DdtCure obj)
        {
            using (dynamic connection = connectionFactory.GetConnection())
            {
                if (GetById(obj.ObjectId) != null)
                {
                    string sql = "UPDATE ddt_cure SET " +
                                 "dss_name = @Name, " +
                                 "dsid_cure_type = @CureType " +
                                 "WHERE r_object_id = @ObjectId";

                    Logger.Debug(CultureInfo.CurrentCulture, "SQL: {0}", sql);
                    using (Npgsql.NpgsqlCommand cmd = new Npgsql.NpgsqlCommand(sql, connection))
                    {
                        cmd.CommandType = CommandType.Text;
                        cmd.Parameters.AddWithValue("@Name", obj.Name == null ? "" : obj.Name);
                        cmd.Parameters.AddWithValue("@CureType", obj.CureType);
                        cmd.Parameters.AddWithValue("@ObjectId", obj.ObjectId);
                        cmd.ExecuteNonQuery();
                    }
                    return(obj.ObjectId);
                }
                else
                {
                    string sql = "INSERT INTO ddt_cure(dss_name,dsid_cure_type) " +
                                 "VALUES(@Name,@CureType) RETURNING r_object_id";
                    Logger.Debug(CultureInfo.CurrentCulture, "SQL: {0}", sql);
                    using (Npgsql.NpgsqlCommand cmd = new Npgsql.NpgsqlCommand(sql, connection))
                    {
                        cmd.CommandType = CommandType.Text;
                        cmd.Parameters.AddWithValue("@Name", obj.Name == null ? "" : obj.Name);
                        cmd.Parameters.AddWithValue("@CureType", obj.CureType);
                        return((string)cmd.ExecuteScalar());
                    }
                }
            }
        }
コード例 #5
0
        public string processTemplate(IDbDataService service, string hospitalitySession, string objectId, Dictionary <string, string> aditionalValues)
        {
            Dictionary <string, string> values = null;

            if (aditionalValues != null)
            {
                values = new Dictionary <string, string>(aditionalValues);
            }
            else
            {
                values = new Dictionary <string, string>();
            }
            DdtAnamnesis anamnesis = service.GetDdtAnamnesisService().GetById(objectId);

            values.Add("{allergy}", anamnesis.AnamnesisAllergy);
            values.Add("{complaints}", anamnesis.Complaints);
            values.Add("{anamnesis}", anamnesis.AnamnesisMorbi);
            values.Add("{chronicle}", anamnesis.AccompanyingIllnesses);
            values.Add("{epid}", anamnesis.AnamnesisEpid);
            values.Add("{alco}", anamnesis.DrugsIntoxication);
            values.Add("{st_presens}", anamnesis.StPresens);
            values.Add("{respiratory_system}", anamnesis.RespiratorySystem);
            values.Add("{cardiovascular}", anamnesis.CardiovascularSystem);
            values.Add("{digestive_system}", anamnesis.DigestiveSystem);
            values.Add("{urinary_system}", anamnesis.UrinarySystem);
            values.Add("{nervous_system}", anamnesis.NervousSystem);
            values.Add("{past_surgeries}", anamnesis.PastSurgeries);
            values.Add("{operation_cause}", anamnesis.OperationCause);
            values.Add("{diagnosis}", anamnesis.Diagnosis);
            values.Add("{justification}", anamnesis.DiagnosisJustification);

            DdvDoctor doc = service.GetDdvDoctorService().GetById(anamnesis.Doctor);

            values.Add("{cardio}", doc.ShortName);

            PutAnalysisData(values, service, anamnesis.ObjectId);
            StringBuilder builder = new StringBuilder();

            DdtIssuedMedicineList medList = service.GetDdtIssuedMedicineListService().GetListByParentId(anamnesis?.ObjectId);

            if (medList != null)
            {
                IList <DdtIssuedMedicine> med = service.GetDdtIssuedMedicineService().GetListByMedicineListId(medList.ObjectId);
                for (int i = 0; i < med.Count; i++)
                {
                    DdtCure cure = service.GetDdtCureService().GetById(med[i].Cure);
                    if (cure != null)
                    {
                        builder.Append(cure.Name).Append('\n');
                    }
                }
            }
            values.Add("{issued_medicine}", builder.ToString());

            StringBuilder           actionsBuilder = new StringBuilder();
            IList <DdtIssuedAction> actions        = service.GetDdtIssuedActionService().GetListByParentId(objectId);

            for (int i = 0; i < actions.Count; i++)
            {
                actionsBuilder.Append(i + 1).Append(". ");
                actionsBuilder.Append(actions[i].Action).Append('\n');
            }
            values.Add("{issued_actions}", actionsBuilder.ToString());

            DdtHospital hospital = service.GetDdtHospitalService().GetById(hospitalitySession);

            values.Add("{date}", hospital.AdmissionDate.ToShortDateString() + " " + hospital.AdmissionDate.ToShortTimeString());

            DdvPatient patient    = service.GetDdvPatientService().GetById(hospital.Patient);
            string     resultName = TemplatesUtils.getTempFileName("Первичный осмотр", patient.FullName);

            return(TemplatesUtils.FillTemplate(Directory.GetCurrentDirectory() + "\\Templates\\" + TEMPLATE_FILE_NAME, values, resultName));
        }
コード例 #6
0
        private void AddIssuedMedicine(DdtIssuedMedicine med, DdtCure cure)
        {
            medicineList.Add(med);

            FlowLayoutPanel ll = new FlowLayoutPanel();

            ll.FlowDirection = FlowDirection.LeftToRight;
            ll.Width         = 700;
            ll.AutoSize      = true;
            ll.Padding       = new Padding(0);
            ll.Margin        = new Padding(0);

            ComboBox cureTypeControl = new ComboBox();

            cureTypeControl.Width = 250;
            CommonUtils.InitCureTypeComboboxValues(DbDataService.GetInstance(), cureTypeControl);
            if (cure != null && cure.CureType != null)
            {
                for (int index = 0; index < cureTypeControl.Items.Count; index++)
                {
                    DdtCureType ct = (DdtCureType)cureTypeControl.Items[index];
                    if (ct.ObjectId == cure.CureType)
                    {
                        cureTypeControl.SelectedIndex = index;
                        break;
                    }
                }
            }
            ll.Controls.Add(cureTypeControl);

            ComboBox cureControl = new ComboBox();

            cureControl.Width = 350;

            DdtCureType cureType = (DdtCureType)cureTypeControl.SelectedItem;

            if (cureType != null)
            {
                CommonUtils.InitCureComboboxValuesByTypeId(DbDataService.GetInstance(), cureControl, cureType.ObjectId);
            }

            if (cure != null && cure.ObjectId != null)
            {
                for (int index = 0; index < cureControl.Items.Count; index++)
                {
                    DdtCure c = (DdtCure)cureControl.Items[index];
                    if (c.ObjectId == cure.ObjectId)
                    {
                        cureControl.SelectedIndex = index;
                        break;
                    }
                }
            }
            cureControl.SelectedIndexChanged += delegate(object sender2, EventArgs args)
            {
                DdtCure ddtCure = (DdtCure)cureControl.SelectedItem;
                if (ddtCure != null)
                {
                    med.Cure = ddtCure.ObjectId;
                }
                else
                {
                    med.Cure = null;
                }
            };
            ll.Controls.Add(cureControl);

            cureTypeControl.SelectedIndexChanged += delegate(object sender2, EventArgs args)
            {
                DdtCureType selectedVal = (DdtCureType)cureTypeControl.SelectedItem;
                CommonUtils.InitCureComboboxValuesByTypeId(DbDataService.GetInstance(), cureControl, selectedVal.ObjectId);
            };

            Button remove = new Button
            {
                Image = Properties.Resources.remove,
                Size  = new Size(25, 25),
                UseVisualStyleBackColor = true
            };

            ll.Controls.Add(remove);

            remove.Click += delegate(object sender2, EventArgs args)
            {
                medicineList.Remove(med);
                layout.Controls.Remove(ll);
            };
            layout.Controls.Add(ll);
        }