COALESCE(
cp.payment_term,
(
SELECT pt.max_term_to
FROM prod_line.pens_product_param_pl p_term
JOIN prod_line.param_pl def_term
ON def_term.id = p_term.param_pl_id
JOIN prod_line.table_param_pl_payment_term pt
ON pt.pens_product_param_pl_id = p_term.id
WHERE p_term.pens_product_id = pp.id
AND def_term.brief = 'СрокВыплаты'
AND pt.max_term_to IS NOT NULL
AND (
pt.app_date_from IS NULL
OR c.date >= pt.app_date_from
)
AND (
pt.app_date_to IS NULL
OR c.date <= pt.app_date_to
)
ORDER BY pt.app_date_from DESC NULLS LAST, pt.id DESC
LIMIT 1
)
) AS payment_term,