Example #1
0
        public DdtConsiliumGroup GetById(string id)
        {
            using (dynamic connection = connectionFactory.GetConnection())
            {
                String sql = String.Format("SELECT r_object_id, r_modify_date, r_creation_date, dss_name, dsi_level FROM ddt_consilium_group WHERE r_object_id = '{0}'", id);

                Logger.Debug(CultureInfo.CurrentCulture, "SQL: {0}", sql);

                Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(sql, connection);
                using (DbDataReader reader = command.ExecuteReader())
                {
                    if (reader.Read())
                    {
                        DdtConsiliumGroup obj = new DdtConsiliumGroup();
                        obj.ObjectId     = reader.IsDBNull(0) ? null : reader.GetString(0);
                        obj.ModifyDate   = reader.IsDBNull(1) ? DateTime.MinValue : reader.GetDateTime(1);
                        obj.CreationDate = reader.IsDBNull(2) ? DateTime.MinValue : reader.GetDateTime(2);
                        obj.Name         = reader.IsDBNull(0) ? null : reader.GetString(3);
                        obj.Level        = reader.IsDBNull(4) ? -1 : reader.GetInt16(4);
                        return(obj);
                    }
                }
            }
            return(null);
        }
Example #2
0
        public IList <DdtConsiliumGroup> GetAll()
        {
            IList <DdtConsiliumGroup> list = new List <DdtConsiliumGroup>();

            using (dynamic connection = connectionFactory.GetConnection())
            {
                String sql = "SELECT r_object_id, r_modify_date, r_creation_date, dss_name, dsi_level FROM ddt_consilium_group";

                Logger.Debug(CultureInfo.CurrentCulture, "SQL: {0}", sql);

                Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(sql, connection);
                using (DbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        DdtConsiliumGroup obj = new DdtConsiliumGroup();
                        obj.ObjectId     = reader.IsDBNull(0) ? null : reader.GetString(0);
                        obj.ModifyDate   = reader.IsDBNull(1) ? DateTime.MinValue : reader.GetDateTime(1);
                        obj.CreationDate = reader.IsDBNull(2) ? DateTime.MinValue : reader.GetDateTime(2);
                        obj.Name         = reader.IsDBNull(0) ? null : reader.GetString(3);
                        obj.Level        = reader.IsDBNull(4) ? -1 : reader.GetInt16(4);
                        list.Add(obj);
                    }
                }
            }
            return(list);
        }
Example #3
0
        private string GetMembersInString(IDbDataService service, string consiliumId)
        {
            IList <DdtConsiliumRelation> consiluimRelations = service.GetDdtConsiliumRelationService().GetConsiliumRelationsByConsiliumId(consiliumId);

            Dictionary <int, String>          memberToOrder = new Dictionary <int, String>();
            SortedDictionary <String, String> sortedMembers = new SortedDictionary <String, String>();

            foreach (DdtConsiliumRelation relation in consiluimRelations)
            {
                DdtConsiliumGroupMember groupMember = service.GetDdtConsiliumGroupMemberService().GetById(relation.Member);
                DdtConsiliumGroup       group       = service.GetDdtConsiliumGroupService().GetById(groupMember.Group);
                DdvDoctor doctor = service.GetDdvDoctorService().GetById(groupMember.Doctor);

                if (!sortedMembers.ContainsKey(group.Level + " " + group.Name + " " + doctor.ShortName))
                {
                    sortedMembers.Add(group.Level + " " + group.Name + " " + doctor.ShortName, group.Name + " " + groupMember.Name + " " + doctor.ShortName);
                }
            }

            StringBuilder str = new StringBuilder();

            foreach (KeyValuePair <String, String> kvp in sortedMembers)
            {
                if (str.Length > 0)
                {
                    str.Append('\n');
                }
                str.Append(kvp.Value);
            }

            return(str.ToString());
        }
Example #4
0
        private void InitDefaultMembers(IDbDataService service, IList <DdtConsiliumGroupMember> defaultGroupMembers)
        {
            for (int i = 0; i < defaultGroupMembers.Count; i++)
            {
                if (doctorsContainer.Controls.Count <= i)
                {
                    doctorsContainer.Controls.Add(CommonUtils.CopyControl(dotorInfoPnl0, doctorsContainer.Controls.Count));
                }

                ComboBox cbApp = (ComboBox)CommonUtils.FindControl(doctorsContainer, "appointmentTxt" + i);
                cbApp.SelectedIndexChanged += new System.EventHandler(this.appointmentTxt0_SelectedIndexChanged);
                ControlUtils.InitConsiliumGroupsComboboxValues(service.GetDdtConsiliumGroupService(), cbApp);

                DdtConsiliumGroup group = service.GetDdtConsiliumGroupService().GetById(defaultGroupMembers[i].Group);
                if (group != null)
                {
                    cbApp.SelectedIndex = cbApp.FindStringExact(group.Name);
                    ComboBox cbDoctor = (ComboBox)CommonUtils.FindControl(doctorsContainer, "doctorWho" + i);
                    ControlUtils.InitDoctorsByConsiliumGroupId(service.GetDdvDoctorService(), cbDoctor, group.ObjectId);
                    cbDoctor.SelectedValue = defaultGroupMembers[i].Doctor;
                }

                //Control c = CommonUtils.FindControl(doctorsContainer, "objectIdLbl" + i);
                //c.Text = defaultMembers[i].ObjectId;
                Button b = (Button)CommonUtils.FindControl(doctorsContainer, "removeBtn" + i);
                b.Visible = true;
                b.Click  += new System.EventHandler(this.removeBtn0_Click);
            }
        }
Example #5
0
        private void appointmentTxt0_SelectedIndexChanged(object sender, EventArgs e)
        {
            ComboBox          cb    = (ComboBox)sender;
            DdtConsiliumGroup group = (DdtConsiliumGroup)cb.SelectedItem;

            if (group != null)
            {
                string   ctrlName  = cb.Name;
                int      indxPlace = CommonUtils.GetFirstDigitIndex(ctrlName);
                int      index     = Convert.ToInt32(String.Intern(ctrlName.Substring(indxPlace)));
                ComboBox c         = (ComboBox)CommonUtils.FindControl(doctorsContainer, "doctorWho" + index);
                ControlUtils.InitDoctorsByConsiliumGroupId(service.GetDdvDoctorService(), c, group.ObjectId);
                if ("duty_cardioreanim".Equals(group.Name, StringComparison.Ordinal))
                {
                    c.SelectedIndex = c.FindStringExact(curingDoc?.ShortName);
                }
            }
        }
Example #6
0
 public string Save(DdtConsiliumGroup obj)
 {
     using (dynamic connection = connectionFactory.GetConnection())
     {
         if (GetById(obj.ObjectId) != null)
         {
             string sql = "UPDATE ddt_consilium_group SET " +
                          "dss_name = @Name, " +
                          "dsi_level = @Level " +
                          "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("@Level", obj.Level);
                 cmd.Parameters.AddWithValue("@ObjectId", obj.ObjectId);
                 cmd.ExecuteNonQuery();
             }
             return(obj.ObjectId);
         }
         else
         {
             string sql = "INSERT INTO ddt_consilium_group(dss_name,dsi_level) " +
                          "VALUES(@Name,@Level) 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("@Level", obj.Level);
                 return((string)cmd.ExecuteScalar());
             }
         }
     }
 }
Example #7
0
        public bool Save()
        {
            if (!getIsValid())
            {
                return(false);
            }
            hospitalitySession.Diagnosis = getSafeStringValue(diagnosisTxt1);
            service.GetDdtHospitalService().Save(hospitalitySession);

            DdtConsilium consilium = null;

            if (!string.IsNullOrEmpty(consiliumId))
            {
                consilium = service.GetDdtConsiliumService().GetById(consiliumId);
            }
            else
            {
                consilium = new DdtConsilium
                {
                    ConsiliumDate      = DateTime.Now,
                    HospitalitySession = hospitalitySession.ObjectId,
                    Patient            = hospitalitySession.Patient,
                    Doctor             = hospitalitySession.CuringDoctor
                };
            }
            consilium.Decision      = getSafeStringValue(decisionTxt);
            consilium.Diagnosis     = getSafeStringValue(diagnosisTxt0);
            consilium.DutyAdminName = getSafeStringValue(adminTxt);
            consilium.Dynamics      = getSafeStringValue(dynamicsTxt);
            consilium.Goal          = getSafeStringValue(goalTxt);
            consiliumId             = service.GetDdtConsiliumService().Save(consilium);

            foreach (Control doctorInfoPnl in doctorsContainer.Controls)
            {
                DdtConsiliumRelation consiliumRelation = null;
                String doctorInfoPnlName = getSafeObjectValueUni <string>(doctorInfoPnl, new getValue <string>((ctrl) => (ctrl.Name)));
                string indexstr          = string.Intern(doctorInfoPnlName.Substring(CommonUtils.GetFirstDigitIndex(doctorInfoPnlName)));
                int    indx = Int32.Parse(indexstr);

                Control objectIdCtrl = CommonUtils.FindControl(doctorsContainer, "objectIdLbl" + indx);
                if (!string.IsNullOrEmpty(objectIdCtrl.Text))
                {
                    consiliumRelation = service.GetDdtConsiliumRelationService().GetById(objectIdCtrl.Text);
                }
                else
                {
                    consiliumRelation           = new DdtConsiliumRelation();
                    consiliumRelation.Consilium = consiliumId;
                }

                Control           appCb = CommonUtils.FindControl(doctorsContainer, "appointmentTxt" + indx);
                DdtConsiliumGroup group = getSafeObjectValueUni <DdtConsiliumGroup>(appCb, (ctrl) => ((DdtConsiliumGroup)((ComboBox)ctrl).SelectedItem));

                Control   docCb  = CommonUtils.FindControl(doctorsContainer, "doctorWho" + indx);
                DdvDoctor doctor = getSafeObjectValueUni <DdvDoctor>(docCb, (ctrl) => ((DdvDoctor)((ComboBox)ctrl).SelectedItem));

                if (group != null && doctor != null)
                {
                    DdtConsiliumGroupMember consiliumGroupMember = service.GetDdtConsiliumGroupMemberService().GetByDoctorAndGroupId(doctor.ObjectId, group.ObjectId);
                    consiliumRelation.Member = consiliumGroupMember.ObjectId;
                    service.GetDdtConsiliumRelationService().Save(consiliumRelation);
                }
            }

            foreach (String consiliumRelationId in consiliumRelationToRemove)
            {
                service.Delete(DdtConsiliumRelation.NAME, consiliumRelationId);
            }
            analysisTabControl1.save(consiliumId, DdtConsilium.NAME);            SetConsiliumIdToTransfusion();            return(true);
        }