SELECT SUM(CAST(d.data ->'nfe'->'infNFe'->'cobr'->'fat'->>'vliq' AS NUMERIC)) AS total_valor_liquido, SUM(CAST(d.data ->'nfe'->'infNFe'->'cobr'->'fat'->>'vdesc' AS NUMERIC)) AS total_valor_desconto, SUM(CAST(d.data ->'nfe'->'infNFe'->'cobr'->'fat'->>'vorig' AS NUMERIC)) AS total_valor_origem, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vnf' AS NUMERIC)) AS total_vnf, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vbc' AS NUMERIC)) AS total_vbc, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vbcst' AS NUMERIC)) AS total_vbcst, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vst' AS NUMERIC)) AS total_vst, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vprod' AS NUMERIC)) AS total_vprod, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vipi' AS NUMERIC)) AS total_vipi, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vpis' AS NUMERIC)) AS total_vpis, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vcofins' AS NUMERIC)) AS total_vcofins, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'voutro' AS NUMERIC)) AS total_voutro, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vicms' AS NUMERIC)) AS total_vicms, SUM(CAST(d.data ->'nfe'->'infNFe'->'total'->'icmsTot'->>'vfrete' AS NUMERIC)) AS total_frete FROM document d INNER JOIN document_status ds ON d.key = ds.key and d.cnpj_issuer = ds.cnpj_issuer and d.protocol = ds.protocol and d.nsu = ds.nsu and d.type = ds.type WHERE d.cnpj_addressee = ? and d.type IN (?, ?, ?) and d.key in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) and d.data_emissao between ? and ? and ( COALESCE(( SELECT CASE WHEN ds.manifestation IS NOT NULL THEN ds.manifestation WHEN (item.historico ->> 'eventCode') = ANY (ARRAY['210200', '210210', '210220', '210240']) THEN (item.historico ->> 'eventCode') WHEN regexp_replace(item.historico ->> 'description', '[^0-9]', '', 'gi') = ANY (ARRAY['210200', '210210', '210220', '210240']) THEN regexp_replace(item.historico ->> 'description', '[^0-9]', '', 'gi') ELSE NULL END AS case FROM jsonb_array_elements(ds.history) WITH ORDINALITY item(historico, ordinality) WHERE (item.historico ->> 'eventType') = ANY (ARRAY['NFE_EVENT_MANIFESTATION', 'NFE_EVENT']) ORDER BY (item.historico ->> 'eventAt') DESC LIMIT 1), ds.manifestation) is null OR COALESCE(( SELECT CASE WHEN ds.manifestation IS NOT NULL THEN ds.manifestation WHEN (item.historico ->> 'eventCode') = ANY (ARRAY['210200', '210210', '210220', '210240']) THEN (item.historico ->> 'eventCode') WHEN regexp_replace(item.historico ->> 'description', '[^0-9]', '', 'gi') = ANY (ARRAY['210200', '210210', '210220', '210240']) THEN regexp_replace(item.historico ->> 'description', '[^0-9]', '', 'gi') ELSE NULL END AS case FROM jsonb_array_elements(ds.history) WITH ORDINALITY item(historico, ordinality) WHERE (item.historico ->> 'eventType') = ANY (ARRAY['NFE_EVENT_MANIFESTATION', 'NFE_EVENT']) ORDER BY (item.historico ->> 'eventAt') DESC LIMIT 1), ds.manifestation) IN (?) ) |
66
|
66
|
0
|
|
0.00
|