public async Task <ActionResult> SetRoleMenusAsync([FromBody] SetRoleMenusIM im) { var rolemenus = await _context.RoleMenus.Where(d => d.RoleId == im.RoleId).ToListAsync(); _context.RoleMenus.RemoveRange(rolemenus); await _context.SaveChangesAsync(); foreach (var m in im.Menus) { SetRoleMenusPer(m, im.RoleId); } await _context.SaveChangesAsync(); return(Ok("角色权限设置成功")); }
public async Task <ActionResult> SetRoleMenusAsync(int id) { var role = await _context.Roles.Include(d => d.RoleMenus).FirstOrDefaultAsync(d => d.Id == id); var menuIds = role.RoleMenus.Select(m => m.MenuId).ToList(); //var menus = _.GetMenusByCategoryId(SettingsManager.Menu.BackMenuCId); var menus = await _context.Menus.Where(d => d.CategoryId == 1).ProjectTo <RoleMenusIM>(_mapper.ConfigurationProvider).ToListAsync(); foreach (var menu in menus) { menu.IsSelected = menuIds.Any()? menuIds.Contains(menu.Id):false; } SetRoleMenusIM vm = new SetRoleMenusIM { RoleId = id, Menus = menus }; return(Ok(vm)); }