public ActionResult Adicionar(CategoriaViewModel categoriaViewModel, FormCollection form) { if (!ModelState.IsValid) { ViewData[CategoriasViewModel.MercadoriasCadastradas] = repositorioDeMercadorias.ObterTodos(); return View(); } if (form[CategoriasViewModel.MercadoriasSelecionadas] != null) { var ids = form[CategoriasViewModel.MercadoriasSelecionadas].Split(','); categoriaViewModel.Mercadorias.Clear(); foreach (var id in ids) { categoriaViewModel.Mercadorias.Add(repositorioDeMercadorias.Obter(Guid.Parse(id))); } } var categoria = Mapper.Map<CategoriaViewModel, Categoria>(categoriaViewModel); FabricaDeCategoria.Instancia().CriarCategoria(categoria); bool adicionado = repositorioDeCategorias.Adicionar(categoria); if (adicionado) return RedirectToAction("Listar"); ViewData[CategoriasViewModel.MercadoriasCadastradas] = repositorioDeMercadorias.ObterTodos(); ViewBag.Errou = true; ViewBag.Mensagem = "Não foi possível cadastrar a Categoria. Por favor informe ao administrador do sistema."; return View(); }
public ActionResult Editar(CategoriaViewModel categoriaViewModel) { var categoriaModel = Mapper.Map<Categoria, CategoriaViewModel>(repositorioDeCategorias.Obter(categoriaViewModel.Id)); if (!ModelState.IsValid) { ViewData[CategoriasViewModel.MercadoriasCadastradas] = repositorioDeMercadorias.ObterTodos(); return View(categoriaModel); } var categoria = Mapper.Map<CategoriaViewModel, Categoria>(categoriaViewModel); bool editado = repositorioDeCategorias.Editar(categoria); if (editado) return RedirectToAction("Detalhes", new { id = categoria.Id }); ViewData[CategoriasViewModel.MercadoriasCadastradas] = repositorioDeMercadorias.ObterTodos(); ViewBag.Errou = true; ViewBag.Mensagem = "Não foi possível editar a Categoria. Por favor informe ao administrador do sistema."; return View(categoriaModel); }