Adicionando demais detalhes
davinTI/app-dono-modulos/pipeline/head This commit looks good

This commit is contained in:
Sarah Magalhães
2026-06-03 16:08:37 -03:00
parent 286e10c9f3
commit 471bd15fdf
+142 -23
View File
@@ -2864,47 +2864,166 @@ and pes2.qtdembalagem = (select nvl(max(pes3.qtdembalagem), 1)
pp.precovenda / GREATEST(ean.quantidade, 1) AS preco_unidade,
ROUND(pp.sugestao, 2) AS margem
FROM produtos p
INNER JOIN produtos_loja pl
FROM verdemar.produtos p
INNER JOIN verdemar.produtos_loja pl
ON pl.codigo = p.codigo
INNER JOIN loja l
INNER JOIN verdemar.loja l
ON l.codigo = pl.loja
INNER JOIN produtos_precos pp
INNER JOIN verdemar.produtos_precos pp
ON pp.codigo = p.codigo
AND pp.loja = l.codigo
INNER JOIN produtos_ean ean
INNER JOIN verdemar.produtos_ean ean
ON ean.codigo = p.codigo
AND ean.comprapadrao = 'S'
WHERE p.codigo = ${args.codproduto}
AND l.codigo = ${args.nrempresa}
AND p.inativo = 'N'
`
}
},
detalhe_custo_liquido: (args) => {
return {
sql: /*sql*/ ``
}
},
detalhe_estoque_disponivel: (args) => {
return {
sql: /*sql*/ ``
}
},
detalhe_estoque_transito: (args) => {
return {
sql: /*sql*/ ``
}
},
detalhe_mdv: (args) => {
return {
sql: /*sql*/ ``
sql: /*sql*/ `
SELECT
pm.data AS dtaentradasaida,
pm.loja AS nroempresa,
pm.codigo AS seqproduto,
DECODE(TO_CHAR(pm.data, 'D'),
'1', 'Domingo',
'2', 'Segunda',
'3', 'Terça',
'4', 'Quarta',
'5', 'Quinta',
'6', 'Sexta',
'7', 'Sábado'
) AS diasemana,
pm.quantidade AS qtd,
0 AS qtd_inicial
FROM produtos_movimento pm
WHERE pm.quantidade > 0
AND pm.data >= TRUNC(SYSDATE) - 365
AND pm.loja = ${args.nrempresa}
AND pm.codigo = ${args.codproduto}
ORDER BY pm.data DESC
`
}
},
detalhe_situacao_vigente: (args) => {
return {
sql: /*sql*/ ``
sql: /*sql*/ `
SELECT
l.codigo AS nroempresa,
p.codigo AS seqproduto,
prom.datainicial AS dtainicio,
prom.datafinal AS dtafim,
ean.quantidade || ' ' || ean.embalagem AS embalagem,
prom.precopromocao AS preco
FROM promocao prom
INNER JOIN produtos p
ON p.codigo = prom.codigo
INNER JOIN produtos_loja pl
ON pl.codigo = p.codigo
INNER JOIN loja l
ON l.codigo = pl.loja
AND l.codigo = prom.loja
LEFT JOIN produtos_ean ean
ON ean.codigo = p.codigo
AND ean.comprapadrao = 'S'
WHERE prom.datainicial >= TRUNC(SYSDATE) - 90
AND prom.loja = ${args.nrempresa}
AND prom.codigo = ${args.codproduto}
ORDER BY prom.datainicial DESC
`
}
},
detalhe_custo_liquido: (args) => {
return {
sql: /*sql*/ `
SELECT
e.dataentrada AS dtaentradasaida,
e.loja AS nroempresa,
ei.codigo AS SEQPRODUTO,
0 AS seqfamilia,
0 AS estqinicial,
0 AS estqfinal,
ei.custoliquido AS custo
FROM entradas e
INNER JOIN entradas_itens ei
ON ei.chaveentrada = e.chave
INNER JOIN operacoes_entradas oe
ON oe.codigo = e.operacao
WHERE e.dataentrada >= TRUNC(SYSDATE) - 365
AND e.status = 'S'
AND e.loja = ${args.nrempresa}
AND ei.codigo = ${args.codproduto}
ORDER BY e.dataentrada DESC
`
}
},
detalhe_estoque_disponivel: (args) => {
return {
sql: /*sql*/ `
SELECT
e.dataentrada AS dtaentradasaida,
e.loja AS nroempresa,
ei.codigo AS seqproduto,
SUM(CASE WHEN oe.tiponota = 'E' OR oe.tiponota IS NULL
THEN ei.quantidade ELSE 0 END) AS qtdentrada,
SUM(CASE WHEN oe.tiponota = 'S'
THEN ei.quantidade ELSE 0 END) AS qtdsaida,
SUM(CASE WHEN oe.tiponota = 'E' OR oe.tiponota IS NULL
THEN ei.quantidade ELSE 0 END)
- SUM(CASE WHEN oe.tiponota = 'S'
THEN ei.quantidade ELSE 0 END) AS qtdsaldo
FROM entradas e
INNER JOIN entradas_itens ei
ON ei.chaveentrada = e.chave
INNER JOIN operacoes_entradas oe
ON oe.codigo = e.operacao
WHERE e.dataentrada >= TRUNC(SYSDATE) - 365
AND e.status = 'S'
AND e.loja = ${args.nrempresa}
AND ei.codigo = ${args.codproduto}
GROUP BY
e.dataentrada,
e.loja,
ei.codigo
ORDER BY e.dataentrada DESC
`
}
},
detalhe_estoque_transito: (args) => {
return {
sql: /*sql*/ `
SELECT
e.loja AS nroempresa,
ei.codigo AS seqproduto,
FNC_NOMEPESSOAS(e.fornecedor) AS FORNECEDOR,
e.numero AS NUMERONF,
e.serie AS SERIENF,
e.dataemissao AS DTAEMISSAO,
e.dataentrada AS DTAENTRADA,
ei.quantidade AS QUANTIDADE,
ei.custoliquido * ei.quantidade AS VALOR
FROM entradas e
INNER JOIN entradas_itens ei
ON ei.chaveentrada = e.chave
WHERE e.status <> 'S'
AND e.dataemissao >= TRUNC(SYSDATE) - 365
AND e.loja = ${args.nrempresa}
AND ei.codigo = ${args.codproduto}
ORDER BY e.dataemissao ASC, e.numero, e.serie
`
}
}
}