public IHttpActionResult CadastrarTipoPerda([FromBody] CadastroAtualizacaoDto dadosParaCadastro) { using (var sessao = new GDATransaction()) { try { var tipoPerda = new ConverterCadastroAtualizacaoParaTipoPerda(dadosParaCadastro) .ConverterParaTipoPerda(); var resultado = Microsoft.Practices.ServiceLocation.ServiceLocator .Current.GetInstance <PCP.Negocios.IPerdaFluxo>() .SalvarTipoPerda(tipoPerda); if (!resultado) { return(this.ErroValidacao($"Falha ao cadastrar tipo de perda. {resultado.Message.Format()}")); } return(this.Criado("Tipo de perda cadastrado com sucesso!", tipoPerda.IdTipoPerda)); } catch (Exception ex) { sessao.Rollback(); return(this.ErroValidacao($"Erro ao cadastrar tipo de perda.", ex)); } } }
public IHttpActionResult AtualizarTipoPerda(int id, [FromBody] CadastroAtualizacaoDto dadosParaAlteracao) { using (var sessao = new GDATransaction()) { try { var validacao = this.ValidarExistenciaIdTipoPerda(sessao, id); if (validacao != null) { return(validacao); } var fluxo = Microsoft.Practices.ServiceLocation.ServiceLocator .Current.GetInstance <PCP.Negocios.IPerdaFluxo>(); var turnoAtual = fluxo.ObtemTipoPerda(id); turnoAtual = new ConverterCadastroAtualizacaoParaTipoPerda(dadosParaAlteracao, turnoAtual) .ConverterParaTipoPerda(); var resultado = fluxo.SalvarTipoPerda(turnoAtual); if (!resultado) { return(this.ErroValidacao($"Falha ao atualizar tipo de perda. {resultado.Message.Format()}")); } return(this.Aceito($"Tipo de perda atualizado com sucesso!")); } catch (Exception ex) { sessao.Rollback(); return(this.ErroValidacao($"Erro ao atualizar tipo de perda.", ex)); } } }