private void InitParas(string roleMenuID) { ServiceClient = new PermissionServiceClient(); //RoleClient = new SysRoleManagementServiceClient(); ServiceClient.RoleEntityMenuAddCompleted += new EventHandler<System.ComponentModel.AsyncCompletedEventArgs>(ServiceClient_RoleEntityMenuAddCompleted); ServiceClient.RoleEntityMenuUpdateCompleted += new EventHandler<System.ComponentModel.AsyncCompletedEventArgs>(ServiceClient_RoleEntityMenuUpdateCompleted); ServiceClient.GetRoleEntityMenuByIDCompleted += new EventHandler<GetRoleEntityMenuByIDCompletedEventArgs>(ServiceClient_GetRoleEntityMenuByIDCompleted); //ServiceClient.GetSysMenuByTypeCompleted += new EventHandler<GetSysMenuByTypeCompletedEventArgs>(ServiceClient_GetSysMenuByTypeCompleted); ServiceClient.GetSysRoleInfosCompleted += new EventHandler<GetSysRoleInfosCompletedEventArgs>(ServiceClient_GetSysRoleInfosCompleted); if (FormType == FormTypes.New) { RoleMenu = new T_SYS_ROLEENTITYMENU(); RoleMenu.ROLEENTITYMENUID = Guid.NewGuid().ToString(); //绑定系统类型 ServiceClient.GetSysDictionaryByCategoryAsync("SYSTEMTYPE"); } //初始化权限菜单 if (!string.IsNullOrEmpty(roleMenuID)) { ServiceClient.GetRoleEntityMenuByIDAsync(roleMenuID); } }
private void InitParas(string roleMenuID) { ServiceClient = new PermissionServiceClient(); //RoleClient = new SysRoleManagementServiceClient(); ServiceClient.RoleEntityMenuAddCompleted += new EventHandler <System.ComponentModel.AsyncCompletedEventArgs>(ServiceClient_RoleEntityMenuAddCompleted); ServiceClient.RoleEntityMenuUpdateCompleted += new EventHandler <System.ComponentModel.AsyncCompletedEventArgs>(ServiceClient_RoleEntityMenuUpdateCompleted); ServiceClient.GetRoleEntityMenuByIDCompleted += new EventHandler <GetRoleEntityMenuByIDCompletedEventArgs>(ServiceClient_GetRoleEntityMenuByIDCompleted); //ServiceClient.GetSysMenuByTypeCompleted += new EventHandler<GetSysMenuByTypeCompletedEventArgs>(ServiceClient_GetSysMenuByTypeCompleted); ServiceClient.GetSysRoleInfosCompleted += new EventHandler <GetSysRoleInfosCompletedEventArgs>(ServiceClient_GetSysRoleInfosCompleted); if (FormType == FormTypes.New) { RoleMenu = new T_SYS_ROLEENTITYMENU(); RoleMenu.ROLEENTITYMENUID = Guid.NewGuid().ToString(); //绑定系统类型 ServiceClient.GetSysDictionaryByCategoryAsync("SYSTEMTYPE"); } //初始化权限菜单 if (!string.IsNullOrEmpty(roleMenuID)) { ServiceClient.GetRoleEntityMenuByIDAsync(roleMenuID); } }
void DataGrid_CurrentCellChanged(object sender, EventArgs e) { DataGrid grid = sender as DataGrid; if (grid.SelectedItem != null) { RoleMenu = (T_SYS_ROLEENTITYMENU)grid.SelectedItems[0];//获取当前选中的行数据并转换为对应的实体 } }
/// <summary> /// 添加角色菜单权限 /// </summary> /// <param name="PermissionAddID"></param> /// <param name="role"></param> /// <param name="roleSystemDicEnt"></param> private int AddRoleEntityPermission(string PermissionAddID, T_SYS_ROLE role, T_SYS_ROLEENTITYMENU roleSystemDicEnt) { int IntResult = 0; try { var ents = from ent in dal.GetObjects <T_SYS_ROLEMENUPERMISSION>().Include("T_SYS_PERMISSION").Include("T_SYS_ROLEENTITYMENU") where ent.T_SYS_ROLEENTITYMENU.ROLEENTITYMENUID == roleSystemDicEnt.ROLEENTITYMENUID && ent.T_SYS_PERMISSION.PERMISSIONID == PermissionAddID select ent; T_SYS_ROLEMENUPERMISSION PermRole = new T_SYS_ROLEMENUPERMISSION(); if (ents != null) { if (ents.Count() > 0) { if (ents.FirstOrDefault() != null) { PermRole = ents.FirstOrDefault(); IntResult = 1; } } } if (string.IsNullOrEmpty(PermRole.ROLEMENUPERMID)) { PermRole.ROLEMENUPERMID = System.Guid.NewGuid().ToString(); PermRole.DATARANGE = "1";//默认为公司级别 PermRole.T_SYS_PERMISSIONReference.EntityKey = new System.Data.EntityKey("TM_SaaS_OA_EFModelContext.T_SYS_PERMISSION", "PERMISSIONID", PermissionAddID); PermRole.T_SYS_ROLEENTITYMENUReference.EntityKey = new System.Data.EntityKey("TM_SaaS_OA_EFModelContext.T_SYS_ROLEENTITYMENU", "ROLEENTITYMENUID", roleSystemDicEnt.ROLEENTITYMENUID); PermRole.CREATEDATE = System.DateTime.Now; PermRole.CREATEUSER = role.OWNERID; PermRole.UPDATEDATE = null; PermRole.UPDATEUSER = ""; PermRole.EXTENDVALUE = ""; IntResult = dal.Add(PermRole); //if (IntResult == 0) //{ // dal.RollbackTransaction(); //} } } catch (Exception ex) { IntResult = 0; Tracer.Debug("FBADMINBLL中AddRoleEntityPermission出现错误" + System.DateTime.Now.ToString() + "错误信息:" + ex.ToString()); } return(IntResult); }
/// <summary> /// 添加角色菜单 /// </summary> /// <param name="SysDictEntity"></param> /// <param name="role"></param> /// <returns></returns> private T_SYS_ROLEENTITYMENU AddRoleEntity(string SysDictEntityId, T_SYS_ROLE role) { T_SYS_ROLEENTITYMENU rolemenu = null; try { rolemenu = new T_SYS_ROLEENTITYMENU(); var ents = from ent in dal.GetObjects <T_SYS_ROLEENTITYMENU>().Include("T_SYS_ROLE").Include("T_SYS_ENTITYMENU") where ent.T_SYS_ROLE.ROLEID == role.ROLEID && ent.T_SYS_ENTITYMENU.ENTITYMENUID == SysDictEntityId select ent; if (ents != null) { if (ents.Count() > 0) { if (ents.FirstOrDefault() != null) { rolemenu = ents.FirstOrDefault(); } } } if (string.IsNullOrEmpty(rolemenu.ROLEENTITYMENUID)) { rolemenu.ROLEENTITYMENUID = System.Guid.NewGuid().ToString(); rolemenu.T_SYS_ENTITYMENUReference.EntityKey = new System.Data.EntityKey("TM_SaaS_OA_EFModelContext.T_SYS_ENTITYMENU", "ENTITYMENUID", SysDictEntityId); //rolemenu.T_SYS_ENTITYMENU.ENTITYMENUID = EntityParentID; rolemenu.T_SYS_ROLEReference.EntityKey = new System.Data.EntityKey("TM_SaaS_OA_EFModelContext.T_SYS_ROLE", "ROLEID", role.ROLEID); rolemenu.T_SYS_ROLEMENUPERMISSION = null;//将其设置为NULL rolemenu.UPDATEDATE = null; rolemenu.UPDATEUSER = ""; rolemenu.CREATEDATE = System.DateTime.Now; rolemenu.CREATEUSER = role.OWNERID; rolemenu.REMARK = ""; int k = dal.Add(rolemenu); if (k == 0) { rolemenu = null; } } } catch (Exception ex) { rolemenu = null; Tracer.Debug("FBADMINBLL中AddRoleEntity出现错误" + System.DateTime.Now.ToString() + "错误信息:" + ex.ToString()); } return(rolemenu); }
public List<T_SYS_ROLEENTITYMENU> GetRoleEntityIDListInfosByRoleID(string RoleID) { using (RoleEntityMenuBLL bll = new RoleEntityMenuBLL()) { #region List<T_SYS_ROLEENTITYMENU> Listmenu = new List<T_SYS_ROLEENTITYMENU>(); List<T_SYS_ROLEENTITYMENU> menuList; string keyString = "GetRoleEntityIDListInfosByRoleID" + RoleID; if (WCFCache.Current[keyString] == null) { IQueryable<T_SYS_ROLEENTITYMENU> IList = bll.GetRoleEntityIDListInfos(RoleID); menuList = IList != null ? IList.ToList() : null; WCFCache.Current.Insert(keyString, menuList, DateTime.Now.AddMinutes(15)); } else { menuList = (List<T_SYS_ROLEENTITYMENU>)WCFCache.Current[keyString]; } #endregion foreach (var q in menuList) { T_SYS_ROLEENTITYMENU temp = new T_SYS_ROLEENTITYMENU(); temp.T_SYS_ENTITYMENU = new T_SYS_ENTITYMENU(); if (q.T_SYS_ENTITYMENU != null) { temp.T_SYS_ENTITYMENU.ENTITYMENUID = q.T_SYS_ENTITYMENU.ENTITYMENUID; } else { continue; } temp.ROLEENTITYMENUID = q.ROLEENTITYMENUID; Listmenu.Add(temp); } return Listmenu.Count() > 0 ? Listmenu : null; } }
public void RoleEntityMenuUpdate(T_SYS_ROLEENTITYMENU obj) { using (RoleEntityMenuBLL bll = new RoleEntityMenuBLL()) { bll.RoleEntityMenuUpdate(obj); } }
public static T_SYS_ROLEENTITYMENU CreateT_SYS_ROLEENTITYMENU(string rOLEENTITYMENUID) { T_SYS_ROLEENTITYMENU t_SYS_ROLEENTITYMENU = new T_SYS_ROLEENTITYMENU(); t_SYS_ROLEENTITYMENU.ROLEENTITYMENUID = rOLEENTITYMENUID; return t_SYS_ROLEENTITYMENU; }
public void AddToT_SYS_ROLEENTITYMENU(T_SYS_ROLEENTITYMENU t_SYS_ROLEENTITYMENU) { base.AddObject("T_SYS_ROLEENTITYMENU", t_SYS_ROLEENTITYMENU); }
/// <summary> /// 添加新建、修改、删除、查看 权限的角色菜单权限值 /// </summary> /// <param name="PermissionAddID">新建权限ID</param> /// <param name="PermissionEditID">修改权限ID</param> /// <param name="PermissionDelID">删除权限ID</param> /// <param name="PermissionViewID">查看权限ID</param> /// <param name="role">角色实体</param> /// <param name="roleSystemDicEnt">菜单实体</param> /// <returns></returns> private bool AddRoleEntityPermissionByCEDV(string PermissionAddID, string PermissionEditID, string PermissionDelID, string PermissionViewID, T_SYS_ROLE role, T_SYS_ROLEENTITYMENU roleSystemDicEnt) { bool IsResult = false; int IntAdd = AddRoleEntityPermission(PermissionAddID, role, roleSystemDicEnt); //添加 int IntEdit = AddRoleEntityPermission(PermissionEditID, role, roleSystemDicEnt); //修改 int IntDel = AddRoleEntityPermission(PermissionDelID, role, roleSystemDicEnt); //删除 int IntView = AddRoleEntityPermission(PermissionViewID, role, roleSystemDicEnt); //查看 if (IntAdd > 0 && IntEdit > 0 && IntDel > 0 && IntView > 0) { IsResult = true; } return(IsResult); }
/// <summary> /// 添加预算管理员 /// 1 先添加预算管理员的角色,并添加对应的增加、删除、修改、查看对应的公司级的权限 /// 2 如果是超级管理员则添加对应的自定义权限 /// 3 添加预算管理员和角色关联的数据 /// </summary> /// <param name="lstobj"></param> /// <returns></returns> public string AddFbAdmin(List <T_SYS_FBADMIN> lstobj) { string StrReturn = ""; dal.BeginTransaction(); try { if (lstobj != null) { if (lstobj.Count() > 0) { //获取所有角色信息 #region 初始化变量 var entroles = from ent in dal.GetObjects <T_SYS_ROLE>() select ent; var entusers = from ent in dal.GetObjects <T_SYS_USER>() select ent; string SysDictEntity = GetMenuid("T_FB_SUBJECTTYPE"); //系统字典MUNUid string CompanySubEntity = GetMenuid("T_FB_SUBJECTCOMPANY"); //公司科目维护ID string DepartmentSubEntity = GetMenuid("T_FB_SUBJECTDEPTMENT"); //部门科目维护ID string SubjectCompanySet = GetMenuid("T_FB_SUBJECTCOMPANYSET"); //公司科目分配 string PermissionAddID = GetPermissionID(Convert.ToInt32(Permissions.Add)); //权限添加ID string PermissionEditID = GetPermissionID(Convert.ToInt32(Permissions.Edit)); //修改ID string PermissionDelID = GetPermissionID(Convert.ToInt32(Permissions.Delete)); //权限删除ID string PermissionViewID = GetPermissionID(Convert.ToInt32(Permissions.Browse)); //权限查看ID #endregion for (int i = 0; i < lstobj.Count(); i++) { //dal.Add(lstobj[i]); string stremployid = lstobj[i].EMPLOYEEID; string strCompanyId = lstobj[i].EMPLOYEECOMPANYID; var entFb = from e in dal.GetObjects <T_SYS_FBADMIN>() where e.EMPLOYEEID == stremployid && e.EMPLOYEECOMPANYID == strCompanyId select e; if (entFb != null && entFb.Any())//判断该员工在此公司有没有记录,有则不能进行添加 { StrReturn = "该员工已在此公司有管理员角色"; dal.RollbackTransaction(); return(StrReturn); } var entuser = entusers.Where(p => p.EMPLOYEEID == stremployid); string SysuserID = ""; if (entuser.Count() > 0) { SysuserID = entuser.FirstOrDefault().SYSUSERID; } else { break; } string strcompanyid = lstobj[i].OWNERCOMPANYID;//公司ID string strrolename = lstobj[i].ROLENAME; var companyrole = entroles.Where(p => p.OWNERCOMPANYID == strcompanyid && p.ROLENAME.Contains(strrolename)); if (companyrole != null) { //这里控制了一个公司只有一个人 //if (companyrole.Count() == 0) //{ T_SYS_ROLE role; //角色实体 int k; //添加角色返回的值 AddRole(lstobj, i, out role, out k); if (k > 0) { #region 添加系统字典菜单 if (lstobj[i].ISSUPPERADMIN == "1") //只有超级预算管理员才可以显示系统字典 { if (SysDictEntity != null) //添加系统字典菜单角色 { T_SYS_ROLEENTITYMENU roleSystemDicEnt = AddRoleEntity(SysDictEntity, role); if (roleSystemDicEnt == null) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } else { bool IsResult = AddRoleEntityPermissionByCEDV(PermissionAddID, PermissionEditID, PermissionDelID, PermissionViewID, role, roleSystemDicEnt); if (IsResult == false) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } } } } #endregion #region 添加公司科目维护菜单 if (CompanySubEntity != null)//添加公司科目菜单角色 { T_SYS_ROLEENTITYMENU roleCompanyEnt = AddRoleEntity(CompanySubEntity, role); if (roleCompanyEnt == null) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } else { bool IsResult = AddRoleEntityPermissionByCEDV(PermissionAddID, PermissionEditID, PermissionDelID, PermissionViewID, role, roleCompanyEnt); if (IsResult == false) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } } } #endregion #region 添加部门科目维护菜单 if (DepartmentSubEntity != null)//添加部门科目维护菜单角色 { T_SYS_ROLEENTITYMENU roleDepartmentEnt = AddRoleEntity(DepartmentSubEntity, role); if (roleDepartmentEnt == null) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } else { bool IsResult = AddRoleEntityPermissionByCEDV(PermissionAddID, PermissionEditID, PermissionDelID, PermissionViewID, role, roleDepartmentEnt); if (IsResult == false) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } } } #endregion #region 添加公司科目分配 if (SubjectCompanySet != null)//添加部门科目维护菜单角色 { T_SYS_ROLEENTITYMENU SubjectSetEnt = AddRoleEntity(SubjectCompanySet, role); if (SubjectSetEnt == null) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } else { bool IsResult = AddRoleEntityPermissionByCEDV(PermissionAddID, PermissionEditID, PermissionDelID, PermissionViewID, role, SubjectSetEnt); if (IsResult == false) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } } } #endregion #region 用户赋角色并提交事务 lstobj[i].CREATEDATE = System.DateTime.Now; lstobj[i].SYSUSERID = SysuserID; int IntFb = dal.Add(lstobj[i]); if (IntFb > 0) { T_SYS_FBADMINROLE fbrole = new T_SYS_FBADMINROLE(); fbrole.FBADMINROLEID = System.Guid.NewGuid().ToString(); fbrole.ROLEID = role.ROLEID; fbrole.T_SYS_FBADMINReference.EntityKey = new System.Data.EntityKey("TM_SaaS_OA_EFModelContext.T_SYS_FBADMIN", "FBADMINID", lstobj[i].FBADMINID); fbrole.ADDDATE = System.DateTime.Now; int IntAdminRole = dal.Add(fbrole); if (IntAdminRole == 0) { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } } int IntUserRole = AddUserRole(lstobj, i, SysuserID, role); if (IntUserRole > 0) { //dal.CommitTransaction(); } else { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } #endregion } else { dal.RollbackTransaction(); StrReturn = "ERROR"; return(StrReturn); } //} //控制了只一个人,暂时先注释 } } } } dal.CommitTransaction(); } catch (Exception ex) { dal.RollbackTransaction(); StrReturn = "ERROR"; Tracer.Debug("FBADMINBLL中AddFbAdmin出现错误" + System.DateTime.Now.ToString() + "错误信息:" + ex.ToString()); } return(StrReturn); }
/// <summary> /// dg DAtagrd /// </summary> /// <param name="dg"></param> /// <param name="chx">checkbox</param> /// <param name="strtxt">textbox</param> /// <param name="btn">button</param> private void FillPermissionDataRangeNewfill(DataGrid dg, string chx,string btn) { if (tmpEditRoleEntityPermList.Count() == 0) return; if (dg.Columns.Count < tmpPermission.Count) return;//还没有动态生成列 if (dg.ItemsSource != null) { foreach (object obj in dg.ItemsSource) { T_SYS_ENTITYMENU menu = new T_SYS_ENTITYMENU(); if (dg.Columns[0].GetCellContent(obj) != null) { CheckBox cb1 = dg.Columns[0].GetCellContent(obj).FindName(chx) as CheckBox; //cb为 if (cb1 == null) continue; //cb1.Tag menu = cb1.Tag as T_SYS_ENTITYMENU; var bb = from a in tmpEditRoleEntityLIst where a.T_SYS_ENTITYMENU.ENTITYMENUID == menu.ENTITYMENUID select a; if (bb.Count() > 0) { cb1.IsChecked = true; T_SYS_ROLEENTITYMENU tmpRoleEntity = new T_SYS_ROLEENTITYMENU(); tmpRoleEntity = bb.FirstOrDefault(); int PermCount = 0; PermCount = tmpPermission.Count; int IndexCount = 2; //IndexCount = PermCount for (int i = 2; i < PermCount + 2; i++) { IndexCount = IndexCount + i; if (dg.Columns[i].GetCellContent(obj) != null) { T_SYS_PERMISSION tmpPerm = new T_SYS_PERMISSION(); tmpPerm = tmpPermission[i - 2]; var roles = from cc in tmpEditRoleEntityPermList where cc.T_SYS_ROLEENTITYMENU.ROLEENTITYMENUID == tmpRoleEntity.ROLEENTITYMENUID && cc.T_SYS_PERMISSION.PERMISSIONID == tmpPerm.PERMISSIONID //where cc.T_SYS_ROLEENTITYMENU.ROLEENTITYMENUID == tmpRoleEntity.ROLEENTITYMENUID select cc; if (roles.Count() > 0) { //Rating hrrate = dg.Columns[i].GetCellContent(obj).FindName("HRrating") as Rating; Button hrrate = dg.Columns[i].GetCellContent(obj).FindName(btn) as Button; switch (roles.FirstOrDefault().DATARANGE) { case "0"://集团 //hrrate.Value = 1; hrrate.Content = "★★★★★"; break; case "1"://公司 //hrrate.Value = 0.8; hrrate.Content = "★★★★"; break; case "2"://部门 //hrrate.Value = 0.6; hrrate.Content = "★★★"; break; case "3"://岗位 //hrrate.Value = 0.4; hrrate.Content = "★★"; break; case "4"://个人 //hrrate.Value = 0.2; hrrate.Content = "★"; break; } //hrrate.Value = } }// if dg.columns }// for int i }//bb.cout } }//foreach(dg) } }