//授予 张三 门户》通讯录》中国核建 查看 权限 // 主体 业务模块 权限 public static void GrantRightToUser() { //权限主体 var user = new User(); user.ID = 1; user.Name = "张三"; //业务模块模板 var businessModuleTemplate = new BusinessModuleTemplate(); businessModuleTemplate.Code = "Portal$AddressBook$Orgnize${0}"; businessModuleTemplate.Name = "门户》通讯录》{0}"; //业务模块 var businessModuleInstance = new BusinessModuleInstance(); businessModuleInstance.Code = "Portal$AddressBook$Organize$1"; businessModuleInstance.Name = "门户》通讯录》中国核建"; var right = new Right(); right.ID = 1; right.Code = 1; right.Name = "查看用户"; right.BusinessModuleTemplate = businessModuleTemplate; RightManager.GrantRightToUser(businessModuleInstance, right, user); }
public virtual bool GrantRightsToUser(BusinessModuleInstance businessModule, IEnumerable <Right> rights, User user) { foreach (var right in rights) { GrantRightToUser(businessModule, right, user); } return(true); }
public virtual bool GrantRightToUser(BusinessModuleInstance businessModule, Right right, User user) { var sql = @"declare @rightAssignId int select @rightAssignId = id from right_assign where businessModuleInstance = {0} and right={1} and subject ={2} and subjectType={3}) if @rightAssignId is not null begin update right_assign set businessModuleInstance={0} , right={1}, subject={2} ,subjectType={3},grantType={4} end else begin insert into right_assign(businessModuleInstance,right,subject,subjectType,grantType) values ({0},{1},{2},{3},{4}) end "; sql = string.Format(sql, businessModule.ID, right.ID, user.ID, GrantSubjectType.User); Console.WriteLine(sql); return(true); }