public Retorno Listar() { try { var retorno = new DataProduto().Listar(); if (retorno.IsValido) { foreach (var produto in retorno.Entity as List <Produto> ) { var retornoMateriaPrima = new BusinessMateriaPrima().Carregar(produto.Codigo); if (retorno.IsValido) { produto.MateriasPrimas = retornoMateriaPrima.Entity as List <MateriaPrima>; } else { return(retornoMateriaPrima); } } } return(retorno); } catch (Exception ex) { return(Retorno.CriarRetornoExcecao(ex)); } }
public Retorno Consultar(Produto Entity) { try { var retorno = new DataProduto().Consultar(Entity); if (retorno.IsValido) { var produto = retorno.Entity as Produto; retorno = new BusinessMateriaPrima().ConsultarDoProduto(Entity.Codigo); if (retorno.IsValido) { produto.MateriasPrimas = retorno.Entity as List <MateriaPrima>; return(new Retorno(produto)); } } return(retorno); } catch (Exception ex) { return(Retorno.CriarRetornoExcecao(ex)); } }
public Retorno Salvar(Produto Entity) { try { Entity.Data = DateTime.Now; Retorno retorno = PreenchimentoObrigatorio(Entity); if (retorno.IsValido) { retorno = VerificarExistencia(Entity); if (retorno.IsValido) { using (var transaction = new TransactionScope()) { retorno = new BusinessFichaTecnica().Salvar(Entity.FichaTecnica); if (retorno.IsValido) { if (Entity.Codigo == 0) { retorno = new DataProduto().Incluir(Entity); } else { retorno = new DataProduto().Consultar(Entity); if (retorno.IsValido) { var produtoAtual = retorno.Entity as Produto; if (produtoAtual.Valor != Entity.Valor) { retorno = new DataProduto().AlterarValor(produtoAtual); if (retorno.IsValido) { retorno = new DataProduto().IncluirValor(Entity); } } if (retorno.IsValido) { retorno = new DataProduto().Alterar(Entity); } } } if (retorno.IsValido) { retorno = new BusinessMateriaPrima().ExcluirDoProduto(Entity.Codigo); if (retorno.IsValido) { retorno = SalvarMateriaPrimaProduto(Entity); if (retorno.IsValido) { transaction.Complete(); } } } } } } } return(retorno); } catch (Exception ex) { return(Retorno.CriarRetornoExcecao(ex)); } }