public async Task <IActionResult> Put(int ProcessoId, Processo model) { try { if (ModelState.IsValid) { var processo = await _repo.GetAllProcessoAsyncById(ProcessoId); if (processo == null) { return(NotFound()); } _repo.Update(model); if (await _repo.SaveChangesAssync()) { return(Created($"/api/processo/{processo.Id}", model)); } } } catch (System.Exception erro) { return(this.StatusCode(StatusCodes.Status500InternalServerError, erro.InnerException)); } return(BadRequest()); }
public async Task <IActionResult> Put(int ClienteId, Cliente model) { try { if (ModelState.IsValid) { var cliente = await _repo.GetAllClienteAsyncById(ClienteId); if (cliente == null) { return(NotFound()); } var processosExclusao = cliente.Processos.Where( p => !model.Processos.Select(mp => mp.Id).Contains(p.Id)).ToList(); if (processosExclusao.Count > 0) { _repo.DeleteRange(processosExclusao); } _repo.Update(model); if (await _repo.SaveChangesAssync()) { return(Created($"/api/cliente/{cliente.Id}", model)); } } } catch (System.Exception error) { return(this.StatusCode(StatusCodes.Status500InternalServerError, error.Message)); } return(BadRequest()); }