Esempio n. 1
0
        /// <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();
        }
Esempio n. 2
0
        public async Task <ApiResult> UpdateRoleMenu(ModfiyRoleMenuDto modfiyRoleMenuDto)
        {
            await passportService.UpdateRoleMenuAsync(modfiyRoleMenuDto, base.RoleId);

            return(ApiResult.Success);
        }