From 19cf14258f541061411126b6c49bb32202964b4d Mon Sep 17 00:00:00 2001 From: Maykel Geerdink Date: Wed, 10 May 2017 11:23:44 +0000 Subject: [PATCH] KFHT#39552: Werkvergunningen: Notificaties nieuwe melding voor gebouwbeh./veiligheidskundig. svn path=/Database/trunk/; revision=33777 --- BES/BES_PAC.SRC | 1 + MLD/MLD_PAC.SRC | 1 + RES/RES_PAC.SRC | 28 ++++++++++++++++------------ 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/BES/BES_PAC.SRC b/BES/BES_PAC.SRC index 57df2261..ad7107d7 100644 --- a/BES/BES_PAC.SRC +++ b/BES/BES_PAC.SRC @@ -1448,6 +1448,7 @@ AS WHERE aa.prs_afdeling_key = lafd_key AND aa.niveau = g.fac_gebruiker_prs_level_write)))) -- in ASP: if (params.loc_key>0) + -- Bij bestelling wordt afleveradres ingevuld die is gekoppeld aan alg_locatie_key. Dus op locatie niveau checken is hier voldoende. AND (g.fac_gebruiker_alg_level_write = -1 OR (g.fac_gebruiker_alg_level_write < 9 AND lloc_key IN diff --git a/MLD/MLD_PAC.SRC b/MLD/MLD_PAC.SRC index c1fa9c30..490b08d1 100644 --- a/MLD/MLD_PAC.SRC +++ b/MLD/MLD_PAC.SRC @@ -671,6 +671,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS WHERE aa.prs_afdeling_key = lafd_key AND aa.niveau = g.fac_gebruiker_prs_level_write)))) -- in ASP: if (params.loc_key>0, hier is lloc_key dan NULL en gaat het ook goed) + -- Afhankelijk op welk niveau de plaatsselector is ingevuld moet hier op dat niveau gechecked worden. AND (g.fac_gebruiker_alg_level_write = -1 OR (g.fac_gebruiker_alg_level_write < 9 AND (CASE diff --git a/RES/RES_PAC.SRC b/RES/RES_PAC.SRC index 79d28b4f..cbc2904b 100644 --- a/RES/RES_PAC.SRC +++ b/RES/RES_PAC.SRC @@ -1859,6 +1859,7 @@ AS PROCEDURE notifybackoffice (prsvkey IN NUMBER, pcode IN VARCHAR2) AS lloc_key alg_locatie.alg_locatie_key%TYPE; + lroom_key alg_ruimte.alg_ruimte_key%TYPE; lafd_key prs_perslid.prs_afdeling_key%TYPE; ldisc_key res_disc_params.res_ins_discipline_key%TYPE; loms2bo fac_srtnotificatie.fac_srtnotificatie_oms%TYPE; @@ -1878,16 +1879,21 @@ AS SELECT rg.alg_locatie_key , rg.res_discipline_key , p.prs_afdeling_key + , rar.alg_ruimte_key INTO lloc_key , ldisc_key , lafd_key + , lroom_key FROM res_v_res_ruimte_gegevens rg , res_ruimte_opstelling ro , res_rsv_ruimte rr , prs_perslid p + , res_alg_ruimte rar WHERE rg.res_ruimte_key = ro.res_ruimte_key AND rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key AND rr.res_rsv_ruimte_host_key = p.prs_perslid_key + AND rg.res_ruimte_key = rar.res_ruimte_key + AND rar.res_alg_ruimte_verwijder IS NULL AND TRUNC(rr.res_rsv_ruimte_van) = TRUNC(sysdate) AND rr.res_status_bo_key = 2 AND rr.res_rsv_ruimte_key = prsvkey; @@ -1945,18 +1951,16 @@ AS ) ) ) - AND ( g.fac_gebruiker_alg_level_write = -1 - OR ( g.fac_gebruiker_alg_level_write < 9 - AND lloc_key IN - (SELECT ml.alg_locatie_key - FROM fac_v_my_locations ml - WHERE ml.prs_perslid_key = p.prs_perslid_key - AND ml.niveau = g.fac_gebruiker_alg_level_write - ) - ) - ) - AND fac_functie_code = lfunctiecode - ) + -- in ASP: if (params.loc_key>0) + -- Bij ruimte reservering wordt altijd een ruimte ingevuld die is gekoppeld aan alg_ruimte_key. Dus hier op ruimte niveau checken. + AND (g.fac_gebruiker_alg_level_write = -1 + OR (g.fac_gebruiker_alg_level_write < 9 + AND lroom_key IN + (SELECT alg_ruimte_key + FROM fac_v_my_rooms + WHERE prs_perslid_key = p.prs_perslid_key + AND niveau = fac_gebruiker_alg_level_write))) + AND fac_functie_code = lfunctiecode) LOOP fac.putnotificationsrtprio (NULL, boer.prs_perslid_key,