Files
gateway-mnp-dbc/dbcmnpsrc/FE/mnpapp/script/dbUpDate/KitLuglio10/dbcgoSm2000.sql
2024-05-13 12:54:14 +02:00

297 lines
10 KiB
SQL

CREATE OR REPLACE VIEW DBCGO_GEST_RIC_DON_VIRT_VIEW
(ID_RICHIESTA, STATO, TIPO_CLIENTE, DATA_CUT_OVER_CALC, DATA_VALIDAZIONE_MAX,
DATARICEZIONERICHIESTA, DATA_CUT_OVER, CODICE_OPERATORE_DONATING, MSISDN, CODICE_FISCALE_PARTITA_IVA,
CODICE_PRE_POST_PAGATO, NOME_CLIENTE, COGNOME_CLIENTE, RAGIONE_SOCIALE, ICCD_SERIAL_NUMBER,
NOME_OT, NUMERO_DOCUMENTO, TIPO_DOCUMENTO, DATA_TRANSIZIONE_STATO, CODICE_OPERATORE_RECIPIENT,
SISTEMA_MITT, FLAG_TC, FLAG_ESP, DATA_VALIDAZIONE_EFF, CODICERIFIUTOVALIDAZIONE,
FLAG_FURTO, FLA_PREVALIDAZIONE, PREVALIDAZIONE, BUSINESS_ID, DESCR_STATO,
VIS_DAY_NUM, NOME_OT_DESC, NOME_OT_ORDER_BY, TIPO_CLIENTE_DESC, CODICE_PRE_POST_PAGATO_DESC,
SISTEMA_MITTENTE_DESC, TC_STATO, IMPORTO, COD_PROFILO_TARIFFARIO, COD_PROFILO_TARIFFARIO_DESC, TRASFERIMENTO_CON_SBLOCCO,
NOME_FILE_SBLOCCO,FLAG_PROGETTO_ADHOC)
AS
(
SELECT
a.ID_RICHIESTA,
s.id_STATO,
a.TIPO_CLIENTE,
a.DATA_CUT_OVER_CALC,
a.DATA_VALIDAZIONE_MAX,
a.DATARICEZIONERICHIESTA,
a.DATA_CUT_OVER,
a.CODICE_OPERATORE_DONATING,
a.MSISDN,
a.CODICE_FISCALE_PARTITA_IVA,
a.CODICE_PRE_POST_PAGATO,
a.NOME_CLIENTE,
a.COGNOME_CLIENTE,
a.RAGIONE_SOCIALE,
a.ICCD_SERIAL_NUMBER,
DECODE(a.nome_ot,NULL,NULL,NVL(f.name,'NN')) AS NOME_OT,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.DATA_TRANSIZIONE_STATO,
a.CODICE_OPERATORE_RECIPIENT,
a.SISTEMA_MITT,
a.FLAG_TC,
DECODE(a.FLAG_ESP,1,'Y','N') AS FLAG_ESP,
a.DATA_VALIDAZIONE_EFF,
a.CODICERIFIUTOVALIDAZIONE,
a.FLAG_FURTO,
a.FLAG_PREVALIDAZIONE,
a.PREVALIDAZIONE,
a.BUSINESS_ID_DON AS BUSINESS_ID,
s.descr AS descr_stato,
statoDV.vis_day_num AS vis_day_num,
NVL(f.descr,'Non disponibile') AS nome_ot_desc,
f.order_by AS nome_ot_order_by,
g.descr AS tipo_cliente_desc,
h.descr AS codice_pre_post_pagato_desc,
n.descr AS sistema_mittente_desc,
DECODE(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') AS tc_stato,
tc.importo,
a.COD_PROFILO_TARIFFARIO,
DECODE(UPPER(a.COD_PROFILO_TARIFFARIO),'D','Y','N') AS cod_profilo_tariffario_desc,
DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT TRUNC ( (tc.importo - 1) / TO_NUMBER (name))
FROM DBCGO_LOV
WHERE lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
AS trasferimento_con_sblocco,
NULL AS nome_file_sblocco ,
decode( e.richiestaadhoc,1,'Y','N')
FROM
DBCGO_GEST_RICH_DON_VIRT a,
DBCGO_GEST_RIC_DON_VIRT_TC tc,
MNP_DWH_TC_ANOMALO tc_ext,
DBCGO_STATO_DON_VIRT statoDV,
DBCGO_STATO_MAPPING_DON_MVNO s,
DBCGO_LOV f,
DBCGO_LOV g,
DBCGO_LOV h,
DBCGO_LOV n,
MNP_DWH_RICH_DON_VIRT_EXT e
WHERE a.stato = statoDV.id_stato
AND statoDV.id_stato=s.id_stato_don_virt
AND a.nome_ot = f.NAME(+)
AND f.lov_name(+) = 'OT_REC'
AND a.tipo_cliente = g.NAME
AND g.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = h.NAME
AND h.lov_name = 'TIPO_CONTRATTO'
AND a.sistema_mitt = n.NAME(+)
AND n.lov_name(+) = 'SIST_MITTENTE'
AND a.id_richiesta = tc.id_richiesta(+)
AND tc.id_richiesta = tc_ext.id_richiesta(+)
and a.id_richiesta=e.id_richiesta(+)
UNION ALL
SELECT
a.ID_RICHIESTA,
s.id_STATO,
a.TIPO_CLIENTE,
a.DATA_CUT_OVER_CALC,
a.DATA_VALIDAZIONE_MAX,
a.DATARICEZIONERICHIESTA,
a.DATA_CUT_OVER,
a.CODICE_OPERATORE_V_DONOR, -- a.CODICE_OPERATORE_DONATING,
a.MSISDN,
a.CODICE_FISCALE_PARTITA_IVA,
a.CODICE_PRE_POST_PAGATO,
a.NOME_CLIENTE,
a.COGNOME_CLIENTE,
a.RAGIONE_SOCIALE,
a.ICCD_SERIAL_NUMBER,
DECODE(a.nome_ot_leg,NULL,NULL,NVL(f.name,'NN')) AS NOME_OT,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.DATA_TRANSIZIONE_STATO,
case when a.CODICE_OPERATORE_V_RECIPIENT is not null
then a.CODICE_OPERATORE_V_RECIPIENT
else a.CODICE_OPERATORE_RECIPIENT
end case,
NULL AS SISTEMA_MITT,
a.FLAG_TC,
DECODE(aext.FLAG_ESP,1,'Y','N') AS FLAG_ESP,
aext.DATA_VALIDAZIONE_EFF,
aext.CODICE_RIFIUTO_VALIDAZIONE AS CODICERIFIUTOVALIDAZIONE,
a.FLAG_FURTO,
a.FLAG_PREVALIDAZIONE,
a.PREVALIDAZIONE,
aext.BUSINESS_ID AS BUSINESS_ID,
s.descr AS descr_stato,
statoD.vis_day_num AS vis_day_num,
NVL(f.descr,'Non disponibile') AS nome_ot_desc,
f.order_by AS nome_ot_order_by,
g.descr AS tipo_cliente_desc,
h.descr AS codice_pre_post_pagato_desc,
NULL AS sistema_mittente_desc,
DECODE(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') AS tc_stato,
tc.importo,
NULL AS COD_PROFILO_TARIFFARIO,
'N' AS cod_profilo_tariffario_desc,
DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT TRUNC ( (tc.importo - 1) / TO_NUMBER (name))
FROM DBCGO_LOV
WHERE lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
AS trasferimento_con_sblocco,
getNomeFileSbloccoOUT(a.id_richiesta) AS nome_file_sblocco,
CASE when (a.richiestaadhocaom = 1 or a.richiestaadhoc = 1) THEN 'Y' ELSE 'N' END CASE
FROM
DBCGO_GESTIONE_RICHIESTA a,
MNP_DWH_gest_rich_don_ext aext,
DBCGO_GESTIONE_RICHIESTA_TC tc,
MNP_DWH_TC_ANOMALO tc_ext,
DBCGO_STATO statoD,
DBCGO_STATO_MAPPING_DON_MVNO s,
DBCGO_LOV f,
DBCGO_LOV g,
DBCGO_LOV h
WHERE
( a.CODICE_OPERATORE_V_DONOR IS not NULL
AND (a.CODICE_OPERATORE_DONATING = 'TIMG' OR a.CODICE_OPERATORE_DONATING = 'TIMT') )
AND a.stato = s.id_stato_don
AND s.id_stato_don=statoD.id_stato
AND a.nome_ot_leg = f.NAME(+)
AND f.lov_name(+) = 'OT'
AND a.tipo_cliente = g.NAME
AND g.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = h.NAME
AND h.lov_name = 'TIPO_CONTRATTO'
AND a.id_richiesta = tc.id_richiesta(+)
AND a.id_richiesta = aext.id_richiesta(+)
AND tc.id_richiesta = tc_ext.id_richiesta(+)
UNION ALL
SELECT
a.ID_RICHIESTA,
s.id_stato,
a.TIPO_CLIENTE,
a.DATA_CUT_OVER_CALC,
a.DATA_VALIDAZIONE_MAX,
a.DATARICEZIONERICHIESTA,
a.DATA_CUT_OVER,
a.CODICE_OPERATORE_DONATING,
a.MSISDN,
a.CODICE_FISCALE_PARTITA_IVA,
a.CODICE_PRE_POST_PAGATO,
a.NOME_CLIENTE,
a.COGNOME_CLIENTE,
a.RAGIONE_SOCIALE,
a.ICCD_SERIAL_NUMBER,
DECODE(e.nome_ot ,NULL,NULL,NVL(i.name,'NN')) AS NOME_OT,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.DATA_TRANSIZIONE_STATO,
a.CODICE_OPERATORE_RECIPIENT,
NULL AS sistema_mitt,
a.flag_tc,
DECODE(e.FLAG_ESP,1,'Y','N') AS FLAG_ESP,
a.DATA_VALIDAZIONE_EFF,
a.CODICERIFIUTOVALIDAZIONE,
a.FLAG_FURTO,
a.FLAG_PREVALIDAZIONE,
a.PREVALIDAZIONE,
a.BUSINESS_ID_don AS business_id,
s.DESCR AS descr_stato,
statoM2M.vis_day_num AS vis_day_num,
NVL(i.descr,'Non disponibile') AS nome_ot_desc,
i.order_by AS nome_ot_order_by ,
j.descr AS tipo_cliente_desc,
k.descr AS codice_pre_post_pagato_desc,
k.descr AS sistema_mittente_desc,
DECODE(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') AS tc_stato,
tc.importo,
NULL AS COD_PROFILO_TARIFFARIO,
'N' AS cod_profilo_tariffario_desc,
DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT TRUNC ( (tc.importo - 1) / TO_NUMBER (name))
FROM DBCGO_LOV
WHERE lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
AS trasferimento_con_sblocco,
NULL AS nome_file_sblocco,
decode( e.richiestaadhoc,1,'Y','N')
FROM
DBCGO_GEST_RICH_REC_VIRT_M2M a,
DBCGO_STATO_MAPPING_DON_MVNO s,
DBCGO_STATO_REC_VIRT_M2M statoM2M,
DBCGO_GEST_RIC_RV_M2M_TC tc,
DBCGO_LOV i,
DBCGO_LOV j,
DBCGO_LOV k,
MNP_DWH_RICH_REC_VIRT_EXT e,
MNP_DWH_TC_ANOMALO tc_ext
WHERE a.stato = s.id_stato_virt_m2m
AND s.id_stato_virt_m2m=statoM2M.id_stato
AND a.id_richiesta=e.id_richiesta(+)
AND e.nome_ot = i.NAME(+)
AND i.lov_name(+) = 'OT'
AND a.tipo_cliente = j.NAME
AND j.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = k.NAME
AND k.lov_name = 'TIPO_CONTRATTO'
AND a.id_richiesta = tc.id_richiesta(+)
AND tc.id_richiesta= tc_ext.id_richiesta(+)
);
CREATE OR REPLACE VIEW DBCGO_GEST_RIC_RV_M2M_VIEW
(ID_RICHIESTA, DATA_INSERIMENTO, DATA_TRANSIZIONE_STATO, STATO, TIPO_CLIENTE,
DATA_CUT_OVER_CALC, DATA_VALIDAZIONE_MAX, DATARICEZIONERICHIESTA, DATA_CUT_OVER, CODICERIFIUTOVALIDAZIONE,
CODICE_OPERATORE_RECIPIENT, MSISDN, CODICE_FISCALE_PARTITA_IVA, CODICE_PRE_POST_PAGATO, NOME_CLIENTE,
COGNOME_CLIENTE, RAGIONE_SOCIALE, ICCD_SERIAL_NUMBER, NUMERO_DOCUMENTO, TIPO_DOCUMENTO,
CODICE_OPERATORE_DONATING, FLAG_TC, PREVALIDAZIONE, DATA_VALIDAZIONE_EFF, BUSINESS_ID_REC,
BUSINESS_ID_DON, DESCR_STATO, VIS_DAY_NUM, TIPO_CLIENTE_DESC, CODICE_PRE_POST_PAGATO_DESC,
TC_STATO, IMPORTO, FLAG_FURTO, FLAG_PREVALIDAZIONE, TRASFERIMENTO_CON_SBLOCCO,
NOME_FILE_SBLOCCO, FLAG_PROGETTO_ADHOC)
AS
(SELECT
a.ID_RICHIESTA,
a.DATA_INSERIMENTO,
a.DATA_TRANSIZIONE_STATO,
a.STATO,
a.TIPO_CLIENTE,
a.DATA_CUT_OVER_CALC,
a.DATA_VALIDAZIONE_MAX, a.DATARICEZIONERICHIESTA,
a.DATA_CUT_OVER,
a.CODICERIFIUTOVALIDAZIONE,
a.CODICE_OPERATORE_RECIPIENT,
a.MSISDN,
a.CODICE_FISCALE_PARTITA_IVA,
a.CODICE_PRE_POST_PAGATO,
a.NOME_CLIENTE,
a.COGNOME_CLIENTE,
a.RAGIONE_SOCIALE,
a.ICCD_SERIAL_NUMBER,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.CODICE_OPERATORE_DONATING,
a.FLAG_TC,
a.PREVALIDAZIONE,
a.DATA_VALIDAZIONE_EFF,
a.BUSINESS_ID_REC,
a.BUSINESS_ID_DON,
statoM2M.descr_stato AS descr_stato,
statoM2M.vis_day_num AS vis_day_num,
j.descr AS tipo_cliente_desc,
k.descr AS codice_pre_post_pagato_desc,
decode(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') as tc_stato,
tc.importo,
a.flag_furto,
a.flag_prevalidazione,
DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT TRUNC ( (tc.importo - 1) / TO_NUMBER (name))
FROM DBCGO_LOV
WHERE lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
AS trasferimento_con_sblocco,
NULL AS nome_file_sblocco,
decode(e.richiestaadhoc,1,'Y','N')
FROM
DBCGO_GEST_RICH_REC_VIRT_M2M a,
dbcgo_stato_rec_virt_m2m statoM2M,
dbcgo_gest_ric_rv_m2m_tc tc,
MNP_DWH_TC_ANOMALO tc_ext,
dbcgo_lov j,
dbcgo_lov k,
MNP_DWH_RICH_REC_VIRT_EXT e
WHERE a.stato = statoM2M.id_stato
AND a.tipo_cliente = j.NAME
AND j.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = k.NAME
AND k.lov_name = 'TIPO_CONTRATTO'
AND a.id_richiesta = tc.id_richiesta(+)
AND tc.id_richiesta = tc_ext.id_richiesta(+)
AND a.id_richiesta = e.id_richiesta(+)
);