//Nome do Valor Passado Na Action Deve Ter Mesmo Nome Da ViewModel public ActionResult Inserir_Pedido(string CodigoPedido) { /*O bloco seguinte valida os estados do DataAnnotation para caso alguém consiga burlar * se a pessoa colocar CodigoPedido errado e não passar pela validação, então ela é redirecionada * para a view Index!*/ if (!ModelState.IsValid) { return(View("Index")); } object ResultadoApiJson = RequisicaoApiMillennium.GetApiResultadoPedido(CodigoPedido); //Verifica conexão com porta da API do servidor if (ResultadoApiJson != null) { var resultado = JsonApi.FromJson(ResultadoApiJson.ToString()); //Verifica conexão com porta da API do servidor if (resultado.OdataCount > 1) { //Valida se o código do pedido fornecido só retornou um pedido mesmo TempData["JsonDataCountException"] = "Ocorreu um erro, entre em contato com o suporte e descreva o seguinte ocorrido: CodErro 0: O array de pedidos retornou num diferente de '1'"; } //Se tudo der certo, Armazena os pedidos retornados da Api em uma lista else { foreach (var item in resultado.Value) { PedidoViewModel Pedido = new PedidoViewModel(item.Pedido, item.Status, item.DataPedido, item.DataAtualizacao, item.ValorPedido, item.NomeCliente); TempData["Pedido"] = Pedido; } } } //Se a primeira condição for falsa, avisa sobre o erro com a porta de conexão do Server API! else { //Apenas TempDatas sao permitidas passar entre controllers TempData["ServerConnException"] = "O servidor está fora do ar no momento, tente novamente mais tarde."; } return(RedirectToAction("Mostrar_Status_Home", "Statuspedido")); }
//Nome do Valor Passado Na Action Deve Ter Mesmo Nome Da ViewModel public ActionResult Inserir_Documento(string document) { /*O bloco seguinte valida os estados do DataAnnotation para caso alguém consiga burlar * se a pessoa colocar CodigoPedido errado e não passar pela validação, então ela é redirecionada * para a view Index!*/ if (!ModelState.IsValid) { return(View("Index")); } List <ListaPedidosViewModel> listaPedidos = new List <ListaPedidosViewModel>(); //PessoaFisica if (document.Length == 14) { object JsonResult = RequisicaoApiMillennium.GetApiResultado_CPF(document); //Verifica conexão com porta da API do servidor if (JsonResult != null) { var resultado = JsonApi.FromJson(JsonResult.ToString()); //Verifica se há pedidos if (resultado.OdataCount == 0 && resultado.OdataMetadata != null && resultado.Value != null) { TempData["NoOrderException"] = "Não foram encontrados pedidos no seu CPF."; } //Se encontrado os pedidos, armazena os retornados da Api em uma lista else { foreach (var pv in resultado.Value) { listaPedidos.Add(new ListaPedidosViewModel() { Pedido = pv.Pedido, Status = pv.Status, DataPedido = pv.DataPedido, ValorPedido = pv.ValorPedido, NomeCliente = pv.NomeCliente }); } } } //Se a primeira condição for falsa, avisa sobre o erro de conexão com o servidor else { TempData["ServerConnException"] = "O servidor está fora do ar no momento, tente novamente mais tarde."; } } //PessoaJuridica else if (document.Length == 18) { object JsonResult = RequisicaoApiMillennium.GetApiResultado_CNPJ(document); if (JsonResult != null) { var resultado = JsonApi.FromJson(JsonResult.ToString()); if (resultado.OdataCount == 0 && resultado.OdataMetadata != null && resultado.Value != null) { TempData["NoOrderException"] = "Não foram encontrados pedidos no seu CNPJ."; } else { foreach (var pv in resultado.Value) { listaPedidos.Add(new ListaPedidosViewModel() { Pedido = pv.Pedido, Status = pv.Status, DataPedido = pv.DataPedido, ValorPedido = pv.ValorPedido, NomeCliente = pv.NomeCliente }); } } } else { TempData["ServerConnException"] = "O servidor está fora do ar no momento, tente novamente mais tarde."; } } else { TempData["DocException"] = "Por alguma razão seu documento não foi digitado corretamente, tente novamente ou entre em contato com o Suporte e comunique o erro!\nErro Cod 1: Tamanho Doc Inválido"; } TempData["ListaPedidos"] = listaPedidos; return(RedirectToAction("Mostrar_Pedidos", "Pedidoslista")); }