public IHttpActionResult CadastrarSubgrupo([FromBody] CadastroAtualizacaoDto dadosParaCadastro) { using (var sessao = new GDATransaction()) { try { var subgrupo = new ConverterCadastroAtualizacaoParaSubgrupoProduto(dadosParaCadastro) .ConverterParaSubgrupoProduto(); var resultado = Microsoft.Practices.ServiceLocation.ServiceLocator .Current.GetInstance <Global.Negocios.IGrupoProdutoFluxo>() .SalvarSubgrupoProduto(subgrupo); if (!resultado) { return(this.ErroValidacao($"Falha ao cadastrar subgrupo de produto. {resultado.Message.Format()}")); } return(this.Criado("Subgrupo de produto cadastrado com sucesso!", 0)); } catch (Exception ex) { sessao.Rollback(); return(this.ErroValidacao($"Erro ao cadastrar subgrupo de produto.", ex)); } } }
public IHttpActionResult AtualizarSubgrupo(int id, [FromBody] CadastroAtualizacaoDto dadosParaAlteracao) { using (var sessao = new GDATransaction()) { try { var validacao = this.ValidarExistenciaIdSubgrupoProduto(sessao, id); if (validacao != null) { return(validacao); } var fluxo = Microsoft.Practices.ServiceLocation.ServiceLocator .Current.GetInstance <Global.Negocios.IGrupoProdutoFluxo>(); var subgrupoAtual = fluxo.ObtemSubgrupoProduto(id); subgrupoAtual = new ConverterCadastroAtualizacaoParaSubgrupoProduto(dadosParaAlteracao, subgrupoAtual) .ConverterParaSubgrupoProduto(); var resultado = fluxo.SalvarSubgrupoProduto(subgrupoAtual); if (!resultado) { return(this.ErroValidacao($"Falha ao atualizar subgrupo de produto. {resultado.Message.Format()}")); } return(this.Aceito($"Subgrupo de produto atualizado com sucesso!")); } catch (Exception ex) { sessao.Rollback(); return(this.ErroValidacao($"Erro ao atualizar subgrupo de produto.", ex)); } } }