// // GET: /Manage/Index public async Task<ActionResult> Index(ManageMessageId? message) { ApplicationDbContext db = new ApplicationDbContext(); ViewBag.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "Su contraseña ha cambiado." : message == ManageMessageId.SetPasswordSuccess ? "Su contraseña ha sido configurada." : message == ManageMessageId.SetTwoFactorSuccess ? "Su proveedor de autenticación ha sido configurado." : message == ManageMessageId.Error ? "Un error ha ocurrido." : message == ManageMessageId.AddPhoneSuccess ? "Su número teléfonico ha sido agregado." : message == ManageMessageId.RemovePhoneSuccess ? "Su número teléfonico ha sido eliminado." : ""; List<Menus> defMenus = this.createDefMenus().Where(w => w.Status == "A").ToList(); List<Menus> menus = db.Menus.Where(w => w.Status == "A").ToList(); List<Menus> grantMenus = new List<Menus>(); var userId = User.Identity.GetUserId(); var userRole = UserManager.GetRoles(userId).Count == 0 ? "" : UserManager.GetRoles(userId)[0]; foreach (var item in defMenus) { if (item.RoleName == null || item.RoleName == string.Empty) { grantMenus.Add(item); } else { string[] roles = item.RoleName.Split(','); foreach (var roleItem in roles) { if (roleItem.Trim() == userRole) { grantMenus.Add(item); break; } } } } foreach (var item in menus) { if (item.RoleName == null || item.RoleName == string.Empty) { grantMenus.Add(item); } else { string[] roles = item.RoleName.Split(','); foreach (var roleItem in roles) { if (roleItem.Trim() == userRole) { grantMenus.Add(item); break; } } } } var model = new IndexViewModel { HasPassword = HasPassword(), PhoneNumber = await UserManager.GetPhoneNumberAsync(userId), TwoFactor = await UserManager.GetTwoFactorEnabledAsync(userId), Logins = await UserManager.GetLoginsAsync(userId), BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(userId), menusList = grantMenus }; return View(model); }
// GET: /Manage/ConfigCount public async Task<ActionResult> ConfigCount(ManageMessageId? message) { ViewBag.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "Su contraseña ha cambiado." : message == ManageMessageId.SetPasswordSuccess ? "Su contraseña ha sido configurada." : message == ManageMessageId.SetTwoFactorSuccess ? "Su proveedor de autenticación ha sido configurado." : message == ManageMessageId.Error ? "Un error ha ocurrido." : message == ManageMessageId.AddPhoneSuccess ? "Su número teléfonico ha sido agregado." : message == ManageMessageId.RemovePhoneSuccess ? "Su número teléfonico ha sido eliminado." : ""; var userId = User.Identity.GetUserId(); var model = new IndexViewModel { HasPassword = HasPassword(), PhoneNumber = await UserManager.GetPhoneNumberAsync(userId), TwoFactor = await UserManager.GetTwoFactorEnabledAsync(userId), Logins = await UserManager.GetLoginsAsync(userId), BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(userId) }; return View(model); }