/// <summary>
 ///CHAUTV : Phân quyền xem dữ liệu
 /// </summary>
 /// <param name="Input"></param>
 /// <param name="featureName"></param>
 public static void ApplyPermissionData(PLDMTreeGroup Input, string featureName)
 {
     List<Feature> features = Permission.loadAllFeatureByUser(FrameworkParams.currentUser.username);
     bool IsFull = false;
     if (features.Exists(delegate(Feature e)
     {
         return e.featureName.Equals(featureName) && e.isRead.Equals(true);
     }) || FrameworkParams.currentUser.username.Equals("admin"))
         IsFull = true;
     //foreach (Feature f in features)
     //{
     //    if ((f.featureName == featureName && f.isRead == true) || FrameworkParams.currentUser.username.Equals("admin"))
     //    {
     //        IsFull = true;
     //        return;
     //    }
     //}
     if (FrameworkParams.isPermision.getPublicForm().Contains(typeof(frmTimeInOutQL).FullName) == false && !IsFull)
         Input.Enabled = false;
     Input._setSelectedID(FrameworkParams.currentUser.employee_id);
 }
Beispiel #2
0
        public static void InitTreeChonNhanVien_Choice1(PLDMTreeGroup tree, bool? IsAdd)
        {
            if (IsAdd == true)
            {
                tree.InitReadOnly("NAME", "V_PHONG_BAN_NHAN_VIEN_VISBLE", null, "ID", "PARENT_ID",
               new string[] { "NAME" },
               new string[] { "Nhân viên" });
            }
            else
            {

                tree.InitReadOnly("NAME", "V_PHONG_BAN_NHAN_VIEN", null, "ID", "PARENT_ID",
                    new string[] { "NAME" },
                    new string[] { "Nhân viên" });
            }
            PopupContainerControl popup = tree.Controls["popupContainerControl1"] as PopupContainerControl;
            if (popup == null) return;
            DMTreeGroup tr = popup.Controls["plGroupCatNew1"] as DMTreeGroup;
            if (tr == null) return;
            foreach (TreeListColumn col in tr.TreeList_1.Columns)
            {
                col.OptionsColumn.AllowFocus = false;
            }

            int IndexGroupImage = -1;
            int IndexImage = -1;
            int IndexRootImage = -1;
            tr.TreeList_1.SelectImageList = null;
            DataTable dt = tr.TreeList_1.DataSource as DataTable;
            ImageCollection imList = new ImageCollection();
            imList.ImageSize = new Size(20, 20);
            dt.DefaultView.Sort = "IS_GROUP DESC ,NAME ASC";
            Image rimg = ResourceMan.getImage("navNoiBaoHanh.png");
            Image gimg = ResourceMan.getImage("mnbKhachHangNhom.png");
            Image img = ResourceMan.getImage("mnbTTinKhachHang.png");
            if (gimg != null || img != null || rimg != null)
            {
                IndexRootImage = imList.Images.Add(rimg, "navNoiBaoHanh.png");
                IndexGroupImage = imList.Images.Add(gimg, "mnbKhachHangNhom.png");
                IndexImage = imList.Images.Add(img, "mnbTTinKhachHang.png");
                tr.TreeList_1.StateImageList = imList;
            }
            else tr.TreeList_1.StateImageList = null;
            tr.TreeList_1.OptionsView.ShowIndicator = false;

            tr.TreeList_1.GetStateImage += delegate(object sender, DevExpress.XtraTreeList.GetStateImageEventArgs e)
            {
                if (e.Node.Level == 0)
                {

                    e.Node.StateImageIndex = IndexRootImage;
                }
                else
                {
                    if (e.Node["IS_GROUP"].ToString() == "Y")
                    {
                        e.Node.StateImageIndex = IndexGroupImage;
                    }
                    else e.Node.StateImageIndex = IndexImage;
                }
            };
            tr.TreeList_1.FocusedNodeChanged += delegate(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e)
            {

                if (e.Node["IS_GROUP"].ToString() == "Y")
                {
                    tr.btnAdd.Owner.Items["btnSelect"].Enabled = false;
                }
                else
                {
                    tr.btnAdd.Owner.Items["btnSelect"].Enabled = true;

                }
            };
            long selected = -1;

            tree.popupContainerEdit1.Popup += delegate(object sender, EventArgs e)
               {
               selected = tree._getSelectedID();
               };
            tree.popupContainerEdit1.QueryCloseUp += delegate(object sender, System.ComponentModel.CancelEventArgs e)
            {
                if (tr.SelectedNode != null)
                {
                    if (tr.SelectedNode["IS_GROUP"].ToString() == "Y")
                    {
                        e.Cancel = true;
                        DevExpress.XtraTreeList.Nodes.TreeListNode n = tr.TreeList_1.FindNodeByFieldValue("ID", selected);
                        //if (n != null)
                        tr.SelectedNode = n;
                        tree._setSelectedID(selected);
                    }
                }
            };
        }
        /// <summary>
        /// Permission for control(property Enable "True" or "False"). 
        /// Uses this because the Framework do not support.
        /// </summary>
        /// <param name="control">control for appling permission</param>
        /// <param name="adminPermission"></param>
        /// <param name="editorPermission"></param>
        public static void PermissionForControl(PLDMTreeGroup control,bool adminPermission,bool editorPermission)
        {
            if (adminPermission) control.Visible = true;
            else if (editorPermission) control.Visible = true;
            else {
                control.Visible = true;
                control.Enabled = false;
            }

            if (control._getSelectedID() == -1)
                control._setSelectedID(FrameworkParams.currentUser.employee_id);
        }
 /// <summary>
 ///CHAUTV : Phân quyền xem dữ liệu
 /// </summary>
 /// <param name="Input"></param>
 /// <param name="featureName"></param>
 private void ApplyPermissionData(PLDMTreeGroup Input, string featureName)
 {
     List<Feature> features = Permission.loadAllFeatureByUser(FrameworkParams.currentUser.username);
     bool IsFull = false;
     foreach (Feature f in features)
     {
         if ((f.featureName == featureName && f.isRead == true)|| FrameworkParams.currentUser.username.Equals("admin"))
         {
             IsFull = true;
             break;
         }
     }
     if (FrameworkParams.isPermision.getPublicForm().Contains(typeof(frmChamCongAutoQL).FullName)==false &&!IsFull)
     {
         Input._setSelectedID(FrameworkParams.currentUser.employee_id);
         Input.Enabled = false;
     }
 }