Пример #1
0
        public async Task <JsonResult> AddNewItem([FromBody] InputMenuItemModel inputMenuItemModel)
        {
            if (inputMenuItemModel.Name.IsNullOrWhiteSpace())
            {
                return(AjaxHelper.JsonResult(HttpStatusCode.BadRequest, "菜单项名不能为空"));
            }
            string token       = HttpContext.Request.Headers["token"];
            var    userId      = (await LoginManager.GetUserIdAsync(token)).GetValueOrDefault();
            var    menuItemDto = new MenuItemDto
            {
                Name                   = inputMenuItemModel.Name,
                Url                    = inputMenuItemModel.Url,
                CustomData             = inputMenuItemModel.CustomData,
                Icon                   = inputMenuItemModel.Icon,
                ClassName              = inputMenuItemModel.ClassName,
                OrderIn                = inputMenuItemModel.OrderIn,
                RequiredPermissionName = inputMenuItemModel.RequiredPermissionName,
                RequiresAuthentication = inputMenuItemModel.RequiresAuthentication,
                MenuItems              = inputMenuItemModel.MenuItems.Select(i => new MenuItemDto
                {
                    Name                   = i.Name,
                    Url                    = i.Url,
                    CustomData             = i.CustomData,
                    Icon                   = i.Icon,
                    ClassName              = i.ClassName,
                    OrderIn                = i.OrderIn,
                    RequiredPermissionName = i.RequiredPermissionName,
                    RequiresAuthentication = i.RequiresAuthentication
                }).ToList(),
                CreatorUserId = userId
            };
            var id = await _menuItemService.InsertAndGetIdAsync(menuItemDto);

            return(AjaxHelper.JsonResult(HttpStatusCode.OK, "成功", id));
        }
Пример #2
0
 private MenuItemDto ToMenuItemDto(int userId, InputMenuItemModel model)
 {
     if (model == null)
     {
         return(new MenuItemDto());
     }
     return(new MenuItemDto
     {
         Name = model.Name,
         Url = model.Url,
         CustomData = model.CustomData,
         Icon = model.Icon,
         ClassName = model.ClassName,
         OrderIn = model.OrderIn,
         RequiredPermissionName = model.RequiredPermissionName,
         RequiresAuthentication = model.RequiresAuthentication,
         CreatorUserId = userId,
         MenuItems = model.MenuItems.Select(i => ToMenuItemDto(userId, i)).ToList()
     });
 }