예제 #1
0
 public SubjectDialog(Database db)
 {
     InitializeComponent();
     _Subject          = new CCOWSubject();
     _db               = db;
     Application.Idle += new EventHandler(Application_Idle);
 }
예제 #2
0
        private void AddSubject(CCOWSubject subject)
        {
            ListViewItem item = listViewSubjects.Items.Add(subject.Subject);

            item.ImageIndex = subject.Secure ? 0 : -1;
            item.SubItems.Add(!string.IsNullOrEmpty(subject.SecurityType) ? subject.SecurityType : string.Empty);
            item.Tag = subject.Id;
        }
예제 #3
0
 public SubjectDialog(Database db, CCOWSubject subject)
     : this(db)
 {
     _Subject         = subject;
     SubjectName.Text = _Subject.Subject;
     Secure.Checked   = subject.Secure;
     LoadSubjectItems();
     LoadSubjectDependencies();
 }
예제 #4
0
        static bool CheckPatientDependencies()
        {
            Monitor.Enter(CcowServer.LockObject);
            try
            {
                using (Database db = Leadtools.Ccow.Server.Utils.GetDatabase())
                {
                    CCOWSubject patientSubject = db.CCOWSubject.FirstOrDefault(a => a.Subject.ToLower() == "patient");
                    foreach (CCOWSubjectDependency dp in patientSubject.DependentSubjects)
                    {
                        if (dp.CCOWSubject.Subject.ToLower() == "user")
                        {
                            return(true);
                        }
                    }
                }
            }
            finally
            {
                Monitor.Exit(CcowServer.LockObject);
            }

            return(false);
        }
예제 #5
0
        private void buttonDeleteSubject_Click(object sender, EventArgs e)
        {
            Monitor.Enter(CcowServer.LockObject);
            try
            {
                using (Database db = Leadtools.Ccow.Server.Utils.GetDatabase())
                {
                    DataLoadOptions o         = new DataLoadOptions();
                    Guid            subjectid = (Guid)listViewSubjects.SelectedItems[0].Tag;
                    CCOWSubject     subject   = null;

                    o.LoadWith <CCOWSubjectItems>(i => i.CCOWSubject);
                    o.LoadWith <CCOWSubjectDependency>(d => d.CCOWSubject);
                    db.LoadOptions = o;

                    subject = db.CCOWSubject.First(s => s.Id == subjectid);
                    foreach (CCOWSubjectDependency d in subject.CCOWSubjectDependency)
                    {
                        db.GetTable <CCOWSubjectDependency>().DeleteOnSubmit(d);
                    }

                    foreach (CCOWSubjectItems i in subject.CCOWSubjectItems)
                    {
                        db.GetTable <CCOWSubjectItems>().DeleteOnSubmit(i);
                    }

                    db.CCOWSubject.DeleteOnSubmit(subject);
                    db.SubmitChanges();
                    listViewSubjects.Items.Remove(listViewSubjects.SelectedItems[0]);
                }
            }
            finally
            {
                Monitor.Exit(CcowServer.LockObject);
            }
        }
예제 #6
0
 private void UpdateItem(ListViewItem item, CCOWSubject subject)
 {
     item.Text             = subject.Subject;
     item.SubItems[1].Text = !string.IsNullOrEmpty(subject.SecurityType) ? subject.SecurityType : string.Empty;
     item.ImageIndex       = subject.Secure ? 0 : -1;
 }