diff --git a/src/products/products.module.ts b/src/products/products.module.ts index b1b57e0..6a9b8bf 100644 --- a/src/products/products.module.ts +++ b/src/products/products.module.ts @@ -281,203 +281,34 @@ export default moduleFactory consulta: (args) => { return { sql: /*sql*/ ` - SELECT + SELECT CAST(p.SEQPRODUTO AS NUMERIC(15)) AS code, p.DESCCOMPLETA AS title - FROM DIN_ABASTECIMENTO_PRODUTOS p - WHERE 1=1 - AND ( - (${args.filtro} IS NULL OR ${args.filtro} = '') - OR ( - p.SEQPRODUTO LIKE '%' || ${args.filtro} || '%' - OR UPPER(p.DESCCOMPLETA) LIKE UPPER('%' ||${args.filtro} || '%') + FROM + DIN_ABASTECIMENTO_PRODUTOS p + WHERE + 1 = 1 + AND p.SEQPRODUTO LIKE '%' || ${args.filtro} || '%' + OR UPPER(p.DESCCOMPLETA) LIKE UPPER('%' || ${args.filtro} || '%') OR EXISTS ( - SELECT 1 - FROM CONSINCO.MAP_PRODCODIGO A - WHERE A.SEQPRODUTO = p.SEQPRODUTO + SELECT + 1 + FROM + CONSINCO.MAP_PRODCODIGO A + WHERE + A.SEQPRODUTO = p.SEQPRODUTO AND ISNUMERIC(A.CODACESSO) = 'S' AND A.CODACESSO = ${args.ean} ) - ) - ) - ORDER BY 2 + ORDER BY + 2 `, }; }, detalhe: (args) => { return { sql: /*sql*/ ` - select 200 nroempresa, - tcomp.comprador, - nvl(mff.fornecedor, 'N/A') fornecedor, - consinco.gmgbfcategoriafamilian1(pro.seqfamilia, me.nrodivisao, 1) categoria, - pro.seqproduto, - initcap(pro.desccompleta) Descricao, - nvl(mapi.urlecommerceimg,'') ImagemUrl, - 0 PrecoAtacado, - - 0 PrecoVarejo, - - round(sum(pemp.medvdiaforapromoc),3) MDV, - 0 Margem, - - 0 MargemAtacado, - 'Sem valor' ClasseAbastecimento, - 'UN' DescricaoEmbalagem, - 1 QuantidadeEmbalagem, - sum(pemp.estqloja) EstoqueDisponivel, - - sum(NVL(pemp.estqtroca,0)) EstoqueTroca, - sum(NVL(pemp.qtdpedrectransito,0)) EstoqueTransito, - sum(pemp.qtdpendpedcompra) EstoqueFuturo, - sum(NVL(pemp.qtdreservadavda,0)) + sum(nvl(pemp.estqoutro,0)) EstoqueReservado, - case - when round(sum(pemp.medvdiaforapromoc),3) = 0 then 1 - else trunc(sum(pemp.estqloja) / round(sum(pemp.medvdiaforapromoc),3),3) - end DDV, - - 0 DDVMinimo, - 0 DDVMaximo, - 'GERAL' FormaAbastecimento, - - 'GERAL' Situacao, - pempcd.estqdeposito - nvl(pempcd.qtdreservadavda,0) EstoqueDisponivelCD, - pempcd.qtdpendpedcompra EstoqueFuturoCD, - - null DATAULTIMAENTRADA, - null DATAULTIMAVENDA, - 0 custoliquido, - 'A' STATUSVENDA, - --case when (pemp.statuscompra='A') then 1 else 0 end STATUSCOMPRA, - 'A' statuscompra, - 0 QtdeAtacado, - 0 IdBase, - 'GERAL' TIPOTROCA, - 0 QUANTIDADECOMPRA, - 0 RESERVA, - 0 VALIDADEDIAS, - 0 margemlucrodivisao, - 0 PrecoPromoc, - 0 PrecoNormal, - 0 PrecoMeuMambo, - 0 MargemMeuMambo, - 0 MargemNormal, - 0 MdvPromoc, - 0 VLRPRECOVENCTOPROX, - NULL dtavalidade - -from max_divisao md - -inner join max_empresa me - on me.nrodivisao = md.nrodivisao - and me.status = 'A' - and me.dtainiciomovestoque <= trunc(sysdate)-1 - and me.nrodivisao in (2) - and me.nroempresa >= 202 - and me.nroempresa < 290 - and me.nroempresa not in (291,298,910,911,920,930,931,940,980) - -inner join mad_segmento seg - on md.nrodivisao = me.nrodivisao -and me.nrosegmentoprinc = seg.nrosegmento - -inner join mrl_produtoempresa pemp - on pemp.nroempresa = me.nroempresa - -left join mrl_produtoempresa pempcd - on pempcd.seqproduto = pemp.seqproduto -and pempcd.nroempresa in (979) - -left join map_classeabastec mcab -on mcab.classeabastqtd = pemp.classeabastqtd -and mcab.nroempresa = pemp.nroempresa -and mcab.classeabastvlr = pemp.classeabastvlr - -inner join map_produto pro - on pro.seqproduto = pemp.seqproduto - -inner join map_famdivisao mfdv - on mfdv.seqfamilia = pro.seqfamilia -and mfdv.nrodivisao = me.nrodivisao - -inner join max_comprador mco - on mco.seqcomprador = mfdv.seqcomprador - -left join tb_comprador tcomp - on tcomp.COMPRADOR = mco.comprador - -left join map_produtoimagem mapi - on mapi.seqproduto = pro.seqproduto -and mapi.indpricipal = 'S' - -inner join mrl_prodempseg pes - on pes.seqproduto = pemp.seqproduto -and pes.nroempresa = pemp.nroempresa -and pes.nrosegmento = seg.nrosegmento -and pes.qtdembalagem = 1 - -inner join mrl_prodempseg pes2 - on pes2.nroempresa = pes.nroempresa -and pes2.seqproduto = pes.seqproduto -and pes2.nrosegmento = pes.nrosegmento - -left join mrl_prodempseg pes3 - on pes3.seqproduto = pemp.seqproduto -and pes3.nroempresa = pemp.nroempresa -and pes3.nrosegmento = 15 -and pes3.qtdembalagem = 1 - -inner join map_famembalagem emb - on emb.seqfamilia = pro.seqfamilia -and emb.qtdembalagem = 1 - -left join (select mffTemp.Seqfamilia, - mfdvTemp.Nrodivisao, - mffTemp.indindenizavaria, - mfdvTemp.pzomedvisitarep, - mfdvTemp.pzomedentrega, - mfdvTemp.pzomedatraso, - gp.fantasia fornecedor - - from map_famfornec mffTemp - - inner join ge_pessoa gp - on gp.seqpessoa = mffTemp.Seqfornecedor - - left join maf_fornecdivisao mfdvTemp - on mfdvTemp.Seqfornecedor = mffTemp.Seqfornecedor - and mffTemp.Principal = 'S' - - ) mff - on mff.seqfamilia = pro.seqfamilia -and mff.nrodivisao = md.nrodivisao - -where 1=1 ---and pemp.SEQPRODUTO = 136011 ---and pemp.nroempresa = 202 -and md.nrodivisao in (2,4) -and (${args.codproduto} is null or pemp.seqproduto = ${args.codproduto}) - -and pes2.qtdembalagem = (select nvl(max(pes3.qtdembalagem), 1) - from mrl_prodempseg pes3 - where pes3.nroempresa = pes.nroempresa - and pes3.seqproduto = pes.seqproduto - and pes3.nrosegmento = pes.nrosegmento - and pes3.statusvenda = 'A') - -group by tcomp.comprador, - nvl(mff.fornecedor, 'N/A'), - consinco.gmgbfcategoriafamilian1(pro.seqfamilia, me.nrodivisao, 1), - pro.seqproduto, - initcap(pro.desccompleta), - nvl(mapi.urlecommerceimg,''), - pempcd.estqdeposito, - nvl(pempcd.qtdreservadavda,0), - pempcd.qtdpendpedcompra - -union all - -select pemp.nroempresa, + select pemp.nroempresa, tcomp.comprador, nvl(mff.fornecedor, 'N/A') fornecedor, consinco.gmgbfcategoriafamilian1(pro.seqfamilia, me.nrodivisao, 1) categoria, @@ -697,11 +528,7 @@ where 1=1 --and pemp.nroempresa = 202 and md.nrodivisao in (2,4) and (${args.codproduto} is null or pemp.seqproduto = ${args.codproduto}) -and (${args.ctx_user_companies} is null or me.nroempresa in ( - select to_number(regexp_substr(:${args.ctx_user_companies}, '[^,]+', 1, level)) - from dual - connect by regexp_substr(:${args.ctx_user_companies}, '[^,]+', 1, level) is not null -)) +and (${args.ctx_user_companies} is null or me.nroempresa in ${args.ctx_user_companies}) and pes2.qtdembalagem = (select nvl(max(pes3.qtdembalagem), 1) from mrl_prodempseg pes3