Example #1
0
        public async Task <ProductInsertResponse> UpsertAsync([FromBody] ProductInsertRequest request)
        {
            string authorizationHeader = HttpContext.Request.Headers["Authorization"];

            var authorizationResult = await _authorizationService.CheckAuthorizationAsync(authorizationHeader);

            if (authorizationResult.Authorized == false)
            {
                return(new ProductInsertResponse
                {
                    StatusCode = (int)HttpStatusCode.Unauthorized,
                    Data = new InsertProductResponseData(),
                    Message = $"Unauthorized User error"
                });
            }

            var nameValidate = await _nameValidator.ValidateAsync(request.Name);

            var descriptionValidate = await _descriptionValidator.ValidateAsync(request.Description);

            if (!nameValidate || !descriptionValidate)
            {
                return(new ProductInsertResponse
                {
                    StatusCode = (int)HttpStatusCode.BadRequest,
                    Data = new InsertProductResponseData(),
                    Message = $"Bad request error"
                });
            }

            var product = await _productService.AddNewProduct(request.Name, request.Description);

            return(new ProductInsertResponse()
            {
                Message = "Ok",
                Data = new InsertProductResponseData
                {
                    Description = product.Description,
                    Name = product.Name,
                    Id = product.Id
                },
                StatusCode = (int)HttpStatusCode.Created
            });
        }
Example #2
0
        public HttpResponseMessage ProductInsert(ProductInsertRequest model)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }

            string userId = UserService.GetCurrentUserId();

            UserProfileDomain userProfile = _AdminService.ProfileGetByUserId(userId);

            model.UserId    = userId;
            model.CompanyId = userProfile.CompanyId;

            ProductService ProductInsert = new ProductService();

            int productId = _ProductService.ProductInsert(model);

            ItemResponse <int> response = new ItemResponse <int>();

            response.Item = productId;

            return(Request.CreateResponse(HttpStatusCode.OK, response));
        }
Example #3
0
        static void Main(string[] args)
        {
            var client = new Client("https://www.mystore.com/mm5/json.mvc", "MY_API_TOKEN", "MY_SIGNING_KEY");

            client.DefaultStoreCode = "STORE_CODE";

            var request = new ProductInsertRequest(client);

            request.SetProductCode("NEW_PRODUCT")
            .SetProductName("My New Product")
            .SetProductPrice(29.99)
            .SetProductWeight(1.50);

            ProductInsertResponse response = request.Send();

            if (!response.IsSuccess())
            {
                Console.WriteLine("Error: {0}: {1}", response.GetErrorCode(), response.GetErrorMessage());
            }
            else
            {
                Console.WriteLine("Successfully inserted product");
            }
        }