public ActionResult Create(ContatoModel contatoModel) { try { contatoModel = _contatoAppService.Incluir(contatoModel); foreach (var erro in contatoModel.ListaErros) { ModelState.AddModelError(erro.Key, erro.Value); } if (ModelState.IsValid) { return(RedirectToAction(nameof(Index))); } else { return(View(contatoModel)); } } catch { return(View()); } }
public ActionResult Incluir(ContatoViewModel contatoViewModel) { if (string.IsNullOrEmpty(contatoViewModel.Nome)) { ModelState.AddModelError("Nome", "O nome deve ser informado"); } if (ModelState.IsValid) { Contato contato; if (contatoViewModel.Tipo == PessoaFisicaJuridica.PessoaFisica) { contato = new Pessoa(); ((Pessoa)contato).RG = contatoViewModel.RG; ((Pessoa)contato).CPF = contatoViewModel.CPF; ((Pessoa)contato).DataNascimento = contatoViewModel.DataNascimento; contato.Tipo = PessoaFisicaJuridica.PessoaFisica; } else { contato = new Empresa(); ((Empresa)contato).CNPJ = contatoViewModel.CNPJ; contato.Tipo = PessoaFisicaJuridica.PessoaJuridica; } contato.Id = Guid.NewGuid().ToString(); contato.Nome = contatoViewModel.Nome; contato.Telefone = contatoViewModel.Telefone; contato.Email = contatoViewModel.Email; contato.UsuarioId = usuario.Id; contatoApp.Incluir(contato); return(RedirectToAction("Inicio")); } return(View(contatoViewModel)); }