コード例 #1
0
ファイル: PedidosController.cs プロジェクト: vitor2018/teste2
 public IHttpActionResult PostFiltro([FromBody] FiltroPedidos filtro)
 {
     try
     {
         Parametros parametros = new Parametros("SP_LOJA_SEL_PEDIDOS");
         parametros.Add("ID_Cliente", filtro?.ID_Cliente ?? 0);
         parametros.Add("NR_Pedido", filtro?.NR_Pedido ?? 0);
         var dtInicial = filtro?.DT_EntregaInicial ?? null;
         if (dtInicial != null && dtInicial != DateTime.MinValue)
         {
             parametros.Add("DT_EntregaInicial", filtro.DT_EntregaInicial.ToShortDateString());
         }
         else
         {
             parametros.Add("DT_EntregaInicial", "");
         }
         var dtFinal = filtro?.DT_EntregaFinal ?? null;
         if (dtFinal != null && dtFinal != DateTime.MinValue)
         {
             parametros.Add("DT_EntregaFinal", filtro.DT_EntregaFinal.ToShortDateString());
         }
         else
         {
             parametros.Add("DT_EntregaFinal", "");
         }
         return(Ok(unitOfWork.Sp_Sel_Pedidos.Proc_Retorno(parametros.ToText(), parametros.GetParametros()).ToList()));
     }
     catch (Exception)
     {
         return(StatusCode(HttpStatusCode.InternalServerError));
     }
 }
コード例 #2
0
ファイル: HomeController.cs プロジェクト: vitor2018/teste2
        public JsonResult FiltraPedidos(int page, int rp, string sortname, string sortorder, string query)
        {
            try
            {
                FiltroPedidos        filtro   = JsonConvert.DeserializeObject <FiltroPedidos>(query);
                HttpResponseMessage  response = GlobalVariables.WebApiClient.PostAsJsonAsync("Pedidos/Filtro", filtro).Result;
                List <ResultPedidos> result   = response.Content.ReadAsAsync <List <ResultPedidos> >().Result;

                if (!string.IsNullOrEmpty(sortname))
                {
                    if (sortorder.Equals("desc"))
                    {
                        switch (sortname)
                        {
                        case "_ID_Pedido":
                            result = result.OrderByDescending(x => x.ID_Pedido).ToList();
                            break;

                        case "_NM_Cliente":
                            result = result.OrderByDescending(x => string.IsNullOrEmpty(x.NM_Cliente) ? "CONSUMIDOR GENÉRICO" : x.NM_Cliente).ToList();
                            break;

                        case "_NR_Valor":
                            result = result.OrderByDescending(x => x.NR_Valor).ToList();
                            break;

                        default:
                            break;
                        }
                    }
                    else
                    {
                        switch (sortname)
                        {
                        case "_ID_Pedido":
                            result = result.OrderBy(x => x.ID_Pedido).ToList();
                            break;

                        case "_NM_Cliente":
                            result = result.OrderBy(x => string.IsNullOrEmpty(x.NM_Cliente) ? "CONSUMIDOR GENÉRICO" : x.NM_Cliente).ToList();
                            break;

                        case "_NR_Valor":
                            result = result.OrderBy(x => x.NR_Valor).ToList();
                            break;

                        default:
                            break;
                        }
                    }
                }

                var viewModel = new GridPedidos(result.Skip((page - 1) * rp).Take(page * rp).ToList())
                {
                    total = result.Count,
                    page  = page
                };

                return(Json(viewModel, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new
                {
                    isSuccess = false,
                    message = ex.Message
                }, JsonRequestBehavior.AllowGet));
            }
        }