Exemple #1
0
        public async Task <Guid> SaveAsync(
            string token,
            string language,
            Guid?id,
            string name)
        {
            var requestModel = new SaveProductAttributeRequestModel
            {
                Id   = id,
                Name = name
            };

            var apiRequest = new ApiRequest <SaveProductAttributeRequestModel>
            {
                Language        = language,
                Data            = requestModel,
                AccessToken     = token,
                EndpointAddress = $"{this.settings.Value.CatalogUrl}{ApiConstants.Catalog.ProductAttributesApiEndpoint}"
            };

            var response = await this.apiClientService.PostAsync <ApiRequest <SaveProductAttributeRequestModel>, SaveProductAttributeRequestModel, BaseResponseModel>(apiRequest);

            if (response.IsSuccessStatusCode && response.Data?.Id != null)
            {
                return(response.Data.Id.Value);
            }

            if (!response.IsSuccessStatusCode)
            {
                throw new CustomException(response.Message, (int)response.StatusCode);
            }

            return(default);
        public async Task <IActionResult> Index([FromBody] SaveProductAttributeRequestModel model)
        {
            var productAttributeId = await this.productAttributesRepository.SaveAsync(
                await HttpContext.GetTokenAsync(ApiExtensionsConstants.TokenName),
                CultureInfo.CurrentUICulture.Name,
                model.Id,
                model.Name);

            return(this.StatusCode((int)HttpStatusCode.OK, new { Id = productAttributeId, Message = this.productLocalizer.GetString("ProductAttributeSavedSuccessfully").Value }));
        }