public List<compraProduto> Filtrar(compraProduto compraProduto)
 {
     return repositorycompraProduto.ObterPorFiltros(b => (
         (compraProduto.ID == Guid.Empty || b.ID == compraProduto.ID) &&
         (compraProduto.compraID == Guid.Empty || b.compraID == compraProduto.compraID) &&
         (compraProduto.produtoID == Guid.Empty || b.produtoID == compraProduto.produtoID) &&
         (compraProduto.valorUnitario == null || b.valorUnitario == compraProduto.valorUnitario) &&
         (compraProduto.quantidade == null || b.quantidade == compraProduto.quantidade) &&
         (compraProduto.valorTotal == null || b.valorTotal == compraProduto.valorTotal) &&
         (compraProduto.empresaID == Guid.Empty || b.empresaID == compraProduto.empresaID)
         )).ToList();
 }
 public Result SalvarCompraProduto(compraProduto compraProduto)
 {
     Result retorno = serviceCompraProduto.Salvar(compraProduto);
     return retorno;
 }
 public List<compraProduto> FiltrarCompraProduto(compraProduto compraProduto)
 {
     return serviceCompraProduto.Filtrar(compraProduto);
 }
        public Result Salvar(compraProduto compraProduto)
        {
            Result retorno = new Result();

            try
            {
                if (compraProduto.ID == Guid.Empty)
                {
                    compraProduto.ID = Guid.NewGuid();
                    repositorycompraProduto.Adicionar(compraProduto);
                }
                else
                {
                    repositorycompraProduto.Alterar(compraProduto);
                }

                context.SaveChanges();

                retorno.Ok("Cadastro realizado com sucesso.");
            }
            catch (Exception erro)
            {
                retorno.Erro(erro.Message);
            }

            return retorno;
        }