SELECT
   VENDAS.CODFILIAL         CODIGO_FILIAL
  ,PCCLIENT.CLIENTE         NOME_CLIENTE
  ,PCCLIENT.EMAIL           EMAIL_CLIENTE
  ,REGEXP_REPLACE(PCCLIENT.CGCENT, '[^0-9]', '') CPF
  ,PCCLIENT.CODCLI          CODIGO_CLIENTE
  ,PCCLIENT.TIPOFJ          TIPO_PESSOA
  ,PCCLIENT.SEXO
  ,PCCLIENT.DTNASC          DATA_NASCIMENTO
  ,PCCIDADE.NOMECIDADE
  ,PCCLIENT.TELENT          TELEFONE
  ,PCCLIENT.ENDERENT        ENDERECO
  ,PCCLIENT.NUMEROENT       NUMERO
  ,PCCLIENT.BAIRROENT       BAIRRO
  ,PCCLIENT.ESTENT          ESTADO
  ,PCCLIENT.DTCADASTRO      DATA_CADASTO
  ,PCCLIENT.DTPRIMCOMPRA    DATA_PRIMEIRA_COMPRA
  ,PCCLIENT.DTULTCOMP       DATA_ULTIMA_COMPRA
  ,PCPEDC.DATA              DATA_COMPRA
  ,PCPEDC.NUMPED            NUMERO_PEDIDO
  ,PCSUPERV.NOME            NOME_LOJA
  ,PCPEDC.CODSUPERVISOR     CODIGO_SUPERVISOR
  ,PCUSUARI.NOME            NOME_VENDEDOR
  ,PCPEDC.CODUSUR           CODIGO_VENDEDOR
  ,PCCOB.COBRANCA           METODO_PAGAMENTO
  ,PCPLPAG.DESCRICAO        PLANO_DE_PAGAMENTO
  ,( SELECT SUM(P.QT*P.PVENDA)
       FROM PCPEDI  P
      WHERE P.NUMPED = PCPEDC.NUMPED ) TOTAL_COMPRA
  ,( SELECT COUNT(1)
       FROM PCPEDI P
      WHERE P.NUMPED
          = PCPEDC.NUMPED ) QTD_TOTAL_PRODUTO
  ,GREATEST(
    (PCPEDC.VLTABELA -
      ( SELECT SUM(P.QT*P.PVENDA)
          FROM PCPEDI  P
         WHERE P.NUMPED = PCPEDC.NUMPED ) ),0)    TOTAL_DESCONTO
  ,( SELECT SUM(P.QT*P.PVENDA)
       FROM PCPEDI  P
      WHERE P.NUMPED = PCPEDC.NUMPED
        AND P.CODPROD = 48500 )    TOTAL_FRETE
  ,VENDAS.CODPROD           ID_PRODUTO
  ,PCPRODUT.DESCRICAO       NOME_PRODUTO
  ,VENDAS.QT                QTDE_PRODUTO
  ,( VENDAS.VLVENDA / DECODE(VENDAS.QT,0,1,VENDAS.QT) ) PRECO_PRODUTO
  ,'VENDA'                  TIPO_FATURAMENTO
  ,VENDAS.VLVENDA           SUB_TOTAL
  ,PCCATEGORIA.CATEGORIA    CATEGORIA_PRODUTO
  ,PCSECAO.DESCRICAO        SECAO_PRODUTO
  ,PCDEPTO.DESCRICAO        DEPARTAMENTO_PRODUTO
  ,ESTPARCEIRO.nome         NOME_PARCEIRO
  ,ESTPARCEIRO.ID           CODIGO_PARCEIRO
  ,ESTPARCEIRO.TELEFONE     TELEFONE_PARCEIRO
 FROM view_vendas_resumo_faturamento VENDAS, PCPRODUT, PCCLIENT, PCUSUARI, PCSUPERV, PCCOB, PCPLPAG,
      ESTPARCEIRO, PCDEPTO, PCSECAO, PCCATEGORIA, PCCIDADE, PCPEDC
WHERE VENDAS.CODPROD = PCPRODUT.CODPROD
  AND VENDAS.CODCLI  = PCCLIENT.CODCLI
  AND VENDAS.NUMPED  = PCPEDC.NUMPED
  AND PCCLIENT.CODCIDADE = PCCIDADE.CODCIDADE (+)
  AND VENDAS.CODUSUR = PCUSUARI.CODUSUR
  AND PCPEDC.CODSUPERVISOR = PCSUPERV.CODSUPERVISOR
  AND VENDAS.CODCOB  = PCCOB.CODCOB
  AND VENDAS.CODPLPAG = PCPLPAG.CODPLPAG
  AND PCPEDC.CODUSUR3 = ESTPARCEIRO.ID (+)
  AND PCPRODUT.CODEPTO = PCDEPTO.CODEPTO
  AND PCPRODUT.CODSEC  = PCSECAO.CODSEC
  AND PCPRODUT.CODSEC  = PCCATEGORIA.CODSEC (+)
  AND PCPRODUT.CODCATEGORIA = PCCATEGORIA.CODCATEGORIA (+)
  AND VENDAS.CONDVENDA IN (1, 7)
  AND VENDAS.CODCLI NOT IN (1)
  AND VENDAS.DTSAIDA  >=  TRUNC(SYSDATE) - (365*4)

UNION ALL

SELECT
   DEVOLUCAO.CODFILIAL      CODIGO_FILIAL
  ,PCCLIENT.CLIENTE         NOME_CLIENTE
  ,PCCLIENT.EMAIL           EMAIL_CLIENTE
  ,REGEXP_REPLACE(PCCLIENT.CGCENT, '[^0-9]', '') CPF
  ,PCCLIENT.CODCLI          CODIGO_CLIENTE
  ,PCCLIENT.TIPOFJ          TIPO_PESSOA
  ,PCCLIENT.SEXO
  ,PCCLIENT.DTNASC          DATA_NASCIMENTO
  ,PCCIDADE.NOMECIDADE
  ,PCCLIENT.TELENT          TELEFONE
  ,PCCLIENT.ENDERENT        ENDERECO
  ,PCCLIENT.NUMEROENT       NUMERO
  ,PCCLIENT.BAIRROENT       BAIRRO
  ,PCCLIENT.ESTENT          ESTADO
  ,PCCLIENT.DTCADASTRO      DATA_CADASTO
  ,PCCLIENT.DTPRIMCOMPRA    DATA_PRIMEIRA_COMPRA
  ,PCCLIENT.DTULTCOMP       DATA_ULTIMA_COMPRA
  ,DEVOLUCAO.DTENT          DATA_COMPRA
  ,DEVOLUCAO.NUMPED         NUMERO_PEDIDO
  ,PCSUPERV.NOME            NOME_LOJA
  ,PCPEDC.CODSUPERVISOR     CODIGO_SUPERVISOR
  ,PCUSUARI.NOME            NOME_VENDEDOR
  ,DEVOLUCAO.CODUSUR        CODIGO_VENDEDOR
  ,PCCOB.COBRANCA           METODO_PAGAMENTO
  ,PCPLPAG.DESCRICAO        PLANO_DE_PAGAMENTO
  ,DEVOLUCAO.VLDEVOLUCAO * (-1)    TOTAL_COMPRA
  ,( SELECT COUNT(1)
       FROM PCMOV M
      WHERE M.NUMTRANSENT
          = DEVOLUCAO.NUMTRANSENT ) QTD_TOTAL_PRODUTO
  ,( ( SELECT SUM(M.QT * M.PTABELA)
       FROM PCMOV M
      WHERE M.NUMTRANSENT = DEVOLUCAO.NUMTRANSENT ) - DEVOLUCAO.VLDEVOLUCAO ) * (-1) TOTAL_DESCONTO
  ,0                        TOTAL_FRETE
  ,DEVOLUCAO.CODPROD        ID_PRODUTO
  ,PCPRODUT.DESCRICAO       NOME_PRODUTO
  ,DEVOLUCAO.QT * (-1)      QTDE_PRODUTO
  ,( DEVOLUCAO.VLDEVOLUCAO / DECODE(DEVOLUCAO.QT,0,1,DEVOLUCAO.QT) ) * (-1)          PRECO_PRODUTO
  ,'DEVOLUCAO'              TIPO_FATURAMENTO
  ,DEVOLUCAO.VLDEVOLUCAO * (-1)    SUB_TOTAL
  ,PCCATEGORIA.CATEGORIA    CATEGORIA_PRODUTO
  ,PCSECAO.DESCRICAO        SECAO_PRODUTO
  ,PCDEPTO.DESCRICAO        DEPARTAMENTO_PRODUTO
  ,ESTPARCEIRO.nome         NOME_PARCEIRO
  ,ESTPARCEIRO.ID           CODIGO_PARCEIRO
  ,ESTPARCEIRO.TELEFONE     TELEFONE_PARCEIRO
 FROM view_devol_resumo_faturamento DEVOLUCAO, PCPEDC, PCPRODUT, PCCLIENT, PCUSUARI, PCSUPERV, PCCOB, PCPLPAG,
      PCDEPTO, PCSECAO, PCCATEGORIA, PCCIDADE, ESTPARCEIRO
WHERE DEVOLUCAO.NUMPED = PCPEDC.NUMPED
  AND PCPEDC.CODUSUR3  = ESTPARCEIRO.ID (+)
  AND DEVOLUCAO.CODPROD = PCPRODUT.CODPROD
  AND DEVOLUCAO.CODCLI  = PCCLIENT.CODCLI
  AND PCCLIENT.CODCIDADE = PCCIDADE.CODCIDADE (+)
  AND DEVOLUCAO.CODUSUR = PCUSUARI.CODUSUR
  AND PCPEDC.CODSUPERVISOR = PCSUPERV.CODSUPERVISOR
  AND DEVOLUCAO.CODCOB  = PCCOB.CODCOB
  AND DEVOLUCAO.CODPLPAG = PCPLPAG.CODPLPAG
  AND PCPRODUT.CODEPTO = PCDEPTO.CODEPTO
  AND PCPRODUT.CODSEC  = PCSECAO.CODSEC
  AND PCPRODUT.CODSEC  = PCCATEGORIA.CODSEC (+)
  AND PCPRODUT.CODCATEGORIA = PCCATEGORIA.CODCATEGORIA (+)
  AND DEVOLUCAO.CONDVENDA IN (1, 7, 8)
  AND DEVOLUCAO.CODCLI NOT IN (1)
  AND DEVOLUCAO.DTENT >= TRUNC(SYSDATE) - (365*4)


  -- batendo valores


  SELECT 
    'QUERY CONFERÊNCIA' AS ORIGEM,
    (SELECT SUM(VLVENDA) FROM VIEW_VENDAS_RESUMO_FATURAMENTO 
     WHERE CONDVENDA IN (1,7) AND CODCLI NOT IN (1) AND EXTRACT(YEAR FROM DTSAIDA) = 2025) AS VENDA_BRUTA,
    (SELECT SUM(VLDEVOLUCAO) FROM VIEW_DEVOL_RESUMO_FATURAMENTO 
     WHERE DTCANCEL IS NULL AND EXTRACT(YEAR FROM DTENT) = 2025) AS DEVOLUCAO
FROM DUAL

UNION ALL

SELECT 
    'VIEW DITO (SOMA DIRETA)' AS ORIGEM,
    SUM(CASE WHEN TIPO_FATURAMENTO = 'VENDA' THEN SUB_TOTAL ELSE 0 END) AS VENDA_BRUTA,
    SUM(CASE WHEN TIPO_FATURAMENTO = 'DEVOLUCAO' THEN ABS(SUB_TOTAL) ELSE 0 END) AS DEVOLUCAO
FROM SEVEN.ESV_DITO_BASE_COMPRA
WHERE EXTRACT(YEAR FROM DATA_COMPRA) = 2025
  