Ejemplo n.º 1
0
        protected override async Task ActionAsync()
        {
            var siteId = Input.Data.SiteId;

            await UserSecurity.CheckAdministratorAsync(_userService, Input.UserId, siteId);

            var seoItemDataModel = await GetSeoCommand.GetSeoItemDataModelAsync(_dataFactory, siteId, true);

            if (seoItemDataModel == null)
            {
                // Insert
                var masterItemDataModel = await SaveMasterCommand.GetMasterItemDataModelAsync(_dataFactory, siteId);

                seoItemDataModel              = new ItemDataModel();
                seoItemDataModel.SiteId       = siteId;
                seoItemDataModel.ParentId     = masterItemDataModel.Id;
                seoItemDataModel.PropertyName = "Seo";
                seoItemDataModel.Module       = "Seo";
                seoItemDataModel.Index        = 100; // TODO

                _dataFactory.Add(seoItemDataModel);
            }

            seoItemDataModel.Data = Input.Data.Seo;

            await _dataFactory.SaveChangeAsync();

            await _cacheProvider.UpdateCacheAsync(siteId);
        }
Ejemplo n.º 2
0
        public async Task <CommandResult> Save([FromServices] SaveMasterCommand _saveMasterCommand, [FromBody] SaveMasterInput saveMasterInput)
        {
            var userInput = new UserInput <SaveMasterInput>
            {
                Data   = saveMasterInput,
                UserId = User.GetUserId()
            };

            var result = await
                         Business.InvokeAsync <SaveMasterCommand, UserInput <SaveMasterInput>, CommandResult <dynamic> >(
                _saveMasterCommand, userInput);

            return(result);
        }