Exemplo n.º 1
0
        private void InitControls()
        {
            DdtBloodAnalysis blood = DbDataService.GetInstance().GetDdtBloodAnalysisService().GetById(objectId);

            refreshObject(blood);
            regularAltTxt.Enabled         = isEditable;
            regularAmilazaTzt.Enabled     = isEditable;
            regularAstTxt.Enabled         = isEditable;
            regularBilTxt.Enabled         = isEditable;
            regularChloriumTxt.Enabled    = isEditable;
            regularCholesterolTxt.Enabled = isEditable;
            regularKreatininTxt.Enabled   = isEditable;
            regularHemoglobinTxt.Enabled  = isEditable;
            regularIronTxt.Enabled        = isEditable;
            regularKfkTxt.Enabled         = isEditable;
            regularKfkMvTxt.Enabled       = isEditable;
            regularBloodLeucoTxt.Enabled  = isEditable;
            regularTrombocytesTxt.Enabled = isEditable;
            regularPotassiumTxt.Enabled   = isEditable;
            regularProreinTxt.Enabled     = isEditable;
            regularSchfTxt.Enabled        = isEditable;
            regularSodiumTxt.Enabled      = isEditable;
            regularSrbTxt.Enabled         = isEditable;
            regularBloodDateTxt.Enabled   = isEditable;
            regularBloodPnl.Text          = blood == null ? "Анализы текущие" : "Анализы промежуточные за " + blood.AnalysisDate.ToShortDateString();
        }
Exemplo n.º 2
0
 public void refreshObject(object obj)
 {
     if (obj != null && obj is DdtBloodAnalysis)
     {
         DdtBloodAnalysis blood = (DdtBloodAnalysis)obj;
         if (blood.AnalysisDate > DateTime.MinValue)
         {
             regularBloodDateTxt.Value = blood.AnalysisDate;
         }
         regularAltTxt.Text         = blood.Alt;
         regularAmilazaTzt.Text     = blood.Amylase;
         regularAstTxt.Text         = blood.Ast;
         regularBilTxt.Text         = blood.Bil;
         regularChloriumTxt.Text    = blood.Chlorine;
         regularCholesterolTxt.Text = blood.Cholesterol;
         regularKreatininTxt.Text   = blood.Creatinine;
         regularHemoglobinTxt.Text  = blood.Hemoglobin;
         regularIronTxt.Text        = blood.Iron;
         regularKfkTxt.Text         = blood.Kfk;
         regularKfkMvTxt.Text       = blood.KfkMv;
         regularBloodLeucoTxt.Text  = blood.Leucocytes;
         regularTrombocytesTxt.Text = blood.Platelets;
         regularPotassiumTxt.Text   = blood.Potassium;
         regularProreinTxt.Text     = blood.Protein;
         regularSchfTxt.Text        = blood.Schf;
         regularSodiumTxt.Text      = blood.Sodium;
         regularSrbTxt.Text         = blood.Srp;
         objectId   = blood.ObjectId;
         isNew      = string.IsNullOrEmpty(blood.ObjectId);
         hasChanges = false;
     }
 }
Exemplo n.º 3
0
        public object getObject()
        {
            DdtBloodAnalysis bloodObj = DbDataService.GetInstance().GetDdtBloodAnalysisService().GetById(objectId);

            if (bloodObj == null)
            {
                bloodObj = new DdtBloodAnalysis();
            }
            bloodObj.AnalysisDate = regularBloodDateTxt.Value;
            bloodObj.Alt          = regularAltTxt.Text;
            bloodObj.Amylase      = regularAmilazaTzt.Text;
            bloodObj.Ast          = regularAstTxt.Text;
            bloodObj.Bil          = regularBilTxt.Text;
            bloodObj.Chlorine     = regularChloriumTxt.Text;
            bloodObj.Cholesterol  = regularCholesterolTxt.Text;
            bloodObj.Creatinine   = regularKreatininTxt.Text;
            bloodObj.Hemoglobin   = regularHemoglobinTxt.Text;
            bloodObj.Iron         = regularIronTxt.Text;
            bloodObj.Kfk          = regularKfkTxt.Text;
            bloodObj.KfkMv        = regularKfkMvTxt.Text;
            bloodObj.Leucocytes   = regularBloodLeucoTxt.Text;
            bloodObj.Platelets    = regularTrombocytesTxt.Text;
            bloodObj.Potassium    = regularPotassiumTxt.Text;
            bloodObj.Protein      = regularProreinTxt.Text;
            bloodObj.Schf         = regularSchfTxt.Text;
            bloodObj.Sodium       = regularSodiumTxt.Text;
            bloodObj.Srp          = regularSrbTxt.Text;
            return(bloodObj);
        }
Exemplo n.º 4
0
        public void saveObject(DdtHospital hospitalitySession, string parentId, string parentType)
        {
            if (isEditable && (isDirty() || isNew && getIsValid()))
            {
                DdtBloodAnalysis bloodObj = (DdtBloodAnalysis)getObject();
                bloodObj.HospitalitySession = hospitalitySession.ObjectId;
                bloodObj.Doctor             = hospitalitySession.CuringDoctor;
                bloodObj.Patient            = hospitalitySession.Patient;
                bloodObj.ParentType         = parentType;
                bloodObj.Parent             = parentId;
                objectId = DbDataService.GetInstance().GetDdtBloodAnalysisService().Save(bloodObj);

                hasChanges = false;
                isNew      = false;
            }
        }
Exemplo n.º 5
0
        public Transfusion(IDbDataService service, DdtHospital hospitalSession, string transfusionId)
        {
            this.service         = service;
            this.hospitalSession = hospitalSession;
            patient = service.GetDdtPatientService().GetById(hospitalSession.Patient);
            if (!String.IsNullOrEmpty(transfusionId))
            {
                transfusion     = service.GetDdtTransfusionService().GetById(transfusionId);
                ConsiliumId     = transfusion.Consilium;
                BloodAnalysisId = transfusion.BloodAnalysis;
                bloodAnalysis   = service.GetDdtBloodAnalysisService().GetById(transfusion.BloodAnalysis);
            }

            InitializeComponent();
            InitControls();
        }
        public List <DdtBloodAnalysis> GetByQuery(string sql)
        {
            List <DdtBloodAnalysis> list = new List <DdtBloodAnalysis>();

            using (dynamic connection = connectionFactory.GetConnection())
            {
                Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(sql, connection);
                using (DbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        DdtBloodAnalysis obj = new DdtBloodAnalysis();
                        obj.ObjectId           = reader.IsDBNull(0) ? null : reader.GetString(0);
                        obj.Alt                = reader.IsDBNull(1) ? null : reader.GetString(1);
                        obj.Creatinine         = reader.IsDBNull(2) ? null : reader.GetString(2);
                        obj.Platelets          = reader.IsDBNull(3) ? null : reader.GetString(3);
                        obj.Hemoglobin         = reader.IsDBNull(4) ? null : reader.GetString(4);
                        obj.Chlorine           = reader.IsDBNull(5) ? null : reader.GetString(5);
                        obj.Leucocytes         = reader.IsDBNull(6) ? null : reader.GetString(6);
                        obj.Potassium          = reader.IsDBNull(7) ? null : reader.GetString(7);
                        obj.ParentType         = reader.IsDBNull(8) ? null : reader.GetString(8);
                        obj.Kfk                = reader.IsDBNull(9) ? null : reader.GetString(9);
                        obj.KfkMv              = reader.IsDBNull(10) ? null : reader.GetString(10);
                        obj.Sodium             = reader.IsDBNull(11) ? null : reader.GetString(11);
                        obj.AdmissionAnalysis  = reader.GetBoolean(12);
                        obj.Srp                = reader.IsDBNull(13) ? null : reader.GetString(13);
                        obj.DischargeAnalysis  = reader.GetBoolean(14);
                        obj.Amylase            = reader.IsDBNull(15) ? null : reader.GetString(15);
                        obj.AnalysisDate       = reader.IsDBNull(16) ? DateTime.MinValue : reader.GetDateTime(16);
                        obj.Cholesterol        = reader.IsDBNull(17) ? null : reader.GetString(17);
                        obj.Schf               = reader.IsDBNull(18) ? null : reader.GetString(18);
                        obj.Bil                = reader.IsDBNull(19) ? null : reader.GetString(19);
                        obj.Iron               = reader.IsDBNull(20) ? null : reader.GetString(20);
                        obj.CreationDate       = reader.IsDBNull(21) ? DateTime.MinValue : reader.GetDateTime(21);
                        obj.Ast                = reader.IsDBNull(22) ? null : reader.GetString(22);
                        obj.Parent             = reader.IsDBNull(23) ? null : reader.GetString(23);
                        obj.Doctor             = reader.IsDBNull(24) ? null : reader.GetString(24);
                        obj.Patient            = reader.IsDBNull(25) ? null : reader.GetString(25);
                        obj.HospitalitySession = reader.IsDBNull(26) ? null : reader.GetString(26);
                        obj.ModifyDate         = reader.IsDBNull(27) ? DateTime.MinValue : reader.GetDateTime(27);
                        obj.Protein            = reader.IsDBNull(28) ? null : reader.GetString(28);
                        list.Add(obj);
                    }
                }
            }
            return(list);
        }
        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>();
            }
            DdtTransfusion   transfusion   = service.GetDdtTransfusionService().GetById(objectId);
            DdtHospital      hospital      = service.GetDdtHospitalService().GetById(hospitalitySession);
            DdvPatient       patient       = service.GetDdvPatientService().GetById(hospital.Patient);
            DdtBloodAnalysis bloodAnalysis = service.GetDdtBloodAnalysisService().GetById(transfusion.BloodAnalysis);

            values.Add(@"{name}", patient.FullName);
            values.Add(@"{age}", (DateTime.Now.Year - patient.Birthdate.Year) + "");
            values.Add(@"{historycard}", patient.MedCode);
            values.Add(@"{diagnosis}", hospital.Diagnosis);
            values.Add(@"{blood}", patient.BloodGroup);
            values.Add(@"{rh}", patient.RHFactor);
            values.Add(@"{kell}", patient.Kell);
            values.Add(@"{phenotype}", patient.Phenotype);

            values.Add(@"{indications}", "гемическая гипоксия");
            values.Add(@"{meduim}", transfusion?.TransfusionMedium);
            values.Add(@"{doctor}", GetDoctorInString(service, transfusion?.Doctor));
            values.Add(@"{transfusionDate}", transfusion?.TransfusionDate.ToShortDateString());

            string mediumNames  = "";
            string mediumCounts = "";

            String[] transfusionMediumArray = transfusion.TransfusionMedium.Split(',');
            foreach (String mediumWithCount in transfusionMediumArray)
            {
                String[] mediumArray = mediumWithCount.Split(':');

                string mediumName  = mediumArray[0];
                string mediumCount = mediumArray[1];

                switch (mediumName)
                {
                case "Blood":
                    mediumName = "Кровь";
                    break;

                case "Plasma":
                    mediumName = "Плазма";
                    break;

                case "Albumin":
                    continue;

                case "Platelet":
                    mediumName = "Тромбоцит";
                    break;
                }

                mediumNames  += string.IsNullOrEmpty(mediumNames) ? mediumName : ", " + mediumName;
                mediumCounts += string.IsNullOrEmpty(mediumCounts) ? mediumCount + " дозы" : ", " + mediumCount + " дозы";
            }
            values.Add(@"{mediumNames}", mediumNames);
            values.Add(@"{mediumCounts}", mediumCounts);

            values.Add(@"{Hemog}", bloodAnalysis.Hemoglobin);
            values.Add(@"{Hemat}", "пусто");
            values.Add(@"{aptt}", "пусто");
            values.Add(@"{inr}", "пусто");

            return(TemplatesUtils.FillTemplate(Directory.GetCurrentDirectory() + "\\Templates\\" + TemplateFileName, values));
        }
 public string Save(DdtBloodAnalysis obj)
 {
     using (dynamic connection = connectionFactory.GetConnection())
     {
         if (GetById(obj.ObjectId) != null)
         {
             string sql = "UPDATE ddt_blood_analysis SET " +
                          "dsid_hospitality_session = @HospitalitySession, " +
                          "dsid_patient = @Patient, " +
                          "dsid_doctor = @Doctor, " +
                          "dss_hemoglobin = @Hemoglobin, " +
                          "dss_leucocytes = @Leucocytes, " +
                          "dss_platelets = @Platelets, " +
                          "dss_protein = @Protein, " +
                          "dss_creatinine = @Creatinine, " +
                          "dss_cholesterol = @Cholesterol, " +
                          "dss_bil = @Bil, " +
                          "dss_iron = @Iron, " +
                          "dss_alt = @Alt, " +
                          "dss_ast = @Ast, " +
                          "dss_schf = @Schf, " +
                          "dss_amylase = @Amylase, " +
                          "dss_kfk = @Kfk, " +
                          "dss_kfk_mv = @KfkMv, " +
                          "dss_srp = @Srp, " +
                          "dss_potassium = @Potassium, " +
                          "dss_sodium = @Sodium, " +
                          "dss_chlorine = @Chlorine, " +
                          "dsb_admission_analysis = @AdmissionAnalysis, " +
                          "dsb_discharge_analysis = @DischargeAnalysis, " +
                          "dsdt_analysis_date = @AnalysisDate, " +
                          "dsid_parent = @Parent, " +
                          "dss_parent_type = @ParentType " +
                          "WHERE r_object_id = @ObjectId";
             using (Npgsql.NpgsqlCommand cmd = new Npgsql.NpgsqlCommand(sql, connection))
             {
                 cmd.CommandType = CommandType.Text;
                 cmd.Parameters.AddWithValue("@HospitalitySession", obj.HospitalitySession);
                 cmd.Parameters.AddWithValue("@Patient", obj.Patient);
                 cmd.Parameters.AddWithValue("@Doctor", obj.Doctor);
                 cmd.Parameters.AddWithValue("@Hemoglobin", obj.Hemoglobin == null ? "" : obj.Hemoglobin);
                 cmd.Parameters.AddWithValue("@Leucocytes", obj.Leucocytes == null ? "" : obj.Leucocytes);
                 cmd.Parameters.AddWithValue("@Platelets", obj.Platelets == null ? "" : obj.Platelets);
                 cmd.Parameters.AddWithValue("@Protein", obj.Protein == null ? "" : obj.Protein);
                 cmd.Parameters.AddWithValue("@Creatinine", obj.Creatinine == null ? "" : obj.Creatinine);
                 cmd.Parameters.AddWithValue("@Cholesterol", obj.Cholesterol == null ? "" : obj.Cholesterol);
                 cmd.Parameters.AddWithValue("@Bil", obj.Bil == null ? "" : obj.Bil);
                 cmd.Parameters.AddWithValue("@Iron", obj.Iron == null ? "" : obj.Iron);
                 cmd.Parameters.AddWithValue("@Alt", obj.Alt == null ? "" : obj.Alt);
                 cmd.Parameters.AddWithValue("@Ast", obj.Ast == null ? "" : obj.Ast);
                 cmd.Parameters.AddWithValue("@Schf", obj.Schf == null ? "" : obj.Schf);
                 cmd.Parameters.AddWithValue("@Amylase", obj.Amylase == null ? "" : obj.Amylase);
                 cmd.Parameters.AddWithValue("@Kfk", obj.Kfk == null ? "" : obj.Kfk);
                 cmd.Parameters.AddWithValue("@KfkMv", obj.KfkMv == null ? "" : obj.KfkMv);
                 cmd.Parameters.AddWithValue("@Srp", obj.Srp == null ? "" : obj.Srp);
                 cmd.Parameters.AddWithValue("@Potassium", obj.Potassium == null ? "" : obj.Potassium);
                 cmd.Parameters.AddWithValue("@Sodium", obj.Sodium == null ? "" : obj.Sodium);
                 cmd.Parameters.AddWithValue("@Chlorine", obj.Chlorine == null ? "" : obj.Chlorine);
                 cmd.Parameters.AddWithValue("@AdmissionAnalysis", obj.AdmissionAnalysis);
                 cmd.Parameters.AddWithValue("@DischargeAnalysis", obj.DischargeAnalysis);
                 cmd.Parameters.AddWithValue("@AnalysisDate", obj.AnalysisDate);
                 cmd.Parameters.AddWithValue("@Parent", obj.Parent == null ? "0000000000000000" : obj.Parent);
                 cmd.Parameters.AddWithValue("@ParentType", obj.ParentType == null ? "" : obj.ParentType);
                 cmd.Parameters.AddWithValue("@ObjectId", obj.ObjectId);
                 cmd.ExecuteNonQuery();
             }
             return(obj.ObjectId);
         }
         else
         {
             string sql = "INSERT INTO ddt_blood_analysis(dsid_hospitality_session,dsid_patient,dsid_doctor,dss_hemoglobin,dss_leucocytes,dss_platelets,dss_protein,dss_creatinine,dss_cholesterol,dss_bil,dss_iron,dss_alt,dss_ast,dss_schf,dss_amylase,dss_kfk,dss_kfk_mv,dss_srp,dss_potassium,dss_sodium,dss_chlorine,dsb_admission_analysis,dsb_discharge_analysis,dsdt_analysis_date,dsid_parent,dss_parent_type) " +
                          "VALUES(@HospitalitySession,@Patient,@Doctor,@Hemoglobin,@Leucocytes,@Platelets,@Protein,@Creatinine,@Cholesterol,@Bil,@Iron,@Alt,@Ast,@Schf,@Amylase,@Kfk,@KfkMv,@Srp,@Potassium,@Sodium,@Chlorine,@AdmissionAnalysis,@DischargeAnalysis,@AnalysisDate,@Parent,@ParentType) RETURNING r_object_id";
             using (Npgsql.NpgsqlCommand cmd = new Npgsql.NpgsqlCommand(sql, connection))
             {
                 cmd.CommandType = CommandType.Text;
                 cmd.Parameters.AddWithValue("@HospitalitySession", obj.HospitalitySession);
                 cmd.Parameters.AddWithValue("@Patient", obj.Patient);
                 cmd.Parameters.AddWithValue("@Doctor", obj.Doctor);
                 cmd.Parameters.AddWithValue("@Hemoglobin", obj.Hemoglobin == null ? "" : obj.Hemoglobin);
                 cmd.Parameters.AddWithValue("@Leucocytes", obj.Leucocytes == null ? "" : obj.Leucocytes);
                 cmd.Parameters.AddWithValue("@Platelets", obj.Platelets == null ? "" : obj.Platelets);
                 cmd.Parameters.AddWithValue("@Protein", obj.Protein == null ? "" : obj.Protein);
                 cmd.Parameters.AddWithValue("@Creatinine", obj.Creatinine == null ? "" : obj.Creatinine);
                 cmd.Parameters.AddWithValue("@Cholesterol", obj.Cholesterol == null ? "" : obj.Cholesterol);
                 cmd.Parameters.AddWithValue("@Bil", obj.Bil == null ? "" : obj.Bil);
                 cmd.Parameters.AddWithValue("@Iron", obj.Iron == null ? "" : obj.Iron);
                 cmd.Parameters.AddWithValue("@Alt", obj.Alt == null ? "" : obj.Alt);
                 cmd.Parameters.AddWithValue("@Ast", obj.Ast == null ? "" : obj.Ast);
                 cmd.Parameters.AddWithValue("@Schf", obj.Schf == null ? "" : obj.Schf);
                 cmd.Parameters.AddWithValue("@Amylase", obj.Amylase == null ? "" : obj.Amylase);
                 cmd.Parameters.AddWithValue("@Kfk", obj.Kfk == null ? "" : obj.Kfk);
                 cmd.Parameters.AddWithValue("@KfkMv", obj.KfkMv == null ? "" : obj.KfkMv);
                 cmd.Parameters.AddWithValue("@Srp", obj.Srp == null ? "" : obj.Srp);
                 cmd.Parameters.AddWithValue("@Potassium", obj.Potassium == null ? "" : obj.Potassium);
                 cmd.Parameters.AddWithValue("@Sodium", obj.Sodium == null ? "" : obj.Sodium);
                 cmd.Parameters.AddWithValue("@Chlorine", obj.Chlorine == null ? "" : obj.Chlorine);
                 cmd.Parameters.AddWithValue("@AdmissionAnalysis", obj.AdmissionAnalysis);
                 cmd.Parameters.AddWithValue("@DischargeAnalysis", obj.DischargeAnalysis);
                 cmd.Parameters.AddWithValue("@AnalysisDate", obj.AnalysisDate);
                 cmd.Parameters.AddWithValue("@Parent", obj.Parent == null ? "0000000000000000" : obj.Parent);
                 cmd.Parameters.AddWithValue("@ParentType", obj.ParentType == null ? "" : obj.ParentType);
                 return((string)cmd.ExecuteScalar());
             }
         }
     }
 }