@namespace Oqtane.Modules.Admin.Users @inherits ModuleBase @inject IRoleService RoleService @inject IUserRoleService UserRoleService @if (userroles == null) {

Loading...

} else {
Cancel

Role  
@context.Role.Name @if (!context.Role.IsSystem) { }

} @code { public override SecurityAccessLevel SecurityAccessLevel { get { return SecurityAccessLevel.Admin; } } int userid; List roles; int roleid = -1; string effectivedate = ""; string expirydate = ""; List userroles; protected override async Task OnInitializedAsync() { try { userid = Int32.Parse(PageState.QueryString["id"]); roles = await RoleService.GetRolesAsync(PageState.Site.SiteId); await GetUserRoles(); } catch (Exception ex) { AddModuleMessage(ex.Message, MessageType.Error); } } private async Task GetUserRoles() { userroles = await UserRoleService.GetUserRolesAsync(PageState.Site.SiteId); userroles = userroles.Where(item => item.UserId == userid).ToList(); } private async Task SaveUserRole() { try { if (roleid != -1) { UserRole userrole = userroles.Where(item => item.UserId == userid && item.RoleId == roleid).FirstOrDefault(); if (userrole != null) { if (string.IsNullOrEmpty(effectivedate)) { userrole.EffectiveDate = null; } else { userrole.EffectiveDate = DateTime.Parse(effectivedate); } if (string.IsNullOrEmpty(expirydate)) { userrole.ExpiryDate = null; } else { userrole.ExpiryDate = DateTime.Parse(expirydate); } await UserRoleService.UpdateUserRoleAsync(userrole); } else { userrole = new UserRole(); userrole.UserId = userid; userrole.RoleId = roleid; if (string.IsNullOrEmpty(effectivedate)) { userrole.EffectiveDate = null; } else { userrole.EffectiveDate = DateTime.Parse(effectivedate); } if (string.IsNullOrEmpty(expirydate)) { userrole.ExpiryDate = null; } else { userrole.ExpiryDate = DateTime.Parse(expirydate); } await UserRoleService.AddUserRoleAsync(userrole); } await GetUserRoles(); AddModuleMessage("User Assigned To Role", MessageType.Success); } else { AddModuleMessage("You Must Select A Role", MessageType.Warning); } } catch (Exception ex) { AddModuleMessage(ex.Message, MessageType.Error); } } private async Task DeleteUserRole(int UserRoleId) { await UserRoleService.DeleteUserRoleAsync(UserRoleId); await GetUserRoles(); AddModuleMessage("User Removed From Role", MessageType.Success); } }