private Resultado <IndexSupermercadoViewModel> CarregarModel(int?pagina, IndexSupermercadoViewModel.TipoOperacao operacao) { var resultado = new Resultado <IndexSupermercadoViewModel>(true); try { pagina = pagina ?? 1; var resultadoListar = OperacionalFacade.ListarTodosSupermercados(pagina.Value, c_tamanhoPagina); resultado += resultadoListar; if (resultado.Sucesso) { var lista = resultadoListar.Retorno.Item1; var total = resultadoListar.Retorno.Item2; var totalPagina = (int)Math.Ceiling((float)total / c_tamanhoPagina); var model = new IndexSupermercadoViewModel() { Pagina = pagina.Value, TotalPagina = totalPagina, ListaSupermercado = lista, Operacao = operacao, SupermercadoEditar = new Supermercado(), TamanhoPagina = c_tamanhoPagina }; resultado.Retorno = model; } } catch (Exception ex) { resultado = new Resultado <IndexSupermercadoViewModel>(ex); } return(resultado); }
public ActionResult Salvar(IndexSupermercadoViewModel model) { var resultado = new Resultado(true); var supermercado = model.SupermercadoEditar; if (model.Operacao == IndexSupermercadoViewModel.TipoOperacao.Incluir) { resultado = OperacionalFacade.IncluirSupermercado(supermercado); } else { resultado = OperacionalFacade.AlterarSupermercado(supermercado); } IndexSupermercadoViewModel.TipoOperacao operacao; if (resultado.Sucesso) { operacao = IndexSupermercadoViewModel.TipoOperacao.Listar; } else { operacao = model.Operacao; } var resultadoCarregar = CarregarModel(model.Pagina, operacao); var newModel = resultadoCarregar.Retorno; if (!resultado.Sucesso) { ModelState.AddModelResultoErro(resultado, "SupermercadoEditar"); newModel.SupermercadoEditar = model.SupermercadoEditar; newModel.IsValid = resultado.Sucesso; return(View("Index", newModel)); } else { return(View("Index")); } }