Пример #1
0
        public async Task <IActionResult> Create(NavMenuEditViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var request = new CreateMenuRequest
                    {
                        DisplayOrder = model.DisplayOrder,
                        Icon         = model.Icon,
                        Title        = model.Title,
                        Url          = model.Url
                    };

                    var response = await _menuService.CreateMenuAsync(request);

                    if (response.IsSuccess)
                    {
                        return(Json(response));
                    }

                    Logger.LogError($"Create menu failed: {response.Message}");
                    ModelState.AddModelError("", response.Message);
                    return(BadRequest("Create Menu Failed."));
                }
                return(BadRequest("Invalid ModelState"));
            }
            catch (Exception e)
            {
                Logger.LogError(e, "Error Create Nav Menu.");

                ModelState.AddModelError("", e.Message);
                return(ServerError(e.Message));
            }
        }
Пример #2
0
        public async Task <IActionResult> Edit(Guid id)
        {
            var r = await _menuService.GetMenuAsync(id);

            if (r.IsSuccess && null != r.Item)
            {
                var model = new NavMenuEditViewModel
                {
                    Id           = r.Item.Id,
                    DisplayOrder = r.Item.DisplayOrder,
                    Icon         = r.Item.Icon,
                    Title        = r.Item.Title,
                    Url          = r.Item.Url
                };

                return(Json(model));
            }

            return(NotFound());
        }
Пример #3
0
        public async Task <IActionResult> Edit(NavMenuEditViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var request = new EditMenuRequest(model.Id)
                    {
                        Title          = model.Title,
                        DisplayOrder   = model.DisplayOrder,
                        Icon           = model.Icon,
                        Url            = model.Url,
                        IsOpenInNewTab = model.IsOpenInNewTab
                    };

                    var response = await _menuService.UpdateAsync(request);

                    if (response.IsSuccess)
                    {
                        return(Json(response));
                    }

                    Logger.LogError($"Edit menu failed: {response.Message}");
                    ModelState.AddModelError("", response.Message);
                    return(Conflict(ModelState));
                }

                return(BadRequest());
            }
            catch (Exception e)
            {
                Logger.LogError(e, "Error Editing Menu.");

                ModelState.AddModelError("", e.Message);
                return(ServerError());
            }
        }