public List<produtoCategoria> Filtrar(produtoCategoria produtoCategoria)
 {
     return repositoryprodutoCategoria.ObterPorFiltros(b => (
         (produtoCategoria.ID == Guid.Empty || b.ID == produtoCategoria.ID) &&
         (produtoCategoria.nome == null || b.nome.ToUpper().Contains(produtoCategoria.nome)) &&
         (produtoCategoria.empresaID == Guid.Empty || b.empresaID == produtoCategoria.empresaID)
         )).ToList();
 }
 public Result SalvarProdutoCategoria(produtoCategoria produtoCategoria)
 {
     Result retorno = serviceProdutoCategoria.Salvar(produtoCategoria);
     return retorno;
 }
 public List<produtoCategoria> FiltrarProduto(produtoCategoria produtoCategoria)
 {
     return serviceProdutoCategoria.Filtrar(produtoCategoria);
 }
        public Result Salvar(produtoCategoria produtoCategoria)
        {
            Result retorno = new Result();

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

                context.SaveChanges();

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

            return retorno;
        }