void UserInfoEmbeddedNavigator_ButtonClick(object sender, NavigatorButtonClickEventArgs e) { try { gridViewUserInfo.PostEditor(); efDevGridUserInfo.RefreshDataSource(); switch (e.Button.ImageIndex) { case SAVE: if (isChange(efDevGridUserInfo)) { if (userCheck()) { if (SaveUserInfo()) { QueryUser(); } } } break; case DISCARD: QueryUser(); break; default: break; } } catch (Exception ex) { EFMessageBox.Show(ex.Message); } }
private void RefreshResList(TreeListNode node) { if (IsChanged()) { DialogResult rst = EFMessageBox.Show(EP.EPES.EPESC0000089 /*已修改群组资源权限,是否保存?*/, EP.EPES.EPESC0000024, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (rst == DialogResult.Yes) { SaveAuth(); } } listFormGrant.Clear(); listFormRevok.Clear(); listButtGrant.Clear(); listButtRevok.Clear(); subjType = GetSubjType(node); if (node.Tag != null) { subjEname = node.Tag.ToString(); } else { subjEname = treeListUser.FocusedNode.GetValue("ID").ToString(); } subjDescript = node.GetDisplayText(2) == null ? "" : node.GetDisplayText(2); if (treeListForm.Nodes.Count == 0) { QryAuthForm(); } else { RefreshFormList(); } }
void GroupInfoEmbeddedNavigator_ButtonClick(object sender, NavigatorButtonClickEventArgs e) { try { gridViewGroupInfo.PostEditor(); efDevGridGroupInfo.Parent.Focus(); switch (e.Button.ImageIndex) { case SAVE: if (groupCheck()) { if (SaveGroupInfo()) { queryGroup(); } } break; case DISCARD: queryGroup(); break; default: break; } } catch (Exception ex) { EFMessageBox.Show(ex.Message); } }
private void gridViewGroupInfo_MouseMove(object sender, MouseEventArgs e) { try { if (!isManageMode) { return; } if (this.efDevGridGroupInfo.DataSource == null || efDevGridGroupInfo.EFChoiceCount == 0) { return; } if (e.Button != MouseButtons.Left) { return; } treeListMain.OptionsBehavior.DragNodes = true; List <string> data = new List <string>(); efDevGridGroupInfo.DoDragDrop(data, DragDropEffects.Copy); } catch (Exception ex) { EFMessageBox.Show(ex.Message); } }
/// <summary> /// 检查数据正确性 /// </summary> /// <returns></returns>true 正确 false 存在问题 private bool userCheck() { //检查数据准确性 for (int i = 0; i < this.gridViewUserInfo.RowCount; i++) { if (!efDevGridUserInfo.GetSelectedColumnChecked(i)) { continue; } if (gridViewUserInfo.GetRowCellValue(i, "ENAME") != null) { if (gridViewUserInfo.GetRowCellValue(i, "ENAME").ToString().Trim() == "") { EFMessageBox.Show(EP.EPES.EPESC0000129 /*工号不能为空,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (Utility.GetByteLength(gridViewUserInfo.GetRowCellValue(i, "ENAME").ToString().Trim()) < 3) { EFMessageBox.Show(EP.EPES.EPESC0000130 /*工号不能少于3位,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (Utility.GetByteLength(gridViewUserInfo.GetRowCellValue(i, "ENAME").ToString().Trim()) > 20) { EFMessageBox.Show( string.Format(EP.EPES.EPESC0000131 /*工号不能多于[{0}]位,请重新输入!*/, 20), EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } else { EFMessageBox.Show(EP.EPES.EPESC0000129 /*工号不能为空,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (gridViewUserInfo.GetRowCellValue(i, "CNAME") != null) { if (gridViewUserInfo.GetRowCellValue(i, "CNAME").ToString().Trim() == "") { EFMessageBox.Show(EP.EPES.EPESC0000132 /*中文姓名不能为空,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (Utility.GetByteLength(gridViewUserInfo.GetRowCellValue(i, "CNAME").ToString().Trim()) > 20) { EFMessageBox.Show(EP.EPES.EPESC0000133 /*中文姓名不能多于20位,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } else { EFMessageBox.Show(EP.EPES.EPESC0000132 /*中文姓名不能为空,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } return(true); }
/// <summary> /// 检查数据正确性 /// </summary> /// <returns></returns>true 正确 false 存在问题 private bool groupCheck() { //检查数据准确性 for (int i = 0; i < this.gridViewGroupInfo.RowCount; i++) { if (!efDevGridGroupInfo.GetSelectedColumnChecked(i)) { continue; } if (gridViewGroupInfo.GetRowCellValue(i, "NAME") != null) { if (gridViewGroupInfo.GetRowCellValue(i, "NAME").ToString().Trim() == "") { EFMessageBox.Show(EP.EPES.EPESC0000125 /*群组名不能为空,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (Utility.GetByteLength(gridViewGroupInfo.GetRowCellValue(i, "NAME").ToString()) > 128) { EFMessageBox.Show(EP.EPES.EPESC0000171 /*群组名不能超过128位,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } else { EFMessageBox.Show(EP.EPES.EPESC0000125 /*群组名不能为空,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } //if (gridViewGroupInfo.GetRowCellValue(i, "APPNAME") != null) //{ // if (gridViewGroupInfo.GetRowCellValue(i, "APPNAME").ToString().Trim() == "") // { // EFMessageBox.Show(EP.EPES.EPESC0000036/*子系统不能为空,请重新输入!*/, EP.EPES.EPESC0000024/*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); // return false; // } //} //else //{ // EFMessageBox.Show(EP.EPES.EPESC0000036/*子系统不能为空,请重新输入!*/, EP.EPES.EPESC0000024/*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); // return false; //} if (gridViewGroupInfo.GetRowCellValue(i, "GROUPDESCRIPTION") != null) { if (Utility.GetByteLength(gridViewGroupInfo.GetRowCellValue(i, "GROUPDESCRIPTION").ToString()) > 100) { EFMessageBox.Show(EP.EPES.EPESC0000127 /*群组描述最多允许输入100位,请重新输入!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } } return(true); }
private void efDevGridUserInfo_DoubleClick(object sender, EventArgs e) { try { if (this.gridViewUserInfo.RowCount == 0 || this.gridViewUserInfo.FocusedRowHandle < 0) { return; } string userid = ""; string userDesc = ""; if (this.gridViewUserInfo.GetRowCellValue(gridViewUserInfo.FocusedRowHandle, "ID") != null) { userid = gridViewUserInfo.GetRowCellValue(gridViewUserInfo.FocusedRowHandle, "ID").ToString(); } if (gridViewUserInfo.GetRowCellValue(gridViewUserInfo.FocusedRowHandle, "CNAME") != null) { userDesc = gridViewUserInfo.GetRowCellValue(gridViewUserInfo.FocusedRowHandle, "CNAME").ToString(); } layoutControlGroup4.Text = "用户[" + userDesc + "]所在群组"; this.treeListMain.Nodes.Clear(); DataSet blk = new DataSet(); blk.Tables.Add(); blk.Tables[0].Columns.Add("memberid"); blk.Tables[0].Rows.Add(userid); DataTable dt = DbUserInfo.QueryGroupByMember(blk, CConstString.ConnectName); if (dt != null && dt.Rows.Count > 0) { string groupDesc = ""; string groupName = ""; List <string> tag = new List <string>(); for (int i = 0; i < dt.Rows.Count; i++) { groupName = dt.Rows[i]["NAME"].ToString(); groupDesc = dt.Rows[i]["GROUPDESCRIPTION"].ToString(); tag.Add(groupName); tag.Add(dt.Rows[i]["ID"].ToString()); this.treeListMain.AppendNode(new object[] { groupName + "(" + groupDesc + ")" }, null, tag); } this.treeListMain.ExpandAll(); } } catch (Exception ex) { EFMessageBox.Show(ex.Message); } }
private void barButtonItemSave_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { bool success = true; if (isChange(efDevGridGroupInfo)) { if (groupCheck()) { if (SaveGroupInfo()) { queryGroup(); } else { success = false; } } else { success = false; } } if (isChange(efDevGridUserInfo)) { if (userCheck()) { if (SaveUserInfo()) { QueryUser(); } else { success = false; } } else { success = false; } } if (success) { SetPageState(false); } } catch (Exception ex) { EFMessageBox.Show(ex.Message + ex.StackTrace); } }
private void treeListForm_BeforeCheckNode(object sender, DevExpress.XtraTreeList.CheckNodeEventArgs e) { if (!isManageMode) { EFMessageBox.Show(EP.EPES.EPESC0000091 /*非维护模式下无法修改权限!*/, EP.EPES.EPESC0000024, MessageBoxButtons.OK, MessageBoxIcon.Warning); e.CanCheck = false; return; } if (subjType == SUBJTYPE.USER) { EFMessageBox.Show("不能对用户授权,请操作用户所属或所管理群组!"); e.CanCheck = false; } else if (e.Node.ImageIndex == BUTTICON && !e.Node.ParentNode.Checked) { EF.EFMessageBox.Show("请先勾选按钮对应的画面!"); e.CanCheck = false; } else { e.CanCheck = true; } }
private void efDevGridGroupInfo_DoubleClick(object sender, EventArgs e) { try { if (this.gridViewGroupInfo.RowCount == 0 || this.gridViewGroupInfo.FocusedRowHandle < 0) { return; } string groupid = ""; string groupName = ""; string groupDesc = ""; if (this.gridViewGroupInfo.GetRowCellValue(gridViewGroupInfo.FocusedRowHandle, "NAME") != null) { groupid = gridViewGroupInfo.GetRowCellValue(gridViewGroupInfo.FocusedRowHandle, "ID").ToString(); groupName = gridViewGroupInfo.GetRowCellValue(gridViewGroupInfo.FocusedRowHandle, "NAME").ToString(); } if (gridViewGroupInfo.GetRowCellValue(gridViewGroupInfo.FocusedRowHandle, "GROUPDESCRIPTION") != null) { groupDesc = gridViewGroupInfo.GetRowCellValue(gridViewGroupInfo.FocusedRowHandle, "GROUPDESCRIPTION").ToString(); } List <string> tag = new List <string>(); tag.Add(groupName); tag.Add(groupid); layoutControlGroup4.Text = "群组[" + groupName + "]"; this.treeListMain.Nodes.Clear(); TreeListNode treeNode = this.treeListMain.AppendNode(new object[] { groupName + "(" + groupDesc + ")" }, null, tag); this.treeListMain.ExpandAll(); } catch (Exception ex) { EFMessageBox.Show(ex.Message); } }
private void treeListMain_DragDrop(object sender, DragEventArgs e) { try { DevExpress.XtraTreeList.TreeListHitInfo hi = treeListMain.CalcHitInfo(treeListMain.PointToClient(new Point(e.X, e.Y))); TreeListNode parentNode = null; //拖拽至用户节点 if (hi.Node.ImageIndex == USERICON) { parentNode = hi.Node.ParentNode; } //拖拽至群组节点 else if (hi.Node.ImageIndex == GROUPICON) { parentNode = hi.Node; } DataSet inBlock = new DataSet(); inBlock.Tables.Add(); //为群组新增子组 if (tabbedControlGroup1.SelectedTabPage == layoutControlGroup3) { string parentGroup = ((List <string>)parentNode.Tag)[0]; if (parentGroup == "admingroup" || parentGroup == "formgroup" || parentGroup == "usermanager" || parentGroup == "groupmanager" || parentGroup == "resourcemanager") { EFMessageBox.Show(EP.EPES.EPESC0000193 /*系统群组下不可挂子组,请将角色用户直接添加到该组下!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return; } inBlock.Tables[0].Columns.Add("ID"); inBlock.Tables[0].Columns.Add("userid"); string groupid = ((List <string>)parentNode.Tag)[1]; inBlock.Tables[0].Rows.Add(groupid, CConstString.UserId); inBlock.Tables.Add(); inBlock.Tables[1].Columns.Add("ID"); for (int i = 0; i < this.gridViewGroupInfo.RowCount; i++) { if (efDevGridGroupInfo.GetSelectedColumnChecked(i)) { string tmp = this.gridViewGroupInfo.GetRowCellValue(i, "ID").ToString(); if (groupid == tmp) { throw new Exception("拖动的组与父组一样."); } inBlock.Tables[1].Rows.Add(tmp); } } string msg = DbUserInfo.InsertGroupChildGroup(inBlock, CConstString.ConnectName); if (msg == "ok") { queryMember(parentNode); //取消列表框中所有checkbox选中状态 UnCheckAll(efDevGridGroupInfo, gridViewGroupInfo); } } //为群组新增子用户 else if (tabbedControlGroup1.SelectedTabPage == layoutControlGroup2) { inBlock.Tables[0].Columns.Add("groupid"); inBlock.Tables[0].Columns.Add("groupname"); inBlock.Tables[0].Columns.Add("user"); inBlock.Tables[0].Columns.Add("authmode"); inBlock.Tables[0].Rows.Add(((List <string>)parentNode.Tag)[1], ((List <string>)parentNode.Tag)[0], CConstString.UserId, 0); inBlock.Tables.Add(); inBlock.Tables[1].Columns.Add("userid"); inBlock.Tables[1].Columns.Add("username"); for (int i = 0; i < this.gridViewUserInfo.RowCount; i++) { if (efDevGridUserInfo.GetSelectedColumnChecked(i)) { inBlock.Tables[1].Rows.Add(this.gridViewUserInfo.GetRowCellValue(i, "ID"), this.gridViewUserInfo.GetRowCellValue(i, "ENAME")); } } DbUserInfo.InsertGroupChildUser(inBlock, CConstString.ConnectName); queryMember(parentNode); // 取消列表框中所有checkbox选中状态 UnCheckAll(efDevGridUserInfo, gridViewUserInfo); } treeListMain.OptionsBehavior.DragNodes = false; } catch (Exception ex) { EFMessageBox.Show(ex.Message + ex.StackTrace); } }
private void treeList_DragDrop(object sender, DragEventArgs e) { if (!isManageMode) { e.Effect = DragDropEffects.None; EF.EFMessageBox.Show(EP.EPES.EPESC0000071 /*操作失败!请进入维护模式进行排序操作!*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); TreeListNode parent = treeList.FocusedNode.ParentNode; queryChildNodes(parent); return; } DevExpress.XtraTreeList.TreeListHitInfo hi = treeList.CalcHitInfo(treeList.PointToClient(new Point(e.X, e.Y))); string[] format = e.Data.GetFormats(); //拖拽的是菜单树中的节点——节点排序 if (format[0] == "DevExpress.XtraTreeList.Nodes.TreeListNode") { if (hi != null) { if (hi.Node != null) { TreeListNode dragnode = e.Data.GetData(typeof(TreeListNode)) as TreeListNode; TreeListNode targetnode = hi.Node; treeList.SetNodeIndex(dragnode, treeList.GetNodeIndex(targetnode)); OrderNodes(hi.Node.ParentNode); } } e.Effect = DragDropEffects.None; } //拖拽的是画面信息列表框中的行——新增画面 else { TreeListNode parentNode = null; int treeseq = 0; //拖拽至画面节点 if (hi.Node.ImageIndex == FORMICON) { parentNode = hi.Node.ParentNode; } //拖拽至目录节点 else { parentNode = hi.Node; } treeseq = parentNode.Nodes.Count; //新增画面 DataSet inBlock = new DataSet(); inBlock.Tables.Add(); inBlock.Tables[0].Columns.Add("fname"); inBlock.Tables[0].Columns.Add("name"); inBlock.Tables[0].Columns.Add("resname"); inBlock.Tables[0].Columns.Add("description"); inBlock.Tables[0].Columns.Add("shortcut"); inBlock.Tables[0].Columns.Add("treeno"); inBlock.Tables[0].Columns.Add("treeseq"); inBlock.Tables[0].Columns.Add("userid"); for (int i = 0, j = 1; i < this.gridViewFormInfo.RowCount; i++) { //取出选中行 if (fgDevGridFormInfo.GetSelectedColumnChecked(i)) { if (treeseq > 999) { EFMessageBox.Show(EP.EPES.EPESC0000072 /*新增失败*/, EP.EPES.EPESC0000024 /*提示*/, MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DataRow dr = inBlock.Tables[0].NewRow(); dr["name"] = parentNode.Tag + gridViewFormInfo.GetRowCellValue(i, "NAME").ToString(); dr["description"] = parentNode.Tag + gridViewFormInfo.GetRowCellValue(i, "DESCRIPTION").ToString(); dr["resname"] = parentNode.Tag + gridViewFormInfo.GetRowCellValue(i, "NAME").ToString(); dr["fname"] = parentNode.Tag; dr["shortcut"] = " "; dr["treeno"] = 0; dr["treeseq"] = treeseq.ToString("d3"); treeseq++; j++; } } int flag = DbTreeInfo.AddTreeNode(inBlock, CConstString.ConnectName); if (flag == 0) { queryChildNodes(parentNode); //取消列表框中所有checkbox选中状态 for (int k = 0; k < gridViewFormInfo.DataRowCount; k++) { fgDevGridFormInfo.SetSelectedColumnChecked(k, false);// gridViewFormInfo..SetRowCellValue(k, gridColumnFormCheck, false); } this.gridViewFormInfo.Invalidate(); } } }