feat: add new module consulta de produtos #1
@@ -2,12 +2,14 @@ import { createModuleFactory } from "@davinti/jeff";
|
||||
|
||||
const moduleFactory = createModuleFactory(["C5"]);
|
||||
|
||||
export default moduleFactory.createModule({
|
||||
export default moduleFactory
|
||||
.createModule({
|
||||
id: "flash-de-vendas",
|
||||
description: "Flash de Vendas",
|
||||
label: "Flash de Vendas",
|
||||
icon: "bar-chart",
|
||||
queries: {
|
||||
"flash": {
|
||||
flash: {
|
||||
name: "Flash de Vendas",
|
||||
display: {
|
||||
type: "flash",
|
||||
@@ -66,10 +68,11 @@ export default moduleFactory.createModule({
|
||||
],
|
||||
},
|
||||
params: ["data_venda"],
|
||||
}
|
||||
},
|
||||
},
|
||||
entrypoint: "flash",
|
||||
}).withImplementations({
|
||||
})
|
||||
.withImplementations({
|
||||
C5: {
|
||||
flash: (args) => {
|
||||
return {
|
||||
@@ -97,8 +100,8 @@ where 1=1
|
||||
and tvf.vlrvendaacumulada > 0
|
||||
and tvf.dtavda = TO_DATE(${args.data_venda}, 'YYYY-MM-DD')
|
||||
group by rollup(canalapp, nomeempresaapp)
|
||||
order by grouping(canalapp) desc, grouping(nomeempresaapp) desc`
|
||||
order by grouping(canalapp) desc, grouping(nomeempresaapp) desc`,
|
||||
};
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
import { createModuleFactory } from "@davinti/jeff";
|
||||
|
||||
const moduleFactory = createModuleFactory(["C5"]);
|
||||
|
||||
export default moduleFactory
|
||||
.createModule({
|
||||
id: "consulta-de-produto",
|
||||
description: "Consulta de Produtos",
|
||||
label: "Consulta de Produtos",
|
||||
icon: "search",
|
||||
queries: {
|
||||
consulta: {
|
||||
name: "Consulta de Produtos",
|
||||
display: {
|
||||
type: "list",
|
||||
search_bar: {
|
||||
placeholder: "Digite o nome do produto",
|
||||
},
|
||||
rows: {
|
||||
title: "title",
|
||||
code: "code",
|
||||
},
|
||||
},
|
||||
params: ["nome_produto"],
|
||||
},
|
||||
},
|
||||
entrypoint: "consulta",
|
||||
})
|
||||
.withImplementations({
|
||||
C5: {
|
||||
consulta: (args) => {
|
||||
return {
|
||||
sql: /*sql*/ `
|
||||
select --mpc.codacesso,
|
||||
pro.seqproduto,
|
||||
Upper(NVL(PRODIMAG.DESCRICAO,PRO.DESCCOMPLETA)) Descricao,
|
||||
Upper(pro.desccompleta) Pesquisa,
|
||||
coalesce(mapi.urlecommerceimg, '') IMAGEMURL,
|
||||
NVL(cpa.seqcategoria,0) CATEGORIAID,
|
||||
NVL(cpa.categoria,'SEM CATEGORIA') CATEGORIADESC
|
||||
from map_produto pro
|
||||
|
||||
/* inner join map_prodcodigo mpc
|
||||
on mpc.seqfamilia = pro.seqfamilia
|
||||
and mpc.seqproduto = pro.seqproduto
|
||||
AND mpc.tipcodigo = 'E'
|
||||
and mpc.indutilvenda = 'S'*/
|
||||
|
||||
left join map_produtoimagem mapi
|
||||
on mapi.seqproduto = pro.seqproduto
|
||||
and mapi.indpricipal = 'S'
|
||||
|
||||
LEFT JOIN CONSINCO.GMGB_VW_MOBILE_PRODIMAGE PRODIMAG
|
||||
ON PRODIMAG.ID = PRO.SEQPRODUTO
|
||||
|
||||
left join (select fdc.seqfamilia, fdc.seqcategoria, c.categoria
|
||||
from map_famdivcateg fdc
|
||||
inner join consinco.map_categoria c
|
||||
on fdc.seqcategoria = c.seqcategoria
|
||||
and fdc.nrodivisao = c.nrodivisao
|
||||
where c.nrodivisao = 2
|
||||
and c.categoria not in (' A CLASSIFICAR','ATIVO FIXO','ALMOXARIFADO','LANCHONETE','SERVI OS')
|
||||
and c.nivelhierarquia = 1
|
||||
and c.statuscategor = 'A'
|
||||
and c.tipcategoria = 'M'
|
||||
and fdc.status = 'A'
|
||||
and Descricao = ${args.nome_produto}
|
||||
) cpa
|
||||
on cpa.seqfamilia = pro.seqfamilia`,
|
||||
};
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user