/// <summary> /// 修改角色菜单 /// </summary> /// <returns></returns> public async Task UpdateRoleMenuAsync(ModfiyRoleMenuDto dto, int loginRoleid) { var roleModel = await roleRespository.SingleOrDefaultAsync(c => c.Id == loginRoleid); if (roleModel == null) { throw new ArgumentException("不能修改角色菜单,登录者的角色不存在了"); } if (!roleModel.IsSuperAdmin) { throw new ArgumentException("您不是超级管理员不能修改角色"); } var maprm = Map <ModfiyRoleMenuDto, Role>(dto); var currRole = await roleRespository.UpdateAsync(maprm); //修改后当前的角色 var cuuroleId = currRole.Id; await roleMenuRepository.ExecuteSqlCommandAsync($"DELETE FROM `wshtzf`.`tws_rolemenu` WHERE RoleId={cuuroleId}"); var rolemenus = new List <RoleMenu>(); foreach (var item in dto.MenusId) { var roleMenu = new RoleMenu() { RoleId = cuuroleId, MenuId = item }; rolemenus.Add(roleMenu); } await roleMenuRepository.InsertEntitiesAsync(rolemenus); await roleMenuRepository.UnitOfWork.SaveChangesAsync(); }
public async Task <ApiResult> UpdateRoleMenu(ModfiyRoleMenuDto modfiyRoleMenuDto) { await passportService.UpdateRoleMenuAsync(modfiyRoleMenuDto, base.RoleId); return(ApiResult.Success); }