-- Customer specific once-script ARAI.
--
-- (c) 2013 SG|facilitor bv 
-- $Revision$ 
-- $Id$
--
-- Support: +31 53 4800700

SET ECHO ON
SPOOL arai13.lst
SET DEFINE OFF

------------------------------------------------------------------------------------------------------------------------------------------
---- ARAI#27361: Klachten Organisatoren



CREATE TABLE arai_imp_events (
   Evenement VARCHAR2 (256),
   EventID VARCHAR2 (20),
   Bedrijfsnaam VARCHAR2 (256),
   BedrijfsnaamID VARCHAR2 (20),
   BIllto VARCHAR2 (256),
   BilltoID VARCHAR2 (20),
   EventDatumVan VARCHAR(50),
   EventDatumTot VARCHAR(50),
   EventOpbouw VARCHAR(50),
   EventAfbouw VARCHAR(50)
);


CREATE TABLE arai_events (
   arai_events_key
        NUMBER(10)   
        CONSTRAINT arai_k_arai_events_key PRIMARY KEY,
   Evenement VARCHAR2 (256),
   EventID VARCHAR2 (20),
   Bedrijfsnaam VARCHAR2 (256),
   BedrijfsnaamID VARCHAR2 (20),
   BIllto VARCHAR2 (256),
   BilltoID VARCHAR2 (20),
   EventDatumVan DATE,
   EventDatumTot DATE,
   EventOpbouw DATE,
   EventAfbouw DATE
);

CREATE SEQUENCE arai_s_arai_events_key MINVALUE 1;

CREATE OR REPLACE TRIGGER arai_t_arai_events_B_IU
BEFORE INSERT OR UPDATE ON arai_events
FOR EACH ROW
BEGIN
    IF :new.arai_events_key IS NULL
    THEN SELECT arai_s_arai_events_key.nextval INTO :new.arai_events_key FROM DUAL;
    END IF;
END;
/

INSERT INTO fac_import_app
            (fac_import_app_code, fac_import_app_oms,
             fac_import_app_folder, fac_import_app_files,
             fac_functie_key, fac_import_app_prefix)
   SELECT 'EVENTS', 'Import eventsgegevens vanuit EMBS',
          'd:\Apps\Facilitor\ftp_sites\LocalUser\ARAIFtp\EBMS', 'FMIS_ORG.TXT',
          fac_functie_key, 'ARAI'
     FROM fac_functie
    WHERE fac_functie_code = 'WEB_PRSSYS';


--- Rapport met key 141 hoeft niet meer, kan komen te vervallen. RAI werkt alleen met variant B (Sylvia), dus deze mag weg.
DELETE fac_usrrap
WHERE fac_usrrap_key = 141;

-- Eerst even een dummy view zodat enkele insert hieronder wel lukken (om ORA-constraints te voorkomen)
CREATE OR REPLACE VIEW arai_v_rap_mld_tot_klachten_2
AS SELECT * FROM DUAL;


-- Rapport met key 181 (Klachten variant B), wordt het DEFINITIEVE GEINTEGREERDE KLACHTENMANINFO RAPPORT,
-- hernoemen we nu naar "Klachten", nieuwe TOTAAL-view (EXP + ORG + BEZ), en de autorisatie wijzigen van WEB_USER05 -> WEB_MLDBAC
-- vanwege ook integratie van beide rapporten (klachten exp + org + bez), laten we het afhangen van welke vakgroepen je ziet, dus als je alleen exposant-rechten hebt, zie je die,
-- heb je alleen organisatie rechten dan zie je die, heb je ze beide, dan zie je beide. Zo ook met bezoekers-klachten erbij.

UPDATE fac_usrrap
SET fac_usrrap_omschrijving = 'Klachten: detailgegevens',
    fac_usrrap_view_name = 'arai_v_rap_mld_tot_klachten_2',
    fac_functie_key = (SELECT fac_functie_key FROM fac_functie WHERE fac_functie_code = 'WEB_MLDBAC')
WHERE fac_usrrap_key = 181;


-- Bijbehorende menutaak is nu op basis van WEB_USER10, en de URL ook net wat anders:
-- URL was : appl/fac/fac_usrrap.asp?fcode=WEB_USER05 wordt appl/fac/fac_usrrap.asp?rap_name=arai_v_rap_mld_tot_klachten_2
-- fac_functie_key WAS WEB_USER05, wordt WEB_USER10
UPDATE fac_menu
SET fac_menu_alturl = 'appl/fac/fac_usrrap.asp?rap_name=arai_v_rap_mld_tot_klachten_2',
    fac_functie_key = (SELECT fac_functie_key FROM fac_functie WHERE fac_functie_code = 'WEB_USER10')
WHERE fac_menu_key = 464;

--------------------- Andere menutaken van klachten
---

-- Bestaande Menutaak voor nieuwe klacht (exposant): tekst aanpassen
UPDATE fac_menu
SET fac_menu_altlabel = '> Nieuwe klacht exposant'
WHERE fac_menu_key = 462;

-- Nieuwe menutaak voor > Nieuwe klacht organisator
-- srtdisc=21 is nieuwe meldingtype voor organisator
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_functie_key)
SELECT 3320, '> Nieuwe klacht organisator', 'appl/mld/mld_melding.asp?urole=fe' || '&' || 'srtdisc=21', 1, fac_functie_key
FROM fac_functie WHERE fac_functie_code = 'WEB_USER09';

-- Bestaande Menutaak voor afhandelen exposant klachten: tekst aanpassen
UPDATE fac_menu
SET fac_menu_altlabel = 'Verwerken klachten exposant'
WHERE fac_menu_key = 463;

-- Nieuwe menutaak voor afhandelen organsiator
-- srtdisc=21 is nieuwe meldingtype voor organisator
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_functie_key)
SELECT 3352, 'Verwerken klachten organisator', 'appl/mld/mld_search.asp?urole=bo' || '&' || 'srtdisc=21', 1, fac_functie_key
FROM fac_functie WHERE fac_functie_code = 'WEB_USER09';


-- Nieuwe menutaak voor > Nieuwe klacht bezoeker
-- srtdisc=22 is nieuwe meldingtype voor bezoeker
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_functie_key)
SELECT 3330, '> Nieuwe klacht bezoeker', 'appl/mld/mld_melding.asp?urole=fe' || '&' || 'srtdisc=22', 1, fac_functie_key
FROM fac_functie WHERE fac_functie_code = 'WEB_USER11';

-- Nieuwe menutaak voor afhandelen bezoekersklachten
-- srtdisc=22 is nieuwe meldingtype voor organisator
INSERT INTO fac_menu (fac_menu_volgnr, fac_menu_altlabel, fac_menu_alturl, fac_menu_altgroep, fac_functie_key)
SELECT 3354, 'Verwerken klachten bezoeker', 'appl/mld/mld_search.asp?urole=bo' || '&' || 'srtdisc=22', 1, fac_functie_key
FROM fac_functie WHERE fac_functie_code = 'WEB_USER11';


-------
-- Ten behoeve van aanroep vanuit www.rai.nl, 2 bookmarks met 2 bijbehorende gebruikers (perslid) voor taal = NL en taal = EN.

-------
-- INSERT dummy/SYSTEM gebruiker met taal = NL (perslid onder afdeling facilitaire zaken) voor toegang van scherm vanuit www.rai.nl (bookmark-URL)
INSERT INTO PRS_PERSLID (prs_srtperslid_key, prs_afdeling_key, prs_perslid_naam, prs_perslid_oslogin, prs_perslid_lang, prs_perslid_apikey)
SELECT 1, 96, 'www.rai.nl', '_RAI_NL', 'NL' ,'KLACHT.RAI.NL' FROM DUAL;

INSERT INTO FAC_BOOKMARK (fac_bookmark_id, fac_bookmark_naam, fac_bookmark_path, fac_bookmark_query, prs_perslid_key, prs_perslid_key_auth)
SELECT 'YxBMFoMqCVwLahCm','KLACHT.RAI.NL', 'appl/mld/mld_melding.asp', 'urole=fe' || '&' || 'srtdisc=22', 4, prs_perslid_key
FROM prs_perslid
WHERE prs_perslid_key = (SELECT MAX (prs_perslid_key) FROM prs_perslid);

DELETE FROM fac_gebruikersgroep
WHERE prs_perslid_key =(SELECT MAX (prs_perslid_key) FROM prs_perslid);

-- INSERT autorisatiegroep 
INSERT INTO fac_gebruikersgroep (fac_groep_key, prs_perslid_key)
SELECT 764, MAX (prs_perslid_key) FROM prs_perslid;


-- INSERT dummy/SYSTEM gebruiker met taal = EN (perslid onder afdeling facilitaire zaken) voor toegang van scherm vanuit www.rai.nl (bookmark-URL)
INSERT INTO PRS_PERSLID (prs_srtperslid_key, prs_afdeling_key, prs_perslid_naam, prs_perslid_oslogin, prs_perslid_lang, prs_perslid_apikey)
SELECT 1, 96, 'www.rai.nl', '_RAI_EN', 'EN', 'KLACHT.RAI.EN' FROM DUAL;

INSERT INTO FAC_BOOKMARK (fac_bookmark_id, fac_bookmark_naam, fac_bookmark_path, fac_bookmark_query, prs_perslid_key, prs_perslid_key_auth)
SELECT 'BIjPPmnCmDxyIhka','KLACHT.RAI.EN', 'appl/mld/mld_melding.asp', 'urole=fe' || '&' || 'srtdisc=22', 4, prs_perslid_key
FROM prs_perslid
WHERE prs_perslid_key = (SELECT MAX (prs_perslid_key) FROM prs_perslid);

DELETE FROM fac_gebruikersgroep
WHERE prs_perslid_key =(SELECT MAX (prs_perslid_key) FROM prs_perslid);

INSERT INTO fac_gebruikersgroep (fac_groep_key, prs_perslid_key)
SELECT 764, MAX (prs_perslid_key) FROM prs_perslid;

------
-- Super handig rapport tbv check of alle klacht->dienst->bedrijf correct is geimplementeerd.


-- Eerst even een dummy view zodat  insert hieronder wel lukt (om ORA-constraints te voorkomen)
CREATE OR REPLACE VIEW arai_v_rap_mlddienstbedrijf
AS SELECT * FROM DUAL;

INSERT INTO fac_usrrap
            (fac_usrrap_omschrijving,
             fac_usrrap_view_name,
             fac_usrrap_in_huidige_locatie,
             fac_usrrap_template,
             fac_usrrap_macro,
             fac_usrrap_vraagbegindatum,
             fac_usrrap_vraageinddatum,
             fac_usrrap_functie,
             fac_usrrap_info,
             fac_functie_key,
             fac_usrrap_autorefresh
            )
    SELECT  'BEHEER: Overzicht melding-dienst-bedrijf',
             'arai_v_rap_mlddienstbedrijf',
             NULL,
             NULL,
             NULL,
             0,
             0,
             0,
             'Overzicht om te checken of de combinaties melding-dienst-bedrijf goed staan',
             fac_functie_key,
             0
     FROM fac_functie WHERE fac_functie_code = 'WEB_PRSSYS';

------------------------------------------------------------------------------------------------------------------------------------------
---- ARAI#27854: RTM Energie: wijziging in grafieken en halbezetting.


-- 1. WARMTEVERBRUIK bestaat uit
-- 1a. Gas (voorheen bij Gasverbruik)
-- 1b. Stadw (was voorheen warmte)
-- 1c. WKK (nieuw)
-- 1d. Totaal (nieuw)

----
-- 1a. Gas (voorheen bij Gasverbruik)
-- ins_deel 'Gas' (ins_deel_key = 242) verplaatsen uit gasverbruik naar warmteverbruik, doen we dmv wijziging van ins_srtdeel_key(!). 
-- Onderliggende kenmerk-waarden gekoppeld aan objectsoort hoofdgasmeter worden niet aan nieuwe objectsoort stadsverwarming geknoopt 
-- (dus ins_kenmerkdeel niet converteren, had wel gekund, maar voegt nu niets toe.)
-- Sterker nog: de kenmerk-waarden setpoint en kleur komen te vervallen, dus dat gaan we doen door de OPC-id's van setpoint en kleur bij 'Gas' te resetten (op NULL).

UPDATE ins_deel
SET ins_srtdeel_key = 63, 
    ins_deel_x = 1
WHERE ins_deel_key = 242;

-- Reset OPC-ID's Setpoint (key=62) en kleur (key=63) bij object GAS: alleen bij totaal relevant: zie 1d).
UPDATE ins_kenmerkdeel
SET ins_kenmerkdeel_waarde = NULL
WHERE ins_deel_key = 242
AND ins_kenmerk_key IN (62, 63);

----
-- 1b. Stadw (was voorheen warmte)
UPDATE ins_deel
SET ins_deel_omschrijving = 'Stadw',
    ins_deel_x = 2
WHERE ins_deel_key = 246;

-- Reset OPC-ID's Setpoint (key=62) en kleur (key=63) bij object Stadw: alleen bij totaal relevant: zie 1d).
UPDATE ins_kenmerkdeel
SET ins_kenmerkdeel_waarde = NULL
WHERE ins_deel_key = 246
AND ins_kenmerk_key IN (62, 63);
-- Reset bijbehorende Setpointwaarde (key=72) en kleurwaarde (key=73) bij object Stadw.
UPDATE ins_kenmerkdeel
SET ins_kenmerkdeel_verwijder = SYSDATE
WHERE ins_deel_key = 246
AND ins_kenmerk_key IN (72, 73)
AND ins_kenmerkdeel_verwijder IS NULL;


-- 1c. WKK (nieuw)
-- Nieuw object met naam WKK
INSERT INTO ins_deel (ins_deel_module, ins_srtdeel_key, ins_alg_ruimte_key, ins_alg_ruimte_type, ins_deel_aantal, ins_deel_omschrijving, ins_discipline_key, ins_alg_locatie_key, ins_deel_x)
VALUES('INS', 63, 1058, 'R', 1, 'WKK', 281, 1, 3);

SELECT 'MB: Nieuwe WKK voor warme: verwerk in arai.sql:' || MAX(ins_deel_key) FROM ins_deel;

-- OPC-ID voor verbruik
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
SELECT MAX(ins_deel_key), 61, '123327_INW-1' FROM ins_deel;


-- 1d. Totaal (nieuw)
-- Nieuw object met naam Totaal
INSERT INTO ins_deel (ins_deel_module, ins_srtdeel_key, ins_alg_ruimte_key, ins_alg_ruimte_type, ins_deel_aantal, ins_deel_omschrijving, ins_discipline_key, ins_alg_locatie_key, ins_deel_x)
VALUES('INS', 63, 1058, 'R', 1, 'Totaal', 281, 1, 4);

SELECT 'MB: Nieuwe TOTAAL voor warme: verwerk in arai.sql:' || MAX(ins_deel_key) FROM ins_deel;

-- OPC-ID voor verbruik
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
SELECT MAX(ins_deel_key), 61, '123934_INW-1' FROM ins_deel;

-- OPC-ID voor setpoint
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
SELECT MAX(ins_deel_key), 62, '123935_INW-1' FROM ins_deel;

-- OPC-ID voor kleur
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
SELECT MAX(ins_deel_key), 63, '123933_INW-1' FROM ins_deel;


-- 2. ELEKTRAVERBRUIK bestaat uit
-- 2a. Inkoop (bestaat reeds, geen wijziging hier)
-- 2b. WKK  (bestaat reeds, geen wijziging hier)
-- 2c. PV (nieuw, is zonne-energie)
-- 2d. Totaal (bestaat al)
----
-- 2a. Inkoop (bestaat reeds, geen wijziging hier)
-- Wel even juiste volgorde (nr 1) forceren.
UPDATE ins_deel
SET ins_deel_x = 1
WHERE ins_deel_key = 243;

-- 2b. WKK  (bestaat reeds, geen wijziging hier)
-- Wel even juiste volgorde (nr 2) forceren.
UPDATE ins_deel
SET ins_deel_x = 2
WHERE ins_deel_key =  244;

-- 2c. PV (nieuw, is zonne-energie)
-- Nieuw object met naam PV
INSERT INTO ins_deel (ins_deel_module, ins_srtdeel_key, ins_alg_ruimte_key, ins_alg_ruimte_type, ins_deel_aantal, ins_deel_omschrijving, ins_discipline_key, ins_alg_locatie_key, ins_deel_x)
VALUES('INS', 62, 1058, 'R', 1, 'PV', 281, 1, 3);

SELECT 'MB: Nieuwe PV voor elektra: verwerk in arai.sql:' || MAX(ins_deel_key) FROM ins_deel;

-- OPC-ID voor verbruik
INSERT INTO ins_kenmerkdeel(ins_deel_key, ins_kenmerk_key, ins_kenmerkdeel_waarde)
SELECT MAX(ins_deel_key), 61, '123323_INW-1' FROM ins_deel;

-- 2d. Totaal (bestaat al)
-- Wel even juiste volgorde (nr 4) forceren.
UPDATE ins_deel
SET ins_deel_x = 4
WHERE ins_deel_key =  245;



--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- Schermopbouw / widget-reshuffle

-- 0. De bestaande lijngrafieken krijgen een layout (tbv kleuren van lijntjes):
-- Water grafiek krijgt de kleur blauw.
UPDATE fac_usrgraph
SET  fac_usrgraph_options = '{seriesColors: [''blue''], axes: {yaxis: {min: 0}} }'
WHERE fac_usrgraph_key = 121;

-- Elektra grafiek de volgende kleuren:
-- Inkoop = Rood
-- WKK = Rood achtig
-- PV = Oranje
-- Totaal = Zwart

UPDATE fac_usrgraph
SET  fac_usrgraph_options = '{seriesColors: [''red'',''#FF8080'',''orange'', ''black''] , axes: {yaxis: {min: 0}} }'
WHERE fac_usrgraph_key = 142;


-- Gas grafiek de volgende kleuren:
-- Gas = Geel
-- Stadw = Groen
-- WKK = Groen achtig
-- Totaal = Zwart

UPDATE fac_usrgraph
SET  fac_usrgraph_options = '{seriesColors: [''yellow'',''green'',''#80FF80'', ''black''] , axes: {yaxis: {min: 0}} }'
WHERE fac_usrgraph_key = 143;


-- 1. Alles met GAS kan weg: 

-- emtpy.html + plaatje (volgnr = 7 en 8); staafgrafiek (volgnr=20) + white-area (volgnr = 21); lijngrafiek (volgnr = 72) en empty.html (volgnr = 73)
DELETE fac_widget
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr IN (7,8, 20, 21, 72, 73);
-- Dus ook de 2 bijbehorende grafiek (usrgraph's) opruimen...
DELETE fac_usrgraph
WHERE fac_usrgraph_key IN (82, 141);
-- En bijbehorende views weg, zijn niet meer nodig.
DROP VIEW arai_v_graph_gas_nu;
DROP VIEW arai_v_graph_gas_today;
DROP VIEW arai_v_gas_verbruik_nu;

-- 2. Door wegvallen van GAS (zie punt 1) komt er 24 a 25 % breedte bij, die 24 gaan we verdelen over de 3 overgebleven grafieken (worden ze iets groter van): 8% per grafiek erbij...
UPDATE fac_widget
SET fac_widget_width=fac_widget_width + 8
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr IN (15, 30, 40, 70, 74, 76);
-- En de 3 plaatjes boven de grafieken ook 8% erbij.
UPDATE fac_widget
SET fac_widget_width=fac_widget_width + 8
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr IN (6, 10, 12);

-- En een kleine correctie van de allereerst widget 'empty':  ook 4% erbij.
UPDATE fac_widget
SET fac_widget_width=fac_widget_width + 4
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr IN (5);

-- En tenslotte nog waterverbruik achteraan in de rij, dus de volgende van de grafieken wordt dan:
-- 1. Elektra
-- 2. Warmte
-- 3. Water

-- Eerst de header (plaatjes)
-- Empty van 9->13
UPDATE fac_widget
SET fac_widget_volgnr = 13
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 9;
-- Plaatje 'water' van 6->14
UPDATE fac_widget
SET fac_widget_volgnr = 14
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 6;

-- Als 2e de staafdiagram
-- Empty van 16->45
UPDATE fac_widget
SET fac_widget_volgnr = 45
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 16;
-- Staafgrafiek 'water' van 15->50
UPDATE fac_widget
SET fac_widget_volgnr = 50
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 15;

-- Als 3e en laatste stap de lijngrafiek
-- Empty van 71->78
UPDATE fac_widget
SET fac_widget_volgnr = 78
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 71;
-- Lijngrafiek 'water' van 70->79
UPDATE fac_widget
SET fac_widget_volgnr = 79
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 70;


-- De widget voor de rapportage van zaal/hal bezetting gaan we wat extra hoogte geven: 150 ->250
UPDATE fac_widget
SET fac_widget_height = 250
WHERE fac_widget_groep = 'rtm_energie'
AND fac_widget_volgnr = 90;

-- Title van rapport wijzigen van Halbezetting -> Ruimte bezetting.
UPDATE fac_usrrap
SET fac_usrrap_omschrijving = 'Ruimte bezetting'
WHERE fac_usrrap_key = 201;


------------------------------------------------------------------------------------------------------------------------------------------
---- Call ARAI#27854: Cust Import procedure arai_import_ins kan weer weg (was tijdelijk), ook bijbehorende arai_update_ins

DELETE FROM fac_import where fac_import_app_key = 162;
DELETE FROM fac_import_app WHERE fac_import_app_key = 162;

DROP PROCEDURE arai_import_ins;
DROP PROCEDURE arai_update_ins;



commit;

BEGIN adm.systrackscript('$Workfile: arai13.sql $', '$Revision$', 1); END;
/

SPOOL OFF

@arai.sql
