SELECT
pa.ops_payment_type_code,
pt.short_name AS application_payment_type,
count(*) AS cnt,
min(pa.appeal_date) AS min_appeal_date,
max(pa.appeal_date) AS max_appeal_date,
max(pa.registration) AS max_registration
FROM ourpension.ops_pension_assignment_application pa
LEFT JOIN ourpension.ops_payment_type pt
ON pt.code = pa.ops_payment_type_code
WHERE pa.registration >= CURRENT_DATE - INTERVAL '6 months'
GROUP BY
pa.ops_payment_type_code,
pt.short_name
ORDER BY
max(pa.registration) DESC;
SELECT
pa.ops_payment_type_code,
pt.short_name AS application_payment_type,
t.decision_payment_type_code,
dpt.short_name AS decision_payment_type,
dpt.name AS decision_payment_type_name,
count(*) AS cnt,
min(t.date) AS min_decision_date,
max(t.date) AS max_decision_date
FROM back_office.ops_payment_decision t
JOIN ourpension.ops_pension_assignment_application pa
ON pa.id = t.ops_pension_assignment_application_id
LEFT JOIN ourpension.ops_payment_type pt
ON pt.code = pa.ops_payment_type_code
LEFT JOIN ourpension.decision_payment_type dpt
ON dpt.code = t.decision_payment_type_code
WHERE t.date >= CURRENT_DATE - INTERVAL '6 months'
GROUP BY
pa.ops_payment_type_code,
pt.short_name,
t.decision_payment_type_code,
dpt.short_name,
dpt.name
ORDER BY
max(t.date) DESC;