spool /mnpapp/log/script/dbc_bonifica_DONOR_200910.log;

--BONIFICA TABELLA DI BUSINESS DONOR STANDARD, DONOR MVNO E PRJHOC, porting tp, 
---USAGE

UPDATE MNP_GESTIONE_RICHIESTA DON SET DON.USAGE=
(SELECT G.RESP_USAGE FROM MNP_GISP_RETRIEVE_OUT G WHERE G.ID_RICHIESTA=DON.ID_RICHIESTA) 
where DON.STATO IN (1,3,6,19,20) AND DON.CARATTERIZZAZIONE_OLD=1;

---MAIN_MSISDN

UPDATE MNP_GESTIONE_RICHIESTA DON SET DON.MAIN_MSISDN=
(SELECT G.RESP_MAIN_MSISDN FROM MNP_GISP_RETRIEVE_OUT G WHERE G.ID_RICHIESTA=DON.ID_RICHIESTA) 
where DON.STATO IN (1,3,6,19,20) AND DON.CARATTERIZZAZIONE_OLD=1;

---NOME_SERVIZIO 

UPDATE MNP_GESTIONE_RICHIESTA DON SET DON.NOME_SERVIZIO=
(SELECT G.RESP_NOME_SERVIZIO FROM MNP_GISP_RETRIEVE_OUT G WHERE G.ID_RICHIESTA=DON.ID_RICHIESTA) 
where DON.STATO IN (1,3,6,19,20) AND DON.CARATTERIZZAZIONE_OLD=1;

---ADDITIONAL 

UPDATE MNP_GESTIONE_RICHIESTA DON SET DON.ADDITIONAL=
(SELECT G.RESP_ADDITIONAL FROM MNP_GISP_RETRIEVE_OUT G WHERE G.ID_RICHIESTA=DON.ID_RICHIESTA) 
where DON.STATO IN (1,3,6,19,20) AND DON.CARATTERIZZAZIONE_OLD=1;
-----------------------------------------------------------------------------------------------------

--CESSAZIONE MSP


UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET ASP.MSISDN= 
(SELECT GISP.RESP_MAIN_MSISDN FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA AND GISP.RESP_MAIN_MSISDN IS NOT NULL) 
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP'
AND EXISTS(SELECT GISP.RESP_MAIN_MSISDN FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA AND GISP.RESP_MAIN_MSISDN IS NOT NULL); 

 
UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET ASP.MSISDN_AGGIUNTIVO= 
(SELECT DECODE(GISP.RESP_MAIN_MSISDN,NULL,DECODE(GISP.RESP_ADDITIONAL,NULL,NULL,'39'||GISP.RESP_ADDITIONAL),'39'||GISP.MSISDN) FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA)
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP';


UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET SERVIZIO = (SELECT GISP.RESP_NOME_SERVIZIO FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA)
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP';

 

UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET ASP.MSISDN_DA_PORTARE='M' 
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP';



UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET ASP.MSISDN_DA_PORTARE='S'  
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP'
AND EXISTS(SELECT GISP.RESP_MAIN_MSISDN FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA AND ('39'||GISP.MSISDN) = ASP.MSISDN_AGGIUNTIVO);
 

UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET ASP.TAF='P'  
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP'
AND EXISTS(SELECT GISP.RESP_MAIN_MSISDN FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA AND GISP.RESP_USAGE='TCB_PADRE');

 

UPDATE MNP_ASP_CRM_CESSAZIONE_OUT ASP SET ASP.TAF='F'  
WHERE ASP.DA_INVIARE=1 AND ASP.SIST_COMP='ASP'
AND EXISTS(SELECT GISP.RESP_MAIN_MSISDN FROM MNP_GISP_RETRIEVE_OUT GISP WHERE GISP.ID_RICHIESTA=ASP.ID_RICHIESTA AND GISP.RESP_USAGE='TCB_FIGLIA');



-----------------------------------------------------------------------------------------------------
---CESSAZIONE_RETE
UPDATE MNP_GESTIONE_RICHIESTA DON SET DON.CESSAZIONE_RETE=1 
where DON.STATO IN (7,9,14);

---ROUTING_NUMBER 
UPDATE MNP_GESTIONE_RICHIESTA DON SET DON.ROUTING_NUMBER=
(SELECT G.ROUTING_NUMBER FROM MNP_OLO G
WHERE G.DESC_OLO=DON.CODICE_OPERATORE_RECIPIENT)
WHERE DON.STATO NOT IN (4,10,16);

---BONIFICA CARATTERIZZAZIONE

UPDATE MNP_GESTIONE_RICHIESTA
SET CARATTERIZZAZIONE='1'
WHERE (CARATTERIZZAZIONE_OLD=-1
AND STATO = 1 ) OR CARATTERIZZAZIONE_OLD=0;



---BONIFICA DONOR STANDARD DA VALIDATING 6--> PRESAINCARICO 3 

UPDATE MNP_GESTIONE_RICHIESTA
SET STATO =3
WHERE STATO = 6 AND (
CODICE_OPERATORE_DON_EFF ='TIMG' OR (CODICE_OPERATORE_DON_EFF='COOP' AND FLAG_ESP=1 )
) 
AND RICHIESTAADHOCAOM = '0' ;

---BONIFICA DONOR PRJHOC DA VALIDATING1 18--> PRESAINCARICO 3

UPDATE MNP_GESTIONE_RICHIESTA
SET STATO = 3
WHERE STATO =18 AND (
CODICE_OPERATORE_DON_EFF ='TIMG' OR (CODICE_OPERATORE_DON_EFF='COOP' AND FLAG_ESP=1 )) 
AND RICHIESTAADHOCAOM = '1' ;

UPDATE MNP_GESTIONE_RICHIESTA
SET STATO = 20
WHERE STATO = 6 AND
(CODICE_OPERATORE_DON_EFF ='TIMG' OR (CODICE_OPERATORE_DON_EFF='COOP' AND FLAG_ESP=1 )) 
AND (RICHIESTAADHOCAOM = '1' OR RICHIESTAADHOC='1');

-------------------------------------------------------------------------------
-------------------------------------------------------------------------------

--BONIFICA PORTING TP  

UPDATE MNP_GESTIONE_RICHIESTA_PORTING POR SET POR.ROUTING_NUMBER=
(SELECT G.ROUTING_NUMBER FROM MNP_OLO G
WHERE G.DESC_OLO=POR.CODICE_OPERATORE_RECIPIENT)
WHERE POR.STATO NOT IN (6);




--------ELIMINAZIONE WAIT APPLICATIVIO PER DONOR MVNO
UPDATE MNP_MVNO_VALIDAZ_IN D SET D.DA_SCODARE=1
WHERE D.DA_SCODARE=4;



---BONIFICA CAMPO CARATTERIZZAZIONE

ALTER TABLE MNP_GESTIONE_RICHIESTA DROP COLUMN CARATTERIZZAZIONE_OLD;

-------------------------------------------------------------------------------
--MAPPING CAUSALI RIFIUTO NEW
-------------------------------------------------------------------------------


UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '21;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('1','2');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '22;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('3');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '23;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('4');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '20;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('5','8','10','13');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '24;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('6');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '26;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('7');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = '29;' 
WHERE STATO =3 AND PREVALIDAZIONE IN ('9');

UPDATE MNP_GESTIONE_RICHIESTA SET PREVALIDAZIONE = NULL 
WHERE STATO =3 AND PREVALIDAZIONE IN ('14');

COMMIT;

-------------------------------------------------------------------------------
-------------------------------------------------------------------------------


spool off;

