----------------------------------
-- CREAZIONE FUNZIONI RECIPIENT --
----------------------------------
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_REC_AVVIO_STEP1','calcoloPenaliRecipientSearch.do','Abilitazione Step 1 Calcolo Penali Recipient',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);

INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_REC_AVVIO_STEP2','calcoloPenaliRecipientSearch.do','Abilitazione Step 2 Calcolo Penali Recipient',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_REC_AVVIO_STEP3','calcoloPenaliRecipientSearch.do','Abilitazione Step 3 Calcolo Penali Recipient',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_REC_AVVIO_STEP4','calcoloPenaliRecipientSearch.do','Abilitazione Step 4 Calcolo Penali Recipient',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_REC_TERMINA_STEP4','calcoloPenaliRecipientSearch.do','Abilitazione Termina Calcolo Penali Recipient',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);        

------------------------------
-- CREAZIONE FUNZIONI DONOR --
------------------------------        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_DON_AVVIO_STEP1','calcoloPenaliDonorSearch.do','Abilitazione Step 1 Calcolo Penali Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);

INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_DON_AVVIO_STEP2','calcoloPenaliDonorSearch.do','Abilitazione Step 2 Calcolo Penali Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_DON_AVVIO_STEP3','calcoloPenaliDonorSearch.do','Abilitazione Step 3 Calcolo Penali Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_DON_AVVIO_STEP4','calcoloPenaliDonorSearch.do','Abilitazione Step 4 Calcolo Penali Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_DON_AVVIO_STEP5','calcoloPenaliDonorSearch.do','Abilitazione Step 5 Calcolo Penali Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);
        
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        null, 'CALC_PENALI_DON_TERMINA_STEP5','calcoloPenaliDonorSearch.do','Abilitazione Termina Calcolo Penali Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 0);

--------------------------------------
-- ABILITAZIONI FUNZIONI PROFILO GD --
--------------------------------------
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_AVVIO_STEP1' ), 
      (select id from dbcgo_profilo where nome = 'GD') );

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_AVVIO_STEP2' ), 
      (select id from dbcgo_profilo where nome = 'GD') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_AVVIO_STEP3' ), 
      (select id from dbcgo_profilo where nome = 'GD') );

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_AVVIO_STEP4' ), 
      (select id from dbcgo_profilo where nome = 'GD') );

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_TERMINA_STEP4' ), 
      (select id from dbcgo_profilo where nome = 'GD') );      

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP1' ), 
      (select id from dbcgo_profilo where nome = 'GD') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP2' ), 
      (select id from dbcgo_profilo where nome = 'GD') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP3' ), 
      (select id from dbcgo_profilo where nome = 'GD') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP4' ), 
      (select id from dbcgo_profilo where nome = 'GD') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP5' ), 
      (select id from dbcgo_profilo where nome = 'GD') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_TERMINA_STEP5' ), 
      (select id from dbcgo_profilo where nome = 'GD') );

--------------------------------------
-- ABILITAZIONI FUNZIONI PROFILO GG --
--------------------------------------
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_AVVIO_STEP1' ), 
      (select id from dbcgo_profilo where nome = 'GG') );

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_REC_AVVIO_STEP2' ), 
      (select id from dbcgo_profilo where nome = 'GG') );
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP1' ), 
      (select id from dbcgo_profilo where nome = 'GG') );      

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP2' ), 
      (select id from dbcgo_profilo where nome = 'GG') );            
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALC_PENALI_DON_AVVIO_STEP3' ), 
      (select id from dbcgo_profilo where nome = 'GG') );      

--------------------------------------
-- ABILITAZIONI FUNZIONI PROFILO GV --
--------------------------------------
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'CALCOLO PENALI'), 
      (select id from dbcgo_profilo where nome = 'GV'));
      
INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT DBCGO_FUNZIONE_WEB.ID FROM DBCGO_FUNZIONE_WEB where nome = 'SINTESI' and ID_PADRE = (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome='CALCOLO PENALI')), 
      (select id from dbcgo_profilo where nome = 'GV') );

-----------------------------------------------
-- INSERIMENTO REPORT MONITORAGGIO RECIPIENT --
-----------------------------------------------
INSERT INTO dbcgo_lov (LOV_ID, LOV_NAME, NAME, DESCR, ORDER_BY) VALUES
    ( SEQ_LOV.nextval, 'REPORT', 'RMR', 'REPORT MONITORAGGIO RECIPIENT', null);
    
INSERT INTO dbcgo_lov_ref (LOV_ID, LOV_ID_REF) VALUES
    ( (select lov_id from dbcgo_lov where name = 'RMR' and lov_name = 'REPORT'), 
      (select lov_id from dbcgo_lov where name = 'ND' and lov_name = 'REPORT_ID') );

--------------------------------------
-- INSERIMENTO REPORT TCR RECIPIENT --
--------------------------------------
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        (SELECT id FROM DBCGO_FUNZIONE_WEB WHERE NOME = 'RECIPIENT' AND id_padre IS NULL), 'REPORT TCR RECIPIENT','recipientReportTCR.do','Report TCR Recipient',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 1);

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR RECIPIENT'), 
      (select id from dbcgo_profilo where nome = 'GD'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR RECIPIENT'), 
      (select id from dbcgo_profilo where nome = 'GT'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR RECIPIENT'), 
      (select id from dbcgo_profilo where nome = 'GX'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR RECIPIENT'), 
      (select id from dbcgo_profilo where nome = 'GG'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR RECIPIENT'), 
      (select id from dbcgo_profilo where nome = 'GV'));      
      
--------------------------------------
-- INSERIMENTO REPORT TCR DONOR --
--------------------------------------
INSERT INTO DBCGO_FUNZIONE_WEB (id,id_padre,nome,comando,DESCRIZIONE,ordine,menu) values ((SELECT MAX(ID)+1 as id FROM DBCGO_FUNZIONE_WEB),
        (SELECT id FROM DBCGO_FUNZIONE_WEB WHERE NOME = 'DONOR' AND id_padre IS NULL), 'REPORT TCR DONOR','donorReportTCR.do','Report TCR Donor',  (SELECT MAX(ORDINE)+1 as ordine FROM DBCGO_FUNZIONE_WEB), 1);        

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR DONOR'), 
      (select id from dbcgo_profilo where nome = 'GD'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR DONOR'), 
      (select id from dbcgo_profilo where nome = 'GT'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR DONOR'), 
      (select id from dbcgo_profilo where nome = 'GX'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR DONOR'), 
      (select id from dbcgo_profilo where nome = 'GG'));

INSERT INTO  DBCGO_PROFILO_FUNZIONE_WEB (ID_FUNZIONE, ID_PROFILO) values 
    ( (SELECT ID FROM DBCGO_FUNZIONE_WEB where nome = 'REPORT TCR DONOR'), 
      (select id from dbcgo_profilo where nome = 'GV'));
        
commit;      