public async Task <IHttpActionResult> PostVentaList(ListVentaDTO listVentaDTO)
        {
            ListProcessResult count = new ListProcessResult();

            try
            {
                foreach (var ventaDTO in listVentaDTO.Ventas)
                {
                    bool created = false;
                    var  venta   = VentaDTO.ToVenta(ventaDTO);
                    created = await ventasProcessor.AddVenta(created, venta);

                    if (created)
                    {
                        count.Creations++;
                    }
                    else
                    {
                        count.Updates++;
                    }
                }
                return(Ok(count));
            }
            catch (DbUnexpectedValidationException valEx)
            {
                return(BadRequest(valEx.ToString()));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #2
0
        private bool PostVentaPage(VentaDTOBatch ventaBatch, out ListProcessResult result)
        {
            result = null;
            var client    = new RestClient($"{_config.APIEndpoint}{_config.APIPostVentaDataRange}");
            var postVenta = new RestRequest(Method.POST);

            postVenta.AddHeader("cache-control", "no-cache");
            if (TokenData == null || string.IsNullOrEmpty(TokenData.access_token))
            {
                throw new Exception("Token is null");
            }

            postVenta.AddHeader("Authorization", $"Bearer {TokenData.access_token}");
            postVenta.AddHeader("Content-Type", "application/json");
            postVenta.AddJsonBody(ventaBatch);
            IRestResponse response = client.Execute(postVenta);

            if (response.StatusCode == System.Net.HttpStatusCode.Created)
            {
                // success - creation
                result = JsonConvert.DeserializeObject <ListProcessResult>(response.Content);
                return(true);
            }
            else if (response.StatusCode == System.Net.HttpStatusCode.OK)
            {
                // success - update
                result = JsonConvert.DeserializeObject <ListProcessResult>(response.Content);
                return(true);
            }
            else
            {
                // some error - error management
                return(false);
            }
        }