public XtraUserControl DM_QUAN_LY_FIELD() { DataSet dt = DABase.getDatabase().LoadTable("FW_TABLE_FIELD_EXT"); DMTreeGroupElement pl = new DMTreeGroupElement(); pl.Init(GroupElementType.CHOICE_N_ADD, "FW_TABLE_OBJECT", null, "ID", "PARENT_ID", new string[] { "DESCRIPTION" }, new string[] { "Tên đối tượng" }, dt, "FIELD_ID", "TABLE_ID", "CAPTION", HelpGen.G_FW_ID, CreateDM_QUAN_LY_FIELD, GetRuleDM_QUAN_LY_FIELD); return pl; }
public XtraUserControl Init() { DataSet dt = HelpDB.getDatabase().LoadDataSet("select * from DANH_BA where id=-1", "DANH_BA"); DMTreeGroupElement pl = new DMTreeGroupElement(); pl.Init(GroupElementType.ONLY_INPUT, "DM_NHOM_DANH_BA", null, "ID", "PARENT_ID", new string[] { "NAME" }, new string[] { "Tên nhóm danh bạ" }, dt, "ID", "LOAI_DANH_BA", "NAME", HelpGen.G_FW_DM_ID, CreateDM_DANH_BA, GetRuleDM_DANHBA); if (isPermission) pl.DefinePermission(DanhMucParams.GetPermission(pl, DMTaiLieu.N, "Danh mục tà i liệu")); return pl; }
public DevExpress.XtraEditors.XtraUserControl Init() { //DataSet dt = DABase.getDatabase().LoadTable("DM_NHAN_VIEN"); DataSet dt = DABase.getDatabase().LoadDataSet("SELECT * FROM DM_NHAN_VIEN WHERE -1=1", "DM_NHAN_VIEN"); DMTreeGroupElement pl = new DMTreeGroupElement(); pl.Init(GroupElementType.ONLY_INPUT, "DEPARTMENT", null, "ID", "PARENT_ID", new string[] { "NAME" }, new string[] { "Tên phòng ban" }, dt, "ID", "DEPARTMENT_ID", "NAME", HelpGen.G_FW_DM_ID, InitColumns, GetBizRule); if(isPermission) pl.DefinePermission(DanhMucParams.GetPermission(pl, DMFWNhanVien.N, "Danh mục nhân viên")); return pl; }
public void InitCayTaiNguyen() { dmTreeTN = (DMTreeGroupElement)tainguyen.DMRes.Init(); dmTreeTN.btnAdd.Owner.Visible = false; dmTreeTN.TreeList_1.OptionsSelection.MultiSelect = true; dmTreeTN.gridView_1.OptionsSelection.MultiSelect = true; dmTreeTN.Location = new Point(0, 0); dmTreeTN.Dock = DockStyle.Fill; DockPanel dock = dmTreeTN.Controls["dockPanel1"] as DockPanel; if (dock != null) { if (dock.Controls.Count > 0 && dock.Controls[0] is ControlContainer) { ControlContainer container = dock.Controls[0] as ControlContainer; if (container.Controls.Count == 0) return; container.Controls[0].Dock = DockStyle.None; checkChonNhomCon.Parent.Controls.Remove(checkChonNhomCon); checkChonNhomCon.Dock = DockStyle.Top; container.Controls.Add(checkChonNhomCon); container.Controls[0].Dock = DockStyle.Fill; } } panelControl4.Controls.Add(dmTreeTN); dmTreeTN.gridView_1.GridControl.AllowDrop = true; dmTreeTN.gridView_1.Appearance.GroupPanel.Font = new Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Inch); dmTreeTN.gridView_1.Appearance.GroupPanel.Options.UseFont = true; dmTreeTN.gridView_1.Appearance.HeaderPanel.Options.UseTextOptions = true; dmTreeTN.gridView_1.Appearance.HeaderPanel.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; dmTreeTN.TreeList_1.AllowDrop = false; dmTreeTN.TreeList_1.OptionsBehavior.DragNodes = true; dmTreeTN.gridView_1.MouseLeave += new EventHandler(gridView_1_MouseLeave); dmTreeTN.gridView_1.GridControl.DragOver += new DragEventHandler(GridControl_DragOver); dmTreeTN.gridView_1.GridControl.DragDrop += new DragEventHandler(GridControl_DragDrop); dmTreeTN.gridView_1.GridControl.DragLeave += new EventHandler(GridControl_DragLeave); dmTreeTN.TreeList_1.MouseLeave += new EventHandler(TreeList_1_MouseLeave); dmTreeTN.TreeList_1.DragDrop += new DragEventHandler(TreeList_1_DragDrop); dmTreeTN.TreeList_1.DragLeave += new EventHandler(TreeList_1_DragLeave); dmTreeTN.TreeList_1.DragEnter += new DragEventHandler(TreeList_1_DragEnter); }
private static void CreateItemOnDMTreeGroupElement(DMTreeGroupElement control) { string TableName = ""; DataTable dt = control.gridView_1.GridControl.DataSource as DataTable; if (dt != null) { TableName = dt.TableName; } else return; IPermissionData perRes = FrameworkParams.iPermissionData; DataPermission[] tainguyenLst = perRes.getObjectResources(); if (tainguyenLst == null) return; bool Is_Group = false; DataPermission DataPer = null; foreach (DataPermission data in tainguyenLst) { if (data.DMTableName_Res == TableName) { DataPer = data; Is_Group = false; } else if (data.DMTableName_ResGroup == TableName) { DataPer = data; Is_Group = true; break; } } if (DataPer == null) return; DataPer.Init(); ToolStripButton btnPhanQuyen = new ToolStripButton("Phân quyền", HelpImage.getImage2020("mnbPhieuPhanHoiKH.png")); control.btnAdd.Owner.Items.Add(btnPhanQuyen); control.btnAdd.Owner.Items.Add(new ToolStripSeparator()); btnPhanQuyen.Click += delegate(object sender, EventArgs e) { int rowHandle = control.gridView_1.FocusedRowHandle; if (rowHandle < 0 && control.gridView_1.SelectedRowsCount > 0) { rowHandle = control.gridView_1.GetSelectedRows()[0]; } DataRow focusRow = control.gridView_1.GetDataRow(rowHandle); if (control.gridView_1.IsDataRow(rowHandle) == false || focusRow == null) { HelpMsgBox.ShowNotificationMessage("Bạn chưa chọn dữ liệu. Vui lòng chọn dữ liệu để phân quyền!"); return; } DOResource resource = null; if (Is_Group) { resource = new DOResource(-1, HelpNumber.ParseInt64(focusRow["ID"]), -1, null); } else { resource = new DOResource( HelpNumber.ParseInt64(focusRow["ID"]), dt.Columns.Contains(DataPer.RefFieldNameDM_Res_ResGroup) ? HelpNumber.ParseInt64(focusRow[DataPer.RefFieldNameDM_Res_ResGroup]) : -1, -1, null); } frmPermissionDataPopUp frm = new frmPermissionDataPopUp(DataPer, resource); HelpProtocolForm.ShowModalDialog(ProtocolVN.Framework.Win.FrameworkParams.MainForm, frm); }; if (DataPer.IsPermission == false) return; bool AddPermis = control.btnAdd.Visible; bool UpdatePermis = control.btnUpdate.Visible; bool DeletePermis = control.btnDel.Visible; TreeListNode n = control.TreeList_1.FocusedNode; long fParentID = -2; if (n != null) { fParentID = HelpNumber.ParseInt64(n["ID"]); } DataRow r = control.gridView_1.GetFocusedDataRow(); long fID = -2; if (r != null) { fID = HelpNumber.ParseInt64(r["ID"]); } ApplyPermissionOnDMTreeGroupElement(control, Is_Group, AddPermis, UpdatePermis, DeletePermis, DataPer, fID, fParentID, false); control.gridView_1.FocusedRowChanged += delegate(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) { DataRow row = control.gridView_1.GetDataRow(e.FocusedRowHandle); if (row == null) return; long ID = HelpNumber.ParseInt64(row["ID"]); TreeListNode node = control.TreeList_1.FocusedNode; long ParentID = -2; if (node != null) { ParentID = HelpNumber.ParseInt64(node["ID"]); } ApplyPermissionOnDMTreeGroupElement(control, Is_Group, AddPermis, UpdatePermis, DeletePermis, DataPer, ID, ParentID, true); }; control.TreeList_1.FocusedNodeChanged += delegate(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e) { TreeListNode node = e.Node; if (node == null) return; long ParentID = HelpNumber.ParseInt64(node["ID"]); DataRow row = control.gridView_1.GetFocusedDataRow(); long ID = -2; if (row != null) { ID = HelpNumber.ParseInt64(row["ID"]); } ApplyPermissionOnDMTreeGroupElement(control, Is_Group, AddPermis, UpdatePermis, DeletePermis, DataPer, ID, ParentID, false); }; control.gridView_1.RowUpdated += delegate(object sender, DevExpress.XtraGrid.Views.Base.RowObjectEventArgs e) { if (e.Row == null) return; DataRow dr = ((DataRowView)e.Row).Row; DataPer.InsertPermis(HelpNumber.ParseInt64(dr["ID"]), Is_Group, -1, ProtocolVN.Framework.Win.FrameworkParams.currentUser.employee_id, true, true, true, true); }; long deleteID = -1; control._BeforeDelEvent += delegate(DMTreeGroupElement sender) { int[] selectedRows = sender.gridView_1.GetSelectedRows(); if (selectedRows != null && selectedRows.Length > 0) { DataRow dlr = sender.gridView_1.GetDataRow(selectedRows[0]); if (dlr != null) deleteID = HelpNumber.ParseInt64(dlr["ID"]); } }; control._AfterDelSuccEvent += delegate(DMTreeGroupElement sender) { if (deleteID != -1) { DataPer.DeletePermis(deleteID, Is_Group); deleteID = -1; } }; }
private static void ApplyPermissionOnDMTreeGroupElement(DMTreeGroupElement control, bool Is_Group, bool AddPermis, bool UpdatePermis, bool DeletePermis, DataPermission DataPer, long ID, long ParentID, bool IsFocusGrid) { if (Is_Group) { if (IsFocusGrid == false && AddPermis && DataPer.DMTableName_ResGroup != "") { control.btnAdd.Visible = DataPer._checkPermissionResGroup(ParentID, RES_PERMISSION_TYPE.CREATE); } if (UpdatePermis) { control.btnUpdate.Visible = DataPer._checkPermissionResGroup(ID, RES_PERMISSION_TYPE.UPDATE); } if (DeletePermis) { control.btnDel.Visible = DataPer._checkPermissionResGroup(ID, RES_PERMISSION_TYPE.DELETE); } } else { if (IsFocusGrid == false && AddPermis && DataPer.DMTableName_ResGroup != "") { control.btnAdd.Visible = DataPer._checkPermissionResGroup(ParentID, RES_PERMISSION_TYPE.CREATE); } if (UpdatePermis) { control.btnUpdate.Visible = DataPer._checkPermissionRes(ID, RES_PERMISSION_TYPE.UPDATE); } if (DeletePermis) { control.btnDel.Visible = DataPer._checkPermissionRes(ID, RES_PERMISSION_TYPE.DELETE); } } }