-- Resumo dos debitos gerais dos clientes Sintetico
-- DadosSintetico
SELECT	p.codigo AS cod_credor_devedor,
	p.nome AS credor_devedor,
	SUM(tf.valor_principal) AS total_bruto,
	SUM(tf.valor_principal + tf.acrescimo_financeiro + tf.juros_cobranca + tf.multa_cobranca - tf.valor_taxa_administracao - tf.tarifa_transacao - tf.desconto_financeiro - tf.desconto_cobranca - tf.retencao_tributaria) AS total_liquido,
	SUM(CASE WHEN (CURRENT_DATE < tf.data_vencimento) THEN (tf.valor_principal + tf.acrescimo_financeiro + tf.juros_cobranca + tf.multa_cobranca - tf.valor_taxa_administracao - tf.tarifa_transacao - tf.desconto_financeiro - tf.desconto_cobranca - tf.retencao_tributaria) ELSE 0 END)AS a_vencer,
    SUM(CASE WHEN ((CURRENT_DATE < tf.data_vencimento + INTERVAL '30 DAYS') AND (CURRENT_DATE >= tf.data_vencimento)) THEN (tf.valor_principal + tf.acrescimo_financeiro + tf.juros_cobranca + tf.multa_cobranca - tf.valor_taxa_administracao - tf.tarifa_transacao - tf.desconto_financeiro - tf.desconto_cobranca - tf.retencao_tributaria) ELSE 0 END) AS vencido_30_dias,
    SUM(CASE WHEN ((CURRENT_DATE < tf.data_vencimento + INTERVAL '60 DAYS') AND (CURRENT_DATE >= tf.data_vencimento + INTERVAL '30 DAYS')) THEN (tf.valor_principal + tf.acrescimo_financeiro + tf.juros_cobranca + tf.multa_cobranca - tf.valor_taxa_administracao - tf.tarifa_transacao - tf.desconto_financeiro - tf.desconto_cobranca - tf.retencao_tributaria) ELSE 0 END) AS vencido_60_dias,
    SUM(CASE WHEN ((CURRENT_DATE < tf.data_vencimento + INTERVAL '90 DAYS') AND (CURRENT_DATE >= tf.data_vencimento + INTERVAL '60 DAYS')) THEN (tf.valor_principal + tf.acrescimo_financeiro + tf.juros_cobranca + tf.multa_cobranca - tf.valor_taxa_administracao - tf.tarifa_transacao - tf.desconto_financeiro - tf.desconto_cobranca - tf.retencao_tributaria) ELSE 0 END) AS vencido_90_dias,
    SUM(CASE WHEN ((CURRENT_DATE > tf.data_vencimento + INTERVAL '90 DAYS')) THEN (tf.valor_principal + tf.acrescimo_financeiro + tf.juros_cobranca + tf.multa_cobranca - tf.valor_taxa_administracao - tf.tarifa_transacao - tf.desconto_financeiro - tf.desconto_cobranca - tf.retencao_tributaria) ELSE 0 END) AS vencido_mais_90_dias
FROM	titulo_financeiro AS tf
	INNER JOIN pessoa AS p ON (p.id_pessoa = tf.id_credor_devedor)
WHERE	tf.id_empresa IN (:IdEmpresaMultSlc)
AND	tf.data_emissao <= CURRENT_DATE
AND	tf.situacao IN (1, 9) -- 1-Aberto ou 9-Rascunho
AND	tf.natureza_titulo IN (201) -- 201 A Prazo
AND	tf.pagar_receber = 2 -- 2 Titulo a receber
AND	(:IdDevedorNO = -1 OR tf.id_credor_devedor = :IdDevedorNO)
GROUP BY p.codigo,
	p.nome
ORDER BY p.nome