ab56a9bcf7
SVN-Revision: r240
1321 lines
52 KiB
C#
1321 lines
52 KiB
C#
using DevExpress.XtraTreeList;
|
|
using DevExpress.XtraTreeList.Nodes;
|
|
using Lskj.Business;
|
|
using Lskj.Business.Impl;
|
|
|
|
using Lskj.Core;
|
|
using Lskj.Model;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using DevExpress.XtraTreeList.Data;
|
|
using DevExpress.XtraGrid.Columns;
|
|
using DevExpress.XtraEditors.Repository;
|
|
using System.Data.SqlClient;
|
|
|
|
using Lskj.Data;
|
|
using Lskj.Util;
|
|
using DevExpress.XtraBars;
|
|
using Lskj.Control;
|
|
using Lskj.Control.Model;
|
|
using DevExpress.XtraTreeList.Columns;
|
|
using DevExpress.XtraGrid.Views.Grid;
|
|
|
|
namespace Lskj.PubUserTomodule
|
|
{
|
|
public partial class FrmMain : BaseForm
|
|
{
|
|
public DynamicPowerModel PubPowerModel;
|
|
/// <summary>
|
|
/// 选中行的集合
|
|
/// </summary>
|
|
private List<DataRow> rows = new List<DataRow>();
|
|
private List<string> readPurview = new List<string>();
|
|
private List<string> editPurview = new List<string>();
|
|
private List<string> idlist = new List<string>();
|
|
/// <summary>
|
|
/// 记录选中角色选中行的行号之后
|
|
/// </summary>
|
|
private string rolePositionAfter = string.Empty;
|
|
/// <summary>
|
|
/// 记录选中人员选中行的行号之后
|
|
/// </summary>
|
|
private string operPositionAfter = string.Empty;
|
|
/// <summary>
|
|
/// 记录选中角色选中行的行号之前
|
|
/// </summary>
|
|
private string rolePositionBefore = string.Empty;
|
|
/// <summary>
|
|
/// 记录选中人员选中行的行号之前
|
|
/// </summary>
|
|
private string operPositionBefore = string.Empty;
|
|
/// <summary>
|
|
/// 获取左侧选中的名称
|
|
/// </summary>
|
|
private string id = string.Empty;
|
|
/// <summary>
|
|
/// 获取临时选中的名称
|
|
/// </summary>
|
|
private string empid = string.Empty;
|
|
private bool Operatorflag = false;
|
|
/// <summary>
|
|
/// treeList绑定的表
|
|
/// </summary>
|
|
DataTable dt = new DataTable();
|
|
/// <summary>
|
|
/// 角色表
|
|
/// </summary>
|
|
DataTable Roletable = new DataTable();
|
|
/// <summary>
|
|
/// 员工表
|
|
/// </summary>
|
|
DataTable employeetable = new DataTable();
|
|
|
|
//修改前模块列的属性
|
|
public DataTable BasicFormDt = new DataTable();
|
|
public DataTable BillAboveDt = new DataTable();
|
|
public DataTable BillDetailDt = new DataTable();
|
|
|
|
public FrmMain()
|
|
{
|
|
InitializeComponent();
|
|
//InitializeDeps();
|
|
InitializeColumns();
|
|
InitializeUsers();
|
|
creatTreeListControl();
|
|
creatDetailControl();
|
|
BindGridTreeView();
|
|
GridDragGrid dragGrid = new GridDragGrid(this.gridControlEx1.GridView, this.gridControlEx3.GridView);
|
|
dragGrid.OnDragComplete += new GridFragGridCompleteEventHandler(OnDragGridCompleted);
|
|
//GridDragGrid.GridAddCheckBox(this.gridControlEx1.GridView);
|
|
|
|
this.gridControlEx2.GridView.Click += new EventHandler(OnGridViewClick);//角色表点击
|
|
this.gridControlEx2.GridView.DoubleClick += new EventHandler(DoubleGridViewClick);
|
|
|
|
this.gridControlEx4.GridView.Click += new EventHandler(OnGridView2Click);//人员表点击
|
|
//this.gridControlEx3.GridView.Click += new EventHandler(OnGridView3Click);//临时表人员表点击
|
|
|
|
this.gridControlEx5.GridView.Click += new EventHandler(OnBasicFormGridViewClick);//权限模块点击
|
|
|
|
|
|
this.gridControlEx2.GridView.SelectRowHandler(0);//设置默认选中行
|
|
this.gridControlEx2.GridView.BestFitColumns();//设置根据内容填充列宽
|
|
this.gridControlEx3.GridView.BestFitColumns();//设置根据内容填充列宽
|
|
this.gridControlEx4.GridView.BestFitColumns();//设置根据内容填充列宽
|
|
this.gridControlEx5.GridView.BestFitColumns();//设置根据内容填充列宽
|
|
this.BasicForm.GridView.BestFitColumns();//设置根据内容填充列宽
|
|
if (Roletable.Rows.Count > 0)
|
|
{
|
|
First(Roletable.Rows[0]["id"] + "");
|
|
}
|
|
this.employeeName.TextEdit.EditValueChanged += new EventHandler(OnUserEditValueChanged);
|
|
this.employeeId.TextEdit.EditValueChanged += new EventHandler(OnUserEditValueChanged);
|
|
this.employeeName.Visible = false;
|
|
this.employeeId.Visible = false;
|
|
//this.department.TextEdit.EditValueChanged += new EventHandler(OnDepEditValueChanged);
|
|
|
|
// this.BasicForm.GridView.c
|
|
|
|
Lskj.Control.Model.AutoSizeChange.ControllInitializeSize(this);
|
|
|
|
}
|
|
|
|
|
|
#region 私有方法
|
|
|
|
/// <summary>
|
|
/// <para>说明:表格拖拽完成</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-11-14 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="sender">The sender.</param>
|
|
/// <param name="e">The e.</param>
|
|
protected void OnDragGridCompleted(object sender, GridDragGridArgs e)
|
|
{
|
|
string sql = string.Empty;
|
|
try
|
|
{
|
|
if (MessageUtil.Show(ResourceKeys.DragSelectRow, MessageBoxButtons.YesNo) == DialogResult.Yes)
|
|
{
|
|
GridColumnCollection gridColumns = this.gridControlEx3.GridView.Columns;
|
|
DataTable table = this.gridControlEx3.gridControl.DataSource as DataTable;
|
|
foreach (DataRow rowItem in e.GridViewSelectRows)
|
|
{
|
|
DataRow newRow = table.NewRow();
|
|
foreach (GridColumn col in gridColumns)
|
|
{
|
|
if ("id".Equals(col.FieldName)) continue;
|
|
|
|
if (rowItem.Table.Columns.Contains(col.FieldName))
|
|
{
|
|
// 列中是否包含对应字段,包含则使用值
|
|
newRow[col.FieldName] = rowItem[col.FieldName];
|
|
}
|
|
}
|
|
PowerImpl.DropDate(int.Parse(newRow["员工ID"] + ""), newRow["员工工号"] + "", newRow["员工姓名"] + "", newRow["所属部门"] + "", id);
|
|
table.Rows.Add(newRow);
|
|
}
|
|
DataTable NEWTABLE = GetNewDt(this.gridControlEx3.GridControl.DataSource as DataTable);
|
|
this.gridControlEx1.GridControl.DataSource = NEWTABLE;
|
|
this.gridControlEx3.GridView.ClearSelection();
|
|
this.gridControlEx3.GridView.SelectRowHandler(table.Rows.Count - 1);
|
|
this.gridControlEx3.GridView.UpdateCurrentRow();
|
|
this.gridControlEx3.GridView.ShowEditor();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogUtil.WriteError("表格拖拽错误", ex);
|
|
LogHelper.Instance.WriteError(ex);
|
|
//MessageUtil.Show(ResourceKeys.OperFault);
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 筛选赋权限表
|
|
/// </summary>
|
|
/// <param name="dt"></param>
|
|
/// <returns></returns>
|
|
private DataTable GetNewDt(DataTable newdt)
|
|
{
|
|
idlist.Clear();
|
|
string sqlwhere = string.Empty;
|
|
foreach (DataRow item in newdt.Rows)
|
|
{
|
|
idlist.Add(item["员工ID"] + " and ");
|
|
}
|
|
foreach (string id in idlist)
|
|
{
|
|
sqlwhere = sqlwhere + string.Format("员工ID !={0}", id);
|
|
}
|
|
|
|
sqlwhere = !string.IsNullOrEmpty(sqlwhere) ? sqlwhere.Trim().Substring(0, sqlwhere.Length - 4) : "1=1";
|
|
newdt = SqlHelper.ExecuteDataTable("select * from P_employeeBaseView where " + sqlwhere);
|
|
return newdt;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 默认绑定列数据
|
|
/// </summary>
|
|
private void InitializeColumns()
|
|
{
|
|
this.gridControlEx2.GridView.Columns.AddVisible("roleName", "角色");
|
|
this.gridControlEx4.GridView.Columns.AddVisible("员工ID", "员工ID");
|
|
this.gridControlEx4.GridView.Columns.AddVisible("员工工号", "员工工号");
|
|
this.gridControlEx4.GridView.Columns.AddVisible("员工姓名", "员工姓名");
|
|
this.gridControlEx4.GridView.Columns.AddVisible("所属部门", "所属部门");
|
|
}
|
|
|
|
/// <summary>
|
|
/// <para>说明:默认加载表格数据</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2019-09-19 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
private void InitializeUsers()
|
|
{
|
|
/// <summary>
|
|
/// 人员和角色绑定的表
|
|
/// </summary>
|
|
Roletable = PowerImpl.GetWorkRole("", "");
|
|
employeetable = PowerImpl.GetWorkEmployee();
|
|
this.gridControlEx1.GridControl.DataSource = employeetable;
|
|
this.gridControlEx2.GridControl.DataSource = Roletable;
|
|
this.gridControlEx4.GridControl.DataSource = employeetable;
|
|
this.gridControlEx1.GridView.OptionsBehavior.Editable = this.gridControlEx2.GridView.OptionsBehavior.Editable = this.gridControlEx3.GridView.OptionsBehavior.Editable = this.gridControlEx4.GridView.OptionsBehavior.Editable = false;
|
|
}
|
|
|
|
private void creatDetailControl()
|
|
{
|
|
|
|
//基础表单
|
|
GridColumn idColumn = new GridColumn();
|
|
idColumn.Caption = "ID";
|
|
idColumn.FieldName = "id";
|
|
idColumn.Visible = true;
|
|
idColumn.VisibleIndex = 0;
|
|
|
|
|
|
GridColumn orderidColumn = new GridColumn();
|
|
orderidColumn.Caption = "显示顺序";
|
|
orderidColumn.FieldName = "orderid";
|
|
orderidColumn.Visible = true;
|
|
orderidColumn.VisibleIndex = 1;
|
|
|
|
GridColumn sysnameColumn = new GridColumn();
|
|
sysnameColumn.Caption = "系统名称";
|
|
sysnameColumn.FieldName = "sysnameColumn";
|
|
sysnameColumn.Visible = true;
|
|
sysnameColumn.VisibleIndex = 2;
|
|
|
|
GridColumn username1Column = new GridColumn();
|
|
username1Column.Caption = "用户名称";
|
|
username1Column.FieldName = "username1";
|
|
username1Column.Visible = true;
|
|
username1Column.VisibleIndex = 3;
|
|
|
|
GridColumn widthColumn = new GridColumn();
|
|
widthColumn.Caption = "显示宽度";
|
|
widthColumn.FieldName = "width";
|
|
widthColumn.Visible = true;
|
|
widthColumn.VisibleIndex = 4;
|
|
|
|
GridColumn tagidColumn = new GridColumn();
|
|
tagidColumn.Caption = "是否必输";
|
|
tagidColumn.FieldName = "tagid";
|
|
tagidColumn.Visible = true;
|
|
tagidColumn.VisibleIndex = 5;
|
|
|
|
GridColumn DataFormatColumn = new GridColumn();
|
|
DataFormatColumn.Caption = "显示格式";
|
|
DataFormatColumn.FieldName = "DataFormat";
|
|
DataFormatColumn.Visible = true;
|
|
DataFormatColumn.VisibleIndex = 6;
|
|
|
|
RepositoryItemCheckEdit checkEdit = new RepositoryItemCheckEdit();
|
|
checkEdit.ValueChecked = "1";
|
|
checkEdit.ValueUnchecked = "0";
|
|
checkEdit.ValueGrayed = 3;
|
|
|
|
|
|
GridColumn privilegeViewColumn = new GridColumn();
|
|
privilegeViewColumn.Caption = "单独浏览权限";
|
|
privilegeViewColumn.FieldName = "View";
|
|
privilegeViewColumn.Visible = true;
|
|
privilegeViewColumn.VisibleIndex = 8;
|
|
privilegeViewColumn.ColumnEdit = checkEdit;
|
|
|
|
GridColumn privilegeOperColumn = new GridColumn();
|
|
privilegeOperColumn.Caption = "单独操作权限";
|
|
privilegeOperColumn.FieldName = "Oper";
|
|
privilegeOperColumn.Visible = true;
|
|
privilegeOperColumn.VisibleIndex = 7;
|
|
privilegeOperColumn.ColumnEdit = checkEdit;
|
|
|
|
this.BasicForm.GridView.Columns.AddRange(new GridColumn[] {
|
|
idColumn,
|
|
orderidColumn,
|
|
sysnameColumn,
|
|
username1Column,
|
|
widthColumn,
|
|
tagidColumn,
|
|
DataFormatColumn,
|
|
privilegeViewColumn,
|
|
privilegeOperColumn
|
|
});
|
|
|
|
|
|
//单据抬头
|
|
GridColumn billidColumn = new GridColumn();
|
|
billidColumn.Caption = "ID";
|
|
billidColumn.FieldName = "id";
|
|
billidColumn.Visible = true;
|
|
billidColumn.VisibleIndex = 0;
|
|
|
|
GridColumn fieldNameColumn = new GridColumn();
|
|
fieldNameColumn.Caption = "字段名称";
|
|
fieldNameColumn.FieldName = "fieldName";
|
|
fieldNameColumn.Visible = true;
|
|
fieldNameColumn.VisibleIndex = 1;
|
|
|
|
//GridColumn billorderidColumn = new GridColumn();
|
|
//billorderidColumn.Caption = "显示顺序";
|
|
//billorderidColumn.FieldName = "orderid";
|
|
//billorderidColumn.Visible = true;
|
|
//billorderidColumn.VisibleIndex = 1;
|
|
|
|
GridColumn sysNameColumn = new GridColumn();
|
|
sysNameColumn.Caption = "系统名称";
|
|
sysNameColumn.FieldName = "sysName";
|
|
sysNameColumn.Visible = true;
|
|
sysNameColumn.VisibleIndex = 2;
|
|
|
|
GridColumn userNameColumn = new GridColumn();
|
|
userNameColumn.Caption = "用户名称";
|
|
userNameColumn.FieldName = "userName";
|
|
userNameColumn.Visible = true;
|
|
userNameColumn.VisibleIndex = 3;
|
|
|
|
GridColumn BillAboveprivilegeViewColumn = new GridColumn();
|
|
BillAboveprivilegeViewColumn.Caption = "单独浏览权限";
|
|
BillAboveprivilegeViewColumn.FieldName = "View";
|
|
BillAboveprivilegeViewColumn.Visible = true;
|
|
BillAboveprivilegeViewColumn.VisibleIndex = 8;
|
|
BillAboveprivilegeViewColumn.ColumnEdit = checkEdit;
|
|
|
|
GridColumn BillDetailprivilegeOperColumn = new GridColumn();
|
|
BillDetailprivilegeOperColumn.Caption = "单独操作权限";
|
|
BillDetailprivilegeOperColumn.FieldName = "Oper";
|
|
BillDetailprivilegeOperColumn.Visible = true;
|
|
BillDetailprivilegeOperColumn.VisibleIndex = 7;
|
|
BillDetailprivilegeOperColumn.ColumnEdit = checkEdit;
|
|
|
|
|
|
//privilegeOperColumn.VisibleIndex = 3;
|
|
//privilegeViewColumn.VisibleIndex = 4;
|
|
|
|
this.BillAbove.GridView.Columns.AddRange(new GridColumn[] {
|
|
billidColumn,
|
|
fieldNameColumn,
|
|
sysNameColumn,
|
|
userNameColumn,
|
|
BillAboveprivilegeViewColumn,
|
|
BillDetailprivilegeOperColumn
|
|
});
|
|
|
|
//widthColumn.VisibleIndex = 4;
|
|
|
|
//GridColumn isVisibleColumn = new GridColumn();
|
|
//isVisibleColumn.Caption = "是否禁用";
|
|
//isVisibleColumn.FieldName = "isVisible";
|
|
//isVisibleColumn.Visible = true;
|
|
//isVisibleColumn.VisibleIndex = 5;
|
|
|
|
//GridColumn nullableColumn = new GridColumn();
|
|
//nullableColumn.Caption = "是否必输";
|
|
//nullableColumn.FieldName = "nullable";
|
|
//nullableColumn.Visible = true;
|
|
//nullableColumn.VisibleIndex = 4;
|
|
|
|
|
|
|
|
//单据
|
|
this.BillDetail.GridView.Columns.AddRange(new GridColumn[] {
|
|
billidColumn,
|
|
fieldNameColumn,
|
|
sysNameColumn,
|
|
userNameColumn,
|
|
BillAboveprivilegeViewColumn,
|
|
BillDetailprivilegeOperColumn
|
|
});
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// 动态创建gridControlEx5的Column,一列为图层名,一列为是否统计列Check控件
|
|
/// </summary>
|
|
private void creatTreeListControl()
|
|
{
|
|
|
|
GridColumn treeListColumnName = new GridColumn();
|
|
treeListColumnName.Caption = "系统名称";
|
|
treeListColumnName.FieldName = "MenuCaption";
|
|
treeListColumnName.MinWidth = 38;
|
|
treeListColumnName.Visible = true;
|
|
treeListColumnName.VisibleIndex = 0;
|
|
treeListColumnName.Width = 400;
|
|
|
|
GridColumn treeListColumnMenuId = new GridColumn();
|
|
treeListColumnMenuId.Caption = "菜单id";
|
|
treeListColumnMenuId.FieldName = "MenuId";
|
|
treeListColumnMenuId.Visible = true;
|
|
treeListColumnMenuId.VisibleIndex = 1;
|
|
|
|
GridColumn treeListColumnReadflag = new GridColumn();
|
|
RepositoryItemCheckEdit checkEdit = new RepositoryItemCheckEdit();
|
|
checkEdit.ValueChecked = "1";
|
|
checkEdit.ValueUnchecked = "0";
|
|
checkEdit.ValueGrayed = 3;
|
|
treeListColumnReadflag.ColumnEdit = checkEdit;
|
|
treeListColumnReadflag.Caption = "只读权限";
|
|
treeListColumnReadflag.FieldName = "Readflag";
|
|
treeListColumnReadflag.Name = "treeListColumnReadflagValue";
|
|
treeListColumnReadflag.Visible = true;
|
|
treeListColumnReadflag.VisibleIndex = 3;
|
|
|
|
GridColumn treeListColumnEditflag = new GridColumn();
|
|
treeListColumnEditflag.ColumnEdit = checkEdit;
|
|
treeListColumnEditflag.Caption = "操作权限";
|
|
treeListColumnEditflag.FieldName = "Editflag";
|
|
treeListColumnEditflag.Name = "treeListColumnEditflagValue";
|
|
treeListColumnEditflag.Visible = true;
|
|
treeListColumnEditflag.VisibleIndex = 2;
|
|
|
|
this.gridControlEx5.GridView.Columns.AddRange(new GridColumn[] {
|
|
treeListColumnName,
|
|
treeListColumnMenuId,
|
|
treeListColumnReadflag,
|
|
treeListColumnEditflag
|
|
});
|
|
//this.treeList1.Nodes.Clear();
|
|
//this.treeList1.Refresh();
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:模块权限表机构</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2017-09-04 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="treeTable">The tree table.</param>
|
|
public void BindGridTreeView()
|
|
{
|
|
DataTable treeTable = PowerImpl.GetAllModulesData();
|
|
dt = treeTable;
|
|
//dt.Columns.Add("ID");
|
|
//dt.Columns.Add("PARENTID");
|
|
////(节点编码的名称)
|
|
//dt.Columns.Add("Caption");
|
|
//dt.Columns.Add("MenuId");
|
|
//dt.Columns.Add("Readflag", typeof(int));
|
|
//dt.Columns.Add("Editflag", typeof(int));
|
|
//if (treeTable != null && treeTable.Rows.Count > 0)
|
|
//{}
|
|
}
|
|
/// <summary>
|
|
/// 执行保存角色权限时候的存储过程
|
|
/// </summary>
|
|
/// <param name="modid"></param>
|
|
/// <param name="tagid"></param>
|
|
/// <param name="mid"></param>
|
|
/// <returns></returns>
|
|
public int saveRoledata(int roleid)
|
|
{
|
|
SqlParameter pMsg = new SqlParameter("@msg", SqlDbType.VarChar, 2000);
|
|
pMsg.Direction = ParameterDirection.Output;
|
|
SqlParameter returnValue = new SqlParameter("@return", SqlDbType.Int, 4);
|
|
returnValue.Direction = ParameterDirection.ReturnValue;
|
|
SqlParameter[] param =
|
|
{
|
|
new SqlParameter("@roleid ",SqlDbType.VarChar,20),
|
|
pMsg,
|
|
returnValue
|
|
};
|
|
param[0].Value = roleid;
|
|
BaseImpl.ExecProcedure("p_SystemSetRoleUserPurview", param);
|
|
return Convert.ToInt32(returnValue.Value.ToString());
|
|
}
|
|
/// <summary>
|
|
/// 执行保存时候的存储过程
|
|
/// </summary>
|
|
/// <param name="modid"></param>
|
|
/// <param name="tagid"></param>
|
|
/// <param name="mid"></param>
|
|
/// <returns></returns>
|
|
public int savedata(int operatorid)
|
|
{
|
|
SqlParameter pMsg = new SqlParameter("@msg", SqlDbType.VarChar, 2000);
|
|
pMsg.Direction = ParameterDirection.Output;
|
|
SqlParameter returnValue = new SqlParameter("@return", SqlDbType.Int, 4);
|
|
returnValue.Direction = ParameterDirection.ReturnValue;
|
|
SqlParameter[] param =
|
|
{
|
|
new SqlParameter("@operatorid",SqlDbType.VarChar,20),
|
|
pMsg,
|
|
returnValue
|
|
};
|
|
param[0].Value = operatorid;
|
|
BaseImpl.ExecProcedure("[p_SystemSetUserPurview]", param);
|
|
return Convert.ToInt32(returnValue.Value.ToString());
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:部门下拉框值改变后</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2019-06-24 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="sender">The sender.</param>
|
|
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
|
|
void OnDepEditValueChanged(object sender, EventArgs e)
|
|
{
|
|
//string depid = this.department.EditValue;
|
|
//string mf = this.employeeName.EditText;
|
|
//DataTable table = WorkFlowBillImpl.GetWorkFlowUsers(depid, mf);
|
|
//this.gridControlEx4.gridControl.DataSource = table;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:用户值改变后</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2019-06-24 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="sender">The sender.</param>
|
|
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
|
|
void OnUserEditValueChanged(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
string mc = this.employeeName.EditText;
|
|
string dc = this.employeeId.EditText;
|
|
DataTable table = PowerImpl.GetWorkFlowUsers(mc, dc);
|
|
this.gridControlEx4.gridControl.DataSource = table;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:初始化部门数据</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2019-06-24 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
//private void InitializeDeps()
|
|
//{
|
|
|
|
// DataTable table = WorkFlowBillImpl.GetDeps();
|
|
// this.department.ValueMember = "departmentid";
|
|
// this.department.ValueField = "departmentid";
|
|
// this.department.TextField = "departmentname";
|
|
// this.department.SetDataSource(table);
|
|
//}
|
|
/// <summary>
|
|
/// 获取所有选中的集合
|
|
/// </summary>
|
|
/// <param name="parentNode"></param>
|
|
private void GetListKeyID()
|
|
{
|
|
editPurview.Clear();
|
|
readPurview.Clear();
|
|
DataTable masterdt = gridControlEx5.gridControl.DataSource as DataTable;
|
|
for (int i = 0; i < masterdt.Rows.Count; i++)
|
|
{
|
|
if (masterdt.Rows[i]["ID"].ToString().Length > 4 && masterdt.Rows[i]["Editflag"] + "" == "1")
|
|
{
|
|
editPurview.Add(masterdt.Rows[i]["MenuId"] + "");
|
|
}
|
|
else
|
|
if (masterdt.Rows[i]["ID"].ToString().Length > 4 && masterdt.Rows[i]["Readflag"] + "" == "1")
|
|
{
|
|
readPurview.Add(masterdt.Rows[i]["MenuId"] + "");
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 获取选择状态有权限的节点集合
|
|
/// </summary>
|
|
/// <param name="parentNode">父级节点</param>
|
|
private void GetNodeCheckedID(string[] ReadPurview, string[] EditPurview)
|
|
{
|
|
rows.Clear();
|
|
foreach (DataRow item in dt.Rows)
|
|
{
|
|
if (EditPurview.Contains(item["MenuId"] + "") || ReadPurview.Contains(item["MenuId"] + ""))
|
|
{
|
|
if (ReadPurview.Contains(item["MenuId"] + ""))
|
|
{
|
|
item["Readflag"] = "1";
|
|
}
|
|
if (EditPurview.Contains(item["MenuId"] + ""))
|
|
{
|
|
item["editflag"] = "1";
|
|
}
|
|
if (!EditPurview.Contains(item["MenuId"] + ""))
|
|
{
|
|
item["editflag"] = "0";
|
|
}
|
|
if (!ReadPurview.Contains(item["MenuId"] + ""))
|
|
{
|
|
item["Readflag"] = "0";
|
|
}
|
|
rows.Add(item);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
if (rows.Count > 0)
|
|
{
|
|
this.gridControlEx5.gridControl.DataSource = rows.CopyToDataTable();
|
|
this.gridControlEx5.GridView.SelectRowHandler(0);
|
|
OnBasicFormGridViewClick(null, null);
|
|
}
|
|
else
|
|
{
|
|
this.gridControlEx5.gridControl.DataSource = dt.Clone();
|
|
this.BasicForm.gridControl.DataSource = BasicFormDt = null;
|
|
this.BillAbove.gridControl.DataSource = BillAboveDt = null;
|
|
this.BillDetail.gridControl.DataSource = BillDetailDt = null;
|
|
|
|
}
|
|
|
|
//this.treeList1.CollapseAll();
|
|
}
|
|
|
|
#endregion
|
|
#region 点击事件
|
|
/// <summary>
|
|
/// <para>说明:设置权限</para>
|
|
/// <para>创建人:王一帆</para>
|
|
/// <para>创建日期:2022-06-07 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="sender">The sender.</param>
|
|
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
|
|
private void OnBtn_unfoldClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
int index = this.xtraTabControl1.SelectedTabPageIndex;//0为角色,1为人员
|
|
string ReadPurview = string.Empty;
|
|
string EditPurview = string.Empty;
|
|
|
|
if (index == 0)
|
|
{
|
|
DataRow DR = PowerImpl.GetRoleRow(id);
|
|
ReadPurview = DR["ReadPurview"].ToString();
|
|
EditPurview = DR["EditPurview"].ToString();
|
|
}
|
|
else
|
|
{
|
|
string tipMsg = string.Empty;
|
|
DataSet ds = BaseImpl.getAuthorityByEmpid(1, id, "", "", out tipMsg);
|
|
EditPurview = ds.Tables.Count > 0 ? ds.Tables[0].Rows[0]["pid"] + "" : string.Empty;
|
|
DataSet ds2 = BaseImpl.getAuthorityByEmpid(2, id, "", "", out tipMsg);
|
|
ReadPurview = ds2.Tables.Count > 0 ? ds2.Tables[0].Rows[0]["pid"] + "" : string.Empty;
|
|
}
|
|
|
|
|
|
|
|
FrmPermissionSetting form = new FrmPermissionSetting(EditPurview, ReadPurview);
|
|
form.onClickTheOKButton += new FrmPermissionSetting.ClickTheOKButton(UpdatePermissionModule);
|
|
DialogResult result = form.ShowDialog();
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// 模块权限设置框点击确定时,返回更新后的权限。
|
|
/// </summary>
|
|
/// <param name="EditPurview"></param>
|
|
/// <param name="ReadPurview"></param>
|
|
private void UpdatePermissionModule(List<string> EditPurview, List<string> ReadPurview)
|
|
{
|
|
GetNodeCheckedID(ReadPurview.ToArray(), EditPurview.ToArray());
|
|
}
|
|
|
|
/// <summary>
|
|
/// 双击角色表里的数据
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
void DoubleGridViewClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
// 新增角色
|
|
FrmAddRole frmAddRole = new FrmAddRole();
|
|
frmAddRole.LabelObj.Text = "请输入修改角色名称:";
|
|
if (frmAddRole.ShowDialog() == DialogResult.OK)
|
|
{
|
|
string RoleName = frmAddRole.RoleName;
|
|
rolePositionAfter = string.IsNullOrWhiteSpace(rolePositionAfter) ? "0" : rolePositionAfter;
|
|
rolePositionBefore = string.IsNullOrWhiteSpace(rolePositionBefore) ? "1" : rolePositionBefore;
|
|
if (PowerImpl.UpdOper(RoleName, id))
|
|
{
|
|
Roletable = PowerImpl.GetWorkRole("", "");
|
|
this.gridControlEx2.GridControl.DataSource = Roletable;
|
|
this.gridControlEx2.GridView.SelectRowHandler(int.Parse(rolePositionAfter));//设置默认选中行
|
|
if (Roletable.Rows.Count > 0)
|
|
{
|
|
First(rolePositionBefore);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
catch (Exception ex)
|
|
{
|
|
//MessageUtil.Show(ex.Message);
|
|
LogUtil.WriteError("角色修改模块", ex);
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 单击查询角色表里的数据
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void OnGridViewClick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
DataRow mSelectRow = this.gridControlEx2.GridView.GetFocusedDataRow();
|
|
rolePositionAfter = this.gridControlEx2.GridView.FocusedRowHandle.ToString();
|
|
if (mSelectRow != null)
|
|
{
|
|
id = mSelectRow["id"] + "";
|
|
rolePositionBefore = id;
|
|
First(id);
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 点击角色权限信息的方法
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
private void First(string Firstid)
|
|
{
|
|
id = Firstid;
|
|
DataRow DR = PowerImpl.GetRoleRow(id);
|
|
string[] ReadPurview = DR["ReadPurview"].ToString().Trim().TrimEnd(',').Split(',');
|
|
string[] EditPurview = DR["EditPurview"].ToString().Trim().TrimEnd(',').Split(',');
|
|
GetNodeCheckedID(ReadPurview, EditPurview);
|
|
DataTable Roledetailed = PowerImpl.GetWorkUsers(DR["id"] + "");
|
|
this.gridControlEx3.GridControl.DataSource = Roledetailed;
|
|
DataTable NEWTABLE = GetNewDt(Roledetailed);
|
|
this.gridControlEx1.GridControl.DataSource = NEWTABLE;
|
|
Operatorflag = false;
|
|
//this.treeList1.CollapseAll();
|
|
}
|
|
/// <summary>
|
|
/// 单击查询人员表里的数据
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void OnGridView2Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
DataRow mSelectRow = this.gridControlEx4.GridView.GetFocusedDataRow();
|
|
operPositionAfter = this.gridControlEx4.GridView.FocusedRowHandle.ToString();
|
|
if (mSelectRow != null)
|
|
{
|
|
id = mSelectRow["员工ID"] + "";
|
|
operPositionBefore = id;
|
|
Second(id);
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 点击人员详细信息的方法
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
private void Second(string Secondid)
|
|
{
|
|
id = Secondid;
|
|
// 验证删除存储过程
|
|
string tipMsg = string.Empty;
|
|
try
|
|
{
|
|
DataSet ds = BaseImpl.getAuthorityByEmpid(1, id, "", "", out tipMsg);
|
|
string editPurview = ds.Tables.Count > 0 ? ds.Tables[0].Rows[0]["pid"] + "" : string.Empty;
|
|
string[] EditPurview = editPurview.Trim().TrimEnd(',').Split(',');
|
|
DataSet ds2 = BaseImpl.getAuthorityByEmpid(2, id, "", "", out tipMsg);
|
|
string readPurview = ds2.Tables.Count > 0 ? ds2.Tables[0].Rows[0]["pid"] + "" : string.Empty;
|
|
string[] ReadPurview = readPurview.Trim().TrimEnd(',').Split(',');
|
|
GetNodeCheckedID(ReadPurview, EditPurview);
|
|
Operatorflag = true;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
//MessageUtil.Show("权限表无此人!");
|
|
this.gridControlEx4.GridView.SelectRowHandler(0);
|
|
Second("1");
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 点击模块,加载模块详细信息
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
private void OnBasicFormGridViewClick(object sender, EventArgs e)
|
|
{
|
|
DataRow mSelectRow = this.gridControlEx5.GridView.GetFocusedDataRow();
|
|
if (mSelectRow != null)
|
|
{
|
|
String dllcode = mSelectRow["PurviewId"] + "";
|
|
//基础模块
|
|
this.BasicForm.gridControl.DataSource = ReplaceDetailDataSource(PowerImpl.GetBasisData(dllcode));
|
|
BasicFormDt = (this.BasicForm.gridControl.DataSource as DataTable).Copy();
|
|
//单据抬头
|
|
this.BillAbove.gridControl.DataSource = ReplaceDetailDataSource(PowerImpl.GetBillAboveData(dllcode));
|
|
BillAboveDt = (this.BillAbove.gridControl.DataSource as DataTable).Copy();
|
|
//单据明细
|
|
this.BillDetail.gridControl.DataSource = ReplaceDetailDataSource(PowerImpl.GetBillDetailData(dllcode));
|
|
BillDetailDt = (this.BillDetail.gridControl.DataSource as DataTable).Copy();
|
|
}
|
|
}
|
|
|
|
public DataTable ReplaceDetailDataSource(DataTable dt)
|
|
{
|
|
DataTable newdt = dt.Clone();
|
|
int index = this.xtraTabControl1.SelectedTabPageIndex;//0为角色,1为人员
|
|
|
|
if (index == 0)
|
|
{
|
|
//角色对应的全部人员
|
|
DataTable Roledetailed = PowerImpl.GetWorkUsers(id);
|
|
foreach (DataRow dr in dt.Rows)
|
|
{
|
|
string privilegeOper = dr["privilegeOper"] + "";
|
|
string privilegeView = dr["privilegeView"] + "";
|
|
newdt.Rows.Add(dr.ItemArray);
|
|
|
|
string Oper = "1";
|
|
string View = "1";
|
|
foreach (DataRow personnelDr in Roledetailed.Rows)
|
|
{
|
|
string personnelName = personnelDr["员工姓名"] + "";
|
|
if (Oper == "1") Oper = privilegeOper.Split(',').Contains(personnelName) ? "1" : "0";//主要有一个人对不上,后面就不会在接着判断;
|
|
if (View == "1") View = privilegeView.Split(',').Contains(personnelName) ? "1" : "0";
|
|
if (Oper == "0" && View == "0") break;
|
|
}
|
|
newdt.Rows[newdt.Rows.Count - 1]["Oper"] = Oper;
|
|
newdt.Rows[newdt.Rows.Count - 1]["View"] = View;
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
// BasicDt
|
|
//获得当前选中员工名字
|
|
string name = (employeetable.Select("员工ID='" + id + "'"))[0]["员工姓名"] + "";
|
|
foreach (DataRow dr in dt.Rows)
|
|
{
|
|
string privilegeOper = dr["privilegeOper"] + "";
|
|
privilegeOper = privilegeOper.Split(',').Contains(name) ? "1" : "0";
|
|
string privilegeView = dr["privilegeView"] + "";
|
|
privilegeView = privilegeView.Split(',').Contains(name) ? "1" : "0";
|
|
newdt.Rows.Add(dr.ItemArray);
|
|
newdt.Rows[newdt.Rows.Count - 1]["Oper"] = privilegeOper;
|
|
newdt.Rows[newdt.Rows.Count - 1]["View"] = privilegeView;
|
|
}
|
|
}
|
|
|
|
return newdt;
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
/// <summary>
|
|
/// 点击保存权限
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btn_save_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
WaitForm.ShowForm("权限保存中,请稍后...");
|
|
//保存人员和角色的权限信息
|
|
string readdate = string.Empty;
|
|
string Editdate = string.Empty;
|
|
GetListKeyID();
|
|
|
|
foreach (string item in readPurview)
|
|
{
|
|
readdate = readdate + item + ",";
|
|
}
|
|
foreach (string item in editPurview)
|
|
{
|
|
Editdate = Editdate + item + ",";
|
|
}
|
|
if (Operatorflag)
|
|
{
|
|
DataRow DR = PowerImpl.GeRoleOperRow(id);
|
|
if (PowerImpl.SaveRoleOperDate(id, DR["员工姓名"] + "", DR["所属部门"] + "", readdate, Editdate))
|
|
{
|
|
int rValue = savedata(int.Parse(id));
|
|
if (rValue == 1)
|
|
{
|
|
MessageUtil.Show("同步人员权限成功!");
|
|
}
|
|
else
|
|
{
|
|
MessageUtil.Show("同步人员权限失败!");
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (PowerImpl.SaveRoleDate(id, readdate, Editdate))
|
|
{
|
|
|
|
int rValue = saveRoledata(int.Parse(id));
|
|
if (rValue == 0)
|
|
{
|
|
MessageUtil.Show("同步人员权限成功!");
|
|
}
|
|
else
|
|
{
|
|
MessageUtil.Show("同步人员权限失败!");
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
//保存选中模块的列信息
|
|
List<string> names = new List<string>();
|
|
if (Operatorflag)
|
|
{
|
|
//人员
|
|
string name = (employeetable.Select("员工ID='" + id + "'"))[0]["员工姓名"] + "";
|
|
names.Add(name);
|
|
}
|
|
else
|
|
{
|
|
//角色
|
|
DataTable Roledetailed = PowerImpl.GetWorkUsers(id);
|
|
foreach (DataRow personnelDr in Roledetailed.Rows)
|
|
{
|
|
string personnelName = personnelDr["员工姓名"] + "";
|
|
names.Add(personnelName);
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
}
|
|
finally
|
|
{
|
|
WaitForm.HideForm();
|
|
}
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存选中模块列的权限
|
|
/// </summary>
|
|
public void saveModuleColumn(List<string> names)
|
|
{
|
|
string sqlValue = string.Empty;
|
|
DataRow mSelectRow = this.gridControlEx5.GridView.GetFocusedDataRow();
|
|
//获得当前模块编号
|
|
String dllcode = mSelectRow["PurviewId"] + "";
|
|
|
|
//基础模块
|
|
DataTable newBasicForm = this.BasicForm.gridControl.DataSource as DataTable;
|
|
if (newBasicForm.Rows.Count > 0)
|
|
{
|
|
DataTable savedDt = PowerImpl.GetBasisData(dllcode);
|
|
|
|
for (int i = 0; i < newBasicForm.Rows.Count; i++)
|
|
{
|
|
if (!(newBasicForm.Rows[i]["Editflag"] + "").Equals((BasicFormDt.Rows[i]["Editflag"] + "")) && (newBasicForm.Rows[i]["id"] + "").Equals((BasicFormDt.Rows[i]["id"] + "")))
|
|
{
|
|
string rowEdit = newBasicForm.Rows[i]["Editflag"] + "";//当前是否选中
|
|
string rowId = newBasicForm.Rows[i]["id"] + "";//主键
|
|
List<string> editValue = ((savedDt.Select("id='" + rowId + "'"))[0]["Editflag"]+"").Split(',').ToList();//数据库中的值
|
|
if (rowEdit == "0")
|
|
{
|
|
foreach (string name in names)
|
|
{
|
|
if (editValue.Contains(name)) editValue.Remove(name);
|
|
}
|
|
|
|
}
|
|
else {
|
|
foreach (string name in names)
|
|
{
|
|
if (!editValue.Contains(name)) editValue.Add(name);
|
|
}
|
|
}
|
|
// string sql = string.Format("update p_systemwordbooktab set privilegeOper='{0}' where id='{1}'",);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
///// <summary>
|
|
///// <para>说明:分割条移动保存位置</para>
|
|
///// <para>创建人:龚宇超</para>
|
|
///// <para>创建日期:2018-03-06 </para>
|
|
///// <para>修改人:</para>
|
|
///// <para>修改日期:</para>
|
|
///// <para>修改备注:</para>
|
|
///// <para>版本:1.0</para>
|
|
///// </summary>
|
|
///// <param name="sender">The source of the event.</param>
|
|
///// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
|
|
//private void OnTopSplitterMoved(object sender, EventArgs e)
|
|
//{
|
|
// if (this._isInitFinish)
|
|
// {
|
|
// IniHelper.Write(string.Format("bill_width_{0}", this.SysModel.ModuleCode), this.ssc_main_top.SplitterPosition + "");
|
|
// }
|
|
//}
|
|
|
|
/// <summary>
|
|
/// 切换人员表默认选中第一行
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void xtraTabControl1_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e)
|
|
{
|
|
|
|
if (xtraTabControl1.SelectedTabPage == xtraTabPage2)//进行tabpage位置判断
|
|
{
|
|
operPositionAfter = string.IsNullOrWhiteSpace(operPositionAfter) ? "0" : operPositionAfter;
|
|
operPositionBefore = string.IsNullOrWhiteSpace(operPositionBefore) ? employeetable.Rows[0]["员工ID"] + "" : operPositionBefore;
|
|
this.gridControlEx4.GridView.SelectRowHandler(int.Parse(operPositionAfter));//设置默认选中行
|
|
Second(operPositionBefore);
|
|
this.employeeName.Visible = true;
|
|
this.employeeId.Visible = true;
|
|
}
|
|
if (xtraTabControl1.SelectedTabPage == xtraTabPage1)//进行tabpage位置判断
|
|
{
|
|
rolePositionAfter = string.IsNullOrWhiteSpace(rolePositionAfter) ? "0" : rolePositionAfter;
|
|
rolePositionBefore = string.IsNullOrWhiteSpace(rolePositionBefore) ? Roletable.Rows[0]["id"] + "" : rolePositionBefore;
|
|
if (Roletable.Rows.Count > 0)
|
|
{
|
|
First(rolePositionBefore);
|
|
}
|
|
this.gridControlEx2.GridView.SelectRowHandler(int.Parse(rolePositionAfter));//设置默认选中行
|
|
this.employeeName.Visible = false;
|
|
this.employeeId.Visible = false;
|
|
}
|
|
|
|
//DataTable dt = this.gridControlEx5.gridControl.DataSource as DataTable;
|
|
//if (dt.Rows.Count > 0)
|
|
//{
|
|
// this.gridControlEx4.GridView.SelectRowHandler(2);
|
|
//}
|
|
//else {
|
|
// this.BasicForm.gridControl.DataSource = null;
|
|
// this.BillAbove.gridControl.DataSource = null;
|
|
// this.BillDetail.gridControl.DataSource = null;
|
|
|
|
//}
|
|
|
|
|
|
}
|
|
/// <summary>
|
|
/// 删除人员权限
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btn_delete_Click(object sender, EventArgs e)
|
|
{
|
|
DataTable Roledetailed = PowerImpl.GetWorkUsers(id);
|
|
//int[] Roledrows = this.gridControlEx3.GridView.GetSelectedRows();
|
|
DataRow[] Roledrows = this.gridControlEx3.GetViewFocusedDataRows();
|
|
foreach (DataRow Roledrow in Roledrows)
|
|
{
|
|
PowerImpl.deletRoleDate(Roledrow["员工ID"] + "", id);
|
|
savedata(int.Parse(Roledrow["员工ID"] + ""));
|
|
}
|
|
DataTable newRoledetailed = PowerImpl.GetWorkUsers(id);
|
|
this.gridControlEx3.GridControl.DataSource = newRoledetailed;
|
|
DataTable NEWTABLE = GetNewDt(newRoledetailed);
|
|
this.gridControlEx1.GridControl.DataSource = NEWTABLE;
|
|
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:添加模块</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2019-06-24 </para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="sender">The sender.</param>
|
|
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
|
|
void btn_Add_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
// 新增角色
|
|
FrmAddRole frmAddRole = new FrmAddRole();
|
|
frmAddRole.LabelObj.Text = "请输入角色名称:";
|
|
if (frmAddRole.ShowDialog() == DialogResult.OK)
|
|
{
|
|
string RoleName = frmAddRole.RoleName;
|
|
rolePositionAfter = string.IsNullOrWhiteSpace(rolePositionAfter) ? "0" : rolePositionAfter;
|
|
rolePositionBefore = string.IsNullOrWhiteSpace(rolePositionBefore) ? "1" : rolePositionBefore;
|
|
if (PowerImpl.intnewOper(RoleName))
|
|
{
|
|
Roletable = PowerImpl.GetWorkRole("", "");
|
|
this.gridControlEx2.GridControl.DataSource = Roletable;
|
|
this.gridControlEx2.GridView.SelectRowHandler(int.Parse(rolePositionAfter));//设置默认选中行
|
|
if (Roletable.Rows.Count > 0)
|
|
{
|
|
First(rolePositionBefore);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
catch (Exception ex)
|
|
{
|
|
//MessageUtil.Show(ex.Message);
|
|
LogUtil.WriteError("角色添加模块", ex);
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 删除角色权限
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btn_deleteRole_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
//int[] Roledrows = this.gridControlEx2.GridView.GetSelectedRows();
|
|
DataRow[] Roledrows = this.gridControlEx2.GetViewFocusedDataRows();
|
|
if (Roledrows.Length < 1)
|
|
return;
|
|
DialogResult result = MessageUtil.Show(string.Format(ResourceKeys.DeleteRows, Roledrows.Length), MessageBoxButtons.YesNo);
|
|
if (result == DialogResult.Yes)
|
|
{
|
|
foreach (DataRow RoleRow in Roledrows)
|
|
{
|
|
//PowerImpl.deletRoleoperDate(Roletable.Rows[num]["id"] + "");
|
|
PowerImpl.deletRoleoperDate(RoleRow["id"] + "");
|
|
saveRoledata(int.Parse(id));
|
|
}
|
|
Roletable = PowerImpl.GetWorkRole("", "");
|
|
this.gridControlEx2.GridControl.DataSource = Roletable;
|
|
this.gridControlEx2.GridView.SelectRowHandler(0);//设置默认选中行
|
|
if (Roletable.Rows.Count > 0)
|
|
{
|
|
First(Roletable.Rows[0]["id"] + "");
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogUtil.WriteError("删除角色权限出错!", ex);
|
|
//MessageUtil.Show("删除角色权限出错!" + ex);
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// 设置父节点的状态
|
|
|
|
private void SetCheckedParentNodes(DevExpress.XtraTreeList.Nodes.TreeListNode node, Object check, Object obj)
|
|
{
|
|
if (node.ParentNode != null)
|
|
{
|
|
bool b = false;
|
|
int state;
|
|
for (int i = 0; i < node.ParentNode.Nodes.Count; i++)
|
|
{
|
|
state = (int)(node.ParentNode.Nodes[i].GetValue(obj));
|
|
if ((int)check != state)
|
|
{
|
|
b = !b;
|
|
break;
|
|
}
|
|
}
|
|
node.ParentNode.SetValue(obj, b ? CheckState.Indeterminate : check);
|
|
SetCheckedParentNodes(node.ParentNode, check, obj);
|
|
}
|
|
}
|
|
|
|
//复制
|
|
private void btn_copy_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
//FrmPermissionToCopy frmPermissionToCopy = new FrmPermissionToCopy();
|
|
//if (frmPermissionToCopy.ShowDialog() == DialogResult.OK)
|
|
//{
|
|
// List<string> copyReadPurview = frmPermissionToCopy.readPurview;
|
|
// List<string> copyEditPurview = frmPermissionToCopy.editPurview;
|
|
// GetListKeyID();
|
|
|
|
// //并集
|
|
// string[] readPurviewUnion = readPurview.Union(copyReadPurview).ToList().ToArray();
|
|
// string[] editPurviewUnion = editPurview.Union(copyEditPurview).ToList().ToArray();
|
|
|
|
// GetNodeCheckedID(readPurviewUnion, editPurviewUnion);
|
|
//}
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//清空
|
|
private void btn_empty_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
string[] Read = { };
|
|
string[] Edit = { };
|
|
GetNodeCheckedID(Read, Edit);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
string Message = ErrorMessage.PromptErrorMessage(ex);
|
|
MessageUtil.Show(Message, ex.Message);
|
|
}
|
|
}
|
|
}
|
|
}
|