예제 #1
0
        public static List <int> GetChildrenIDs(string formName, Entities db = null)
        {
            if (db == null)
            {
                db = new Entities();
            }

            var        form = db.SYS_Quyen.FirstOrDefault(t => t.Ma_quyen == formName);
            List <int> list = new List <int>();

            Queue <SYS_Quyen> queue = new Queue <SYS_Quyen>();

            queue.Enqueue(form);

            while (queue.Count != 0)
            {
                SYS_Quyen node = queue.Dequeue();

                var children = db.SYS_Quyen.Where(t => t.ID_cha == node.ID_quyen && t.ID_quyen != node.ID_quyen);

                foreach (var child in children)
                {
                    list.Add(child.ID_quyen);
                    queue.Enqueue(child);
                }
            }

            return(list);
        }
예제 #2
0
        private void LoadProperties(TreeListNode node)
        {
            SYS_Quyen quyen = (SYS_Quyen)ControlTree.GetDataRecordByNode(node);

            if (quyen != null)
            {
                Entities db = new Entities();
                ThuocTinhCtrl.LoadLookUpEdit(repositoryItemLookUpEdit1, quyen.Loai_dieu_khien, db);
                VaiTroQuyenCtrl.LoadBindingSource(sYSVaiTroQuyenBindingSource, ledVaiTro.EditValue, quyen.ID_quyen, db);
            }
        }
예제 #3
0
        private void btnSaveProperties_Click(object sender, EventArgs e)
        {
            if (ledVaiTro.EditValue == null || ledVaiTro.EditValue.Equals(0))
            {
                return;
            }

            SYS_Quyen quyen = (SYS_Quyen)ControlTree.GetDataRecordByNode(ControlTree.FocusedNode);
            int       rs    = VaiTroQuyenCtrl.Update((int)ledVaiTro.EditValue, quyen.ID_quyen, grvThuocTinh);

            if (rs == 0)
            {
                XtraMessageBox.Show("Không có thay đổi nào được lưu. Vui lòng thử lại!", "Lưu các thuộc tính", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                XtraMessageBox.Show("Lưu các thuộc tính thành công!", "Lưu các thuộc tính", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

            btnRefreshProperties.PerformClick();
        }
예제 #4
0
        private void btnCopyProperties_Click(object sender, EventArgs e)
        {
            if (ledVaiTro.EditValue == null || ledVaiTro.EditValue.Equals(0))
            {
                return;
            }

            SYS_Quyen quyen = (SYS_Quyen)ControlTree.GetDataRecordByNode(ControlTree.FocusedNode);
            int       rs    = VaiTroQuyenCtrl.Update((int)ledVaiTro.EditValue, quyen.ID_quyen, grvThuocTinh);

            if (rs == 0)
            {
                XtraMessageBox.Show("Không có thay đổi nào được lưu!", "Lưu các thuộc tính", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            if (XtraMessageBox.Show("Bạn có muốn sao chép các thuộc tính của quyền \"" + quyen.Ten_quyen + "\" cho các quyền cùng loại không?", "Xác nhận sao chép", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                if (ControlTree.ActiveFilterString == "")
                {
                    rs = VaiTroQuyenCtrl.Copy((int)ledVaiTro.EditValue, quyen.ID_quyen, (List <SYS_Quyen>)sYSQuyenBindingSource.DataSource);
                }
                else
                {
                    rs = VaiTroQuyenCtrl.Copy((int)ledVaiTro.EditValue, quyen.ID_quyen, TreeHelper.GetVisibleNodesData <SYS_Quyen>(ControlTree));
                }

                if (rs > 0)
                {
                    XtraMessageBox.Show("Sao chép các thuộc tính của quyền thành công", "Sao chép các thuộc tính", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    XtraMessageBox.Show("Không có thuộc tính nào được sao chép!", "Sao chép các thuộc tính", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
        }