public async Task <IActionResult> GetValesByDist([FromBody] DistValesRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var dist = _context.Distribuidor.Where(d => d.id == request.DistId).FirstOrDefault();

            if (dist == null)
            {
                return(BadRequest(new Response
                {
                    IsSuccess = false,
                    Message = "El distribuidor especificado no existe."
                }));
            }

            var vales = await _context.Vale
                        .Include(v => v.Distribuidor)
                        .Include(v => v.Empresa)
                        .Include(v => v.Cliente)
                        .Include(v => v.Talonera)
                        .Include(v => v.Talonera.Empresa)
                        .Where(v => v.Distribuidor.id == request.DistId && v.status_vale == "Activo").ToListAsync();

            var pagos = await _context.Pago
                        .Include(p => p.Vale)
                        .Where(p => p.Vale.Distribuidor.id == request.DistId)
                        .ToListAsync();

            return(Ok(_converterHelper.ToValesResponse(vales, pagos)));
        }
Example #2
0
        public async Task <Response> GetValesByDist(
            string urlBase,
            string servicePrefix,
            string controller,
            DistValesRequest request)
        {
            try
            {
                string        requestString = JsonConvert.SerializeObject(request);
                StringContent content       = new StringContent(requestString, Encoding.UTF8, "application/json");
                HttpClient    client        = new HttpClient
                {
                    BaseAddress = new Uri(urlBase)
                };

                string url = $"{servicePrefix}{controller}";
                HttpResponseMessage response = await client.PostAsync(url, content);

                string result = await response.Content.ReadAsStringAsync();

                if (!response.IsSuccessStatusCode)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = result,
                    });
                }

                List <ValeResponse> valeResponse = JsonConvert.DeserializeObject <List <ValeResponse> >(result);
                return(new Response
                {
                    IsSuccess = true,
                    Result = valeResponse
                });
            }
            catch (Exception ex)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = ex.Message
                });
            }
        }