public IActionResult Editar([FromBody] AdvogadoViewModel model) { try { var advogado = AdvogadoViewModel.ModelParaEditarEntidade(model); var advogadoAntigo = _servico.BuscarPorId(advogado.Id); if (advogadoAntigo == null) { return(NotFound("Advogado não encontrado !")); } _servico.Atualizar(advogado); if (advogadoAntigo.Enderecos != null) { var enderecosAntigos = advogadoAntigo.Enderecos.ToList(); for (int i = 0; i < advogadoAntigo.Enderecos.Count(); i++) { _servicoEndereco.Excluir(enderecosAntigos[i]); } } var enderecosNovos = EnderecoViewModel.ListaModelParaEntidade(model.Enderecos, advogado.Id); foreach (var item in enderecosNovos) { _servicoEndereco.Incluir(item); } return(Ok()); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }
public IActionResult Cadastrar([FromBody] AdvogadoViewModel model) { try { var advogado = AdvogadoViewModel.ModelParaCriarEntidade(model); _servico.Incluir(advogado); foreach (var item in model.Enderecos) { var endereco = EnderecoViewModel.ModelParaEntidade(item, advogado.Id); _servicoEndereco.Incluir(endereco); } return(Ok()); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }
public IActionResult Editar(int id) { try { var advogado = _servico.BuscarPorId(id); if (advogado == null) { return(NotFound()); } var advogadoModel = AdvogadoViewModel.EntidadeParaModel(advogado); advogadoModel.Enderecos = EnderecoViewModel.ListaEntidadeParaModel(advogado.Enderecos); return(View("Formulario", advogadoModel)); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }
public IActionResult Listar() { try { var advogados = _servico.Listar(); var advogadosModel = new List <AdvogadoViewModel>(); foreach (var item in advogados) { var model = AdvogadoViewModel.EntidadeParaModel(item); model.Enderecos = EnderecoViewModel.ListaEntidadeParaModel(item.Enderecos); advogadosModel.Add(model); } return(new JsonResult(advogadosModel)); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }