->
$query = "SELECT SQL_CALC_FOUND_ROWS p.product_id,m.naam AS maatschappij,p.naam,p.standaardpremie,p.type,
v2.p10 AS vergoeding_gvs_pct,
v2.p200 AS vergoeding_gvs_max_per_jaar,
v2.tekst AS vergoeding_gvs_opmerking,
v3.p10 AS vergoeding_eigen_bijdrage_gvs_pct,
v3.p200 AS vergoeding_eigen_bijdrage_gvs_max_per_jaar,
v3.tekst AS vergoeding_eigen_bijdrage_gvs_opmerking,
v4.p10 AS vergoeding_overig_pct,
v4.p200 AS vergoeding_overig_max_per_jaar,
v4.tekst AS vergoeding_overig_opmerking,
v5.p10 AS vergoeding_zelfzorg_pct,
v5.p200 AS vergoeding_zelfzorg_max_per_jaar,
v5.tekst AS vergoeding_zelfzorg_opmerking,
a.naam AS artikel,
f.naam AS fabrikant,
a.rvg1,
a.gvs,
pr.preferent,
a.receptplichtig,
a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365) AS kosten,
a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365) - # je betaald de prijs minus de vergoeding
IF(a.gvs='ja',
IF(pr.preferent='nee',
0, # niet-preferentie middelen worden niet vergoed
GREATEST(
LEAST(
a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*(IFNULL(v2.p10,0)/100),
IFNULL(v2.p200,1000000000)
) - (
a.eigen_bijdrage/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365) -
LEAST(
a.eigen_bijdrage/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*(IFNULL(v3.p10,0)/100),
IFNULL(v3.p200,1000000000)
)
), # Vergoeding door basis met aftrek eigen bijdrage (eigen bijdrage kan evt. ook weer vergoed worden door aanvullende verzekering)
0) # nooit een negatieve vergoeding (veroorzaakt door aftrekken eigen bijdrage)
),
IF(a.receptplichtig='ja',
LEAST(
a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*IFNULL(v4.p10,0)/100,
IFNULL(v4.p200,1000000000)
), # evt. vergoeding van niet GVS-middelen die receptprichtig zijn
LEAST(
a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*IFNULL(v5.p10,0)/100,
IFNULL(v5.p200,1000000000)
) # evt. vergoeding van niet GVS-middelen die niet receptprichtig zijn
)
) AS zelf_betalen,
IF(a.gvs='ja',
IF(pr.preferent='nee',
0, # niet-preferentie middelen worden niet vergoed
LEAST(
a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*IFNULL(v2.p10,0)/100,
IFNULL(v2.p200,1000000000)
) - (a.eigen_bijdrage/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365))
),
0) AS vergoeding_basis,
IF(a.gvs='ja',
IF(pr.preferent='nee',
0, # niet-preferentie middelen worden niet vergoed
GREATEST(
LEAST(a.eigen_bijdrage/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*IFNULL(v3.p10,0)/100,IFNULL(v3.p200,1000000000)), # eigen bijdrage kan evt. ook weer vergoed worden door aanvullende verzekering
0 # nooit een negatieve vergoeding (veroorzaakt door aftrekken eigen bijdrage)
)),
IF(a.receptplichtig='ja',
LEAST(a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*IFNULL(v4.p10,0)/100,IFNULL(v4.p200,1000000000)), # evt. vergoeding van niet GVS-middelen die receptplichtig zijn
LEAST(a.prijs/a.inkoopaantal*IFNULL({AANTAL},a.ddd*365)*IFNULL(v5.p10,0)/100,IFNULL(v5.p200,1000000000)) # evt. vergoeding van niet GVS-middelen die niet receptplichtig zijn
)
) AS vergoeding_av
FROM product p
INNER JOIN maatschappij m ON m.maatschappij_id = p.maatschappij_id
LEFT JOIN vwd_sheet_label v2 ON v2.vwd_sheet_id = p.vwd_sheet_id AND v2.vwd_label_id = ".$labels['vergoeding_gvs']."
LEFT JOIN vwd_sheet_label v3 ON v3.vwd_sheet_id = p.vwd_sheet_id AND v3.vwd_label_id = ".$labels['vergoeding_eigen_bijdrage_gvs']."
LEFT JOIN vwd_sheet_label v4 ON v4.vwd_sheet_id = p.vwd_sheet_id AND v4.vwd_label_id = ".$labels['vergoeding_overig']."
LEFT JOIN vwd_sheet_label v5 ON v5.vwd_sheet_id = p.vwd_sheet_id AND v5.vwd_label_id = ".$labels['vergoeding_zelfzorg']."
JOIN med_artikel a ON a.artikel_id IN(".$this->dbImplode($data['artikel_id']).")
INNER JOIN med_fabrikant f ON a.fabrikant_id = f.fabrikant_id
INNER JOIN med_medicijn mm ON mm.medicijn_id = a.medicijn_id
LEFT JOIN med_preferent pr ON p.maatschappij_id = pr.maatschappij_id AND a.artikel_id = pr.artikel_id
WHERE p.maatschappij_id = ".(int)$_SESSION['medicijnen']['verzekeraar']."
AND p.actief = 'ja'
AND p.tonen_medicijnvergoedingen = 'ja'
ORDER BY {ORDER_BY}
LIMIT {LIMIT_START},30";