public ActionResult SaveRole(RoleDto roleDto, [FromUri] bool assignExistUsers = false) { ActionResult actionResult = new ActionResult(); try { Validate(roleDto); if (roleDto.Id == 0) { roleDto.Id = Null.NullInteger; } RolesController.Instance.SaveRole(PortalSettings, roleDto, assignExistUsers, out KeyValuePair <HttpStatusCode, string> message); if (!string.IsNullOrEmpty(message.Value)) { actionResult.AddError(message.Key.ToString(), message.Value); } if (actionResult.IsSuccess) { actionResult.Data = new { RoleGroupManager.GetGroupRoles(new RoleDto { GroupId = roleDto.GroupId }).Roles, RoleGroups = RoleGroupManager.GetRoleGroup(PortalSettings.Current.PortalId) }; } } catch (ArgumentException ex) { actionResult.AddError("HttpStatusCode.BadRequest", ex.Message); } catch (SecurityException ex) { actionResult.AddError("HttpStatusCode.BadRequest", ex.Message); } catch (Exception ex) { Exceptions.LogException(ex); actionResult.AddError("HttpStatusCode.InternalServerError", ex.Message); } return(actionResult); }
internal static List <IUIData> GetData(UserInfo userInfo, string identifier, Dictionary <string, string> parameters) { RoleController rc = new RoleController(); Dictionary <string, IUIData> Settings = new Dictionary <string, IUIData>(); switch (identifier) { case "setting_roles": { dynamic RoleGroup = RoleGroupManager.GetRoleGroup(userInfo.PortalID); string DefaultRoleGroup = "-2"; string DefaultRoleGroupName = string.Empty; Settings.Add("RoleGroup", new UIData { Name = "RoleGroup", Options = RoleGroup, OptionsText = "Name", OptionsValue = "GroupId", Value = DefaultRoleGroup }); Settings.Add("Roles", new UIData { Name = "Roles", Value = "", Options = RoleGroupManager.GetGroupRoles(new RoleDto { GroupId = int.Parse(DefaultRoleGroup) }) }); Settings.Add("Working_RoleDto", new UIData { Name = "Working_RoleDto", Value = "", Options = new RoleDto() }); Settings.Add("Working_RoleGroupDto", new UIData { Name = "Working_RoleGroupDto", Value = "", Options = new RoleGroupDto() }); Settings.Add("GroupName", new UIData { Name = "GroupName", Value = DefaultRoleGroupName }); break; } case "setting_add": { int?rid = null; if (parameters.Count > 0) { rid = int.Parse(parameters["rid"]); } if (rid.HasValue) { Settings.Add("Working_RoleDto", new UIData { Name = "Working_RoleDto", Value = "", Options = RoleManager.GetRole(userInfo.PortalID, rid.Value) }); } else { Settings.Add("Working_RoleDto", new UIData { Name = "Working_RoleDto", Value = "", Options = new RoleDto { Status = RoleStatus.Approved, GroupId = -1, SecurityMode = SecurityMode.SecurityRole } }); } Settings.Add("RoleGroup", new UIData { Name = "RoleGroup", Options = RoleGroupManager.GetRoleGroup(userInfo.PortalID), OptionsText = "Name", OptionsValue = "GroupId", Value = "-1" }); Settings.Add("Status", new UIData { Name = "Status", Options = Factories.AppFactory.GetLocalizedEnumOption(typeof(RoleStatus)), OptionsText = "Key", OptionsValue = "Value", Value = "1" }); Settings.Add("SecurityMode", new UIData { Name = "SecurityMode", Options = Factories.AppFactory.GetLocalizedEnumOption(typeof(SecurityMode)), OptionsText = "Key", OptionsValue = "Value", Value = "0" }); Settings.Add("Working_RoleGroupDto", new UIData { Name = "Working_RoleGroupDto", Value = "", Options = new RoleGroupDto() }); break; } case "setting_adduser": { string keyword = string.Empty; int rid = 0; if (parameters.Count > 0) { rid = int.Parse(parameters["rid"]); } if (rid > 0) { Settings.Add("Working_RoleDto", new UIData { Name = "Working_RoleDto", Value = "", Options = RoleManager.GetRole(userInfo.PortalID, rid) }); } else { Settings.Add("Working_RoleDto", new UIData { Name = "Working_RoleDto", Value = "", Options = new RoleDto { Status = RoleStatus.Approved, GroupId = -1, SecurityMode = SecurityMode.SecurityRole } }); } Settings.Add("Working_UserRole", new UIData { Name = "Working_UserRole", Value = "", Options = new UserRoleInfoDTO { } }); Settings.Add("UserRole", new UIData { Name = "UserRole", Value = "", Options = new List <UserRoleInfoDTO>() }); Settings.Add("AllUsers", new UIData { Name = "AllUsers", Value = "", Options = null }); break; } } return(Settings.Values.ToList()); }
public dynamic GetGroupRoles(string keyword, int startIndex, int pageSize, RoleDto GroupRoles) { return(RoleGroupManager.GetGroupRoles(GroupRoles, keyword, startIndex, pageSize)); }