public ActionResult Create(ClienteRequestModel model) { model.Endereco.Cep = Regex.Replace(model.Endereco.Cep, "[^0-9a-zA-Z]+", ""); model.PessoaFisica.Cpf = Regex.Replace(model.PessoaFisica.Cpf, "[^0-9a-zA-Z]+", ""); var pessoaFisica = new PessoaFisica(model.Nome, model.PessoaFisica.Cpf); var endereco = new Endereco(model.Endereco.Cep, model.Endereco.Rua, model.Endereco.Bairro, model.Endereco.Cidade, model.Endereco.Numero, model.Endereco.Complemento); List <Telefone> telefones = new List <Telefone>(); foreach (var item in model.Telefones) { if (item.Numero != null) { var telefone = new Telefone(item.Numero, item.TipoTelefone); telefones.Add(telefone); } } var cliente = new Cliente(model.Nome, pessoaFisica, model.Classificacao, model.Email, endereco, telefones); try { _clienteRepository.Add(cliente); } catch (Exception e) { throw new Exception(e.Message); } return(RedirectToAction("Index")); }
public IActionResult Post(ClienteRequestModel model) { var pessoaFisica = new PessoaFisica(model.PessoaFisica.Nome, model.PessoaFisica.Cpf); var endereco = new Endereco(model.Endereco.Cep, model.Endereco.Rua, model.Endereco.Bairro, model.Endereco.Cidade, model.Endereco.Numero, model.Endereco.Complemento); List <Telefone> telefones = new List <Telefone>(); foreach (var item in model.Telefones) { var telefone = new Telefone(item.Numero, item.TipoTelefone); telefones.Add(telefone); } var cliente = new Cliente(model.Nome, pessoaFisica, model.Classificacao, model.Email, endereco, telefones); try { _clienteRepository.Add(cliente); } catch (Exception e) { throw new Exception(e.Message); } return(CreatedAtRoute( "Get", new { Id = cliente.Id }, cliente)); }