-- --------------------------------------------------------
-- Versione server:              10.2.14-MariaDB-log - Columnstore 1.1.4-1
-- S.O. server:                  Linux
-- HeidiSQL Versione:            9.5.0.5278
-- --------------------------------------------------------



-- Dump della struttura del database c6msg
CREATE DATABASE IF NOT EXISTS `c6msg` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `c6msg`;

-- Dump della struttura di tabella c6msg.vl_messaggio_in
CREATE TABLE IF NOT EXISTS `vl_messaggio_in` (
  `PROG_MESSAGGIO_IN_ID` bigint(20) unsigned NOT NULL,
  `PROG_TIPO_MSG_ID` int(10) unsigned DEFAULT NULL,
  `PROG_STATO_ELABORAZIONE_ID` int(10) unsigned DEFAULT NULL,
  `MESSAGGIO` text DEFAULT NULL,
  `DATA_RICEZIONE` datetime NOT NULL,
  `IP_ADDRESS` varchar(15) DEFAULT NULL,
  `ID_MSG_APP` varchar(15) DEFAULT NULL,
  `COD_MITT` varchar(1) DEFAULT NULL,
  `PROG_SIST_GIOCO_DEST_ID` int(10) unsigned DEFAULT NULL,
  `PROG_SIST_GIOCO_MITT_ID` int(10) unsigned DEFAULT NULL,
  `DATE_INSERT` datetime DEFAULT NULL,
  `DATE_MODIFY` datetime DEFAULT NULL
) ENGINE=Columnstore DEFAULT CHARSET=utf8;

-- L’esportazione dei dati non era selezionata.
-- Dump della struttura di vista c6msg.vl_messaggio_in_oggi
-- Creazione di una tabella temporanea per risolvere gli errori di dipendenza della vista
CREATE TABLE `vl_messaggio_in_oggi` (
	`PROG_MESSAGGIO_IN_ID` BIGINT(20) UNSIGNED NOT NULL,
	`PROG_TIPO_MSG_ID` INT(10) UNSIGNED NULL,
	`PROG_STATO_ELABORAZIONE_ID` INT(10) UNSIGNED NULL,
	`DATA_RICEZIONE` DATETIME NOT NULL,
	`ID_MSG_APP` VARCHAR(15) NULL COLLATE 'utf8_general_ci',
	`COD_MITT` VARCHAR(1) NULL COLLATE 'utf8_general_ci',
	`PROG_SIST_GIOCO_DEST_ID` INT(10) UNSIGNED NULL
) ENGINE=MyISAM;

-- Dump della struttura di tabella c6msg.vl_messaggio_out
CREATE TABLE IF NOT EXISTS `vl_messaggio_out` (
  `PROG_MESSAGGIO_OUT_ID` bigint(20) unsigned NOT NULL,
  `PROG_TIPO_MSG_ID` int(10) unsigned DEFAULT NULL,
  `PROG_STATO_ELABORAZIONE_ID` int(10) unsigned DEFAULT NULL,
  `MESSAGGIO` text DEFAULT NULL,
  `DATA_TRASMISSIONE` datetime NOT NULL,
  `ID_MSG_APP` varchar(15) DEFAULT NULL,
  `COD_MITT` varchar(1) DEFAULT NULL,
  `CODEID` varchar(16) DEFAULT NULL,
  `PROG_SISTEMA_GIOCO_ID` int(10) unsigned DEFAULT NULL,
  `DATE_INSERT` datetime DEFAULT NULL,
  `DATE_MODIFY` datetime DEFAULT NULL
) ENGINE=Columnstore DEFAULT CHARSET=utf8;

-- L’esportazione dei dati non era selezionata.
-- Dump della struttura di vista c6msg.vl_messaggio_out_oggi
-- Creazione di una tabella temporanea per risolvere gli errori di dipendenza della vista
CREATE TABLE `vl_messaggio_out_oggi` (
	`PROG_MESSAGGIO_OUT_ID` BIGINT(20) UNSIGNED NOT NULL,
	`PROG_TIPO_MSG_ID` INT(10) UNSIGNED NULL,
	`PROG_STATO_ELABORAZIONE_ID` INT(10) UNSIGNED NULL,
	`DATA_TRASMISSIONE` DATETIME NOT NULL,
	`ID_MSG_APP` VARCHAR(15) NULL COLLATE 'utf8_general_ci',
	`COD_MITT` VARCHAR(1) NULL COLLATE 'utf8_general_ci'
) ENGINE=MyISAM;

-- Dump della struttura di tabella c6msg.vl_sistema_gioco
CREATE TABLE IF NOT EXISTS `vl_sistema_gioco` (
  `PROG_SISTEMA_GIOCO_ID` tinyint(1) unsigned NOT NULL,
  `CODICE_CONC` tinyint(1) unsigned NOT NULL,
  `COD_SISTEMA_GIOCO_AAMS` bigint(20) NOT NULL,
  `PROG_COMPONENTE_ID` int(10) NOT NULL,
  `DESCRIZIONE` varchar(50) NOT NULL,
  `INDIRIZZO_IP` varchar(50) NOT NULL,
  `URL_HTTP` varchar(300) NOT NULL,
  `CHIAVE_PUBBLICA` text DEFAULT NULL,
  `INVIO_CONTESTUALE` tinyint(4) DEFAULT NULL,
  `MANUTENZIONE` tinyint(4) NOT NULL
) ENGINE=Columnstore DEFAULT CHARSET=utf8;

-- L’esportazione dei dati non era selezionata.
-- Dump della struttura di tabella c6msg.vl_stato_elaborazione
CREATE TABLE IF NOT EXISTS `vl_stato_elaborazione` (
  `PROG_STATO_ELABORAZIONE_ID` int(10) unsigned NOT NULL,
  `CODICE` tinyint(4) DEFAULT NULL,
  `DESCRIZIONE` varchar(50) DEFAULT NULL
) ENGINE=Columnstore DEFAULT CHARSET=utf8;

-- L’esportazione dei dati non era selezionata.
-- Dump della struttura di tabella c6msg.vl_tipo_msg
CREATE TABLE IF NOT EXISTS `vl_tipo_msg` (
  `PROG_TIPO_MSG_ID` smallint(5) unsigned NOT NULL,
  `CODICE` varchar(3) DEFAULT NULL,
  `DESCRIZIONE` varchar(300) DEFAULT NULL,
  `PROG_TIPO_MSG_AAMS_ID` int(11) DEFAULT NULL,
  `SG_BORN` varchar(1) DEFAULT NULL,
  `SLA_RX` varchar(1) DEFAULT NULL,
  `SLA_TX` varchar(1) DEFAULT NULL
) ENGINE=Columnstore DEFAULT CHARSET=utf8;

-- L’esportazione dei dati non era selezionata.
-- Dump della struttura di vista c6msg.v_get_anomalia_msg_vlt_bot
-- Creazione di una tabella temporanea per risolvere gli errori di dipendenza della vista
CREATE TABLE `v_get_anomalia_msg_vlt_bot` (
	`sistema` VARCHAR(50) NULL COLLATE 'utf8_general_ci',
	`stato` VARCHAR(50) NULL COLLATE 'utf8_general_ci',
	`messaggio` VARCHAR(3) NULL COLLATE 'utf8_general_ci',
	`numero_msg` BIGINT(21) NOT NULL
) ENGINE=MyISAM;

-- Dump della struttura di vista c6msg.vl_messaggio_in_oggi
-- Rimozione temporanea di tabella e creazione della struttura finale della vista
CREATE ALGORITHM=UNDEFINED DEFINER=`nbattista`@`%` SQL SECURITY DEFINER VIEW `vl_messaggio_in_oggi` AS select `vl_messaggio_in`.`PROG_MESSAGGIO_IN_ID` AS `PROG_MESSAGGIO_IN_ID`,`vl_messaggio_in`.`PROG_TIPO_MSG_ID` AS `PROG_TIPO_MSG_ID`,`vl_messaggio_in`.`PROG_STATO_ELABORAZIONE_ID` AS `PROG_STATO_ELABORAZIONE_ID`,`vl_messaggio_in`.`DATA_RICEZIONE` AS `DATA_RICEZIONE`,`vl_messaggio_in`.`ID_MSG_APP` AS `ID_MSG_APP`,`vl_messaggio_in`.`COD_MITT` AS `COD_MITT`,`vl_messaggio_in`.`PROG_SIST_GIOCO_DEST_ID` AS `PROG_SIST_GIOCO_DEST_ID` from `vl_messaggio_in` where `vl_messaggio_in`.`DATA_RICEZIONE` >= date_format(current_timestamp(),'%Y-%m-%d');

-- Dump della struttura di vista c6msg.vl_messaggio_out_oggi
-- Rimozione temporanea di tabella e creazione della struttura finale della vista
CREATE ALGORITHM=UNDEFINED DEFINER=`nbattista`@`%` SQL SECURITY DEFINER VIEW `vl_messaggio_out_oggi` AS select `vl_messaggio_out`.`PROG_MESSAGGIO_OUT_ID` AS `PROG_MESSAGGIO_OUT_ID`,`vl_messaggio_out`.`PROG_TIPO_MSG_ID` AS `PROG_TIPO_MSG_ID`,`vl_messaggio_out`.`PROG_STATO_ELABORAZIONE_ID` AS `PROG_STATO_ELABORAZIONE_ID`,`vl_messaggio_out`.`DATA_TRASMISSIONE` AS `DATA_TRASMISSIONE`,`vl_messaggio_out`.`ID_MSG_APP` AS `ID_MSG_APP`,`vl_messaggio_out`.`COD_MITT` AS `COD_MITT` from `vl_messaggio_out` where `vl_messaggio_out`.`DATA_TRASMISSIONE` >= date_format(current_timestamp(),'%Y-%m-%d');

-- Dump della struttura di vista c6msg.v_get_anomalia_msg_vlt_bot
-- Rimozione temporanea di tabella e creazione della struttura finale della vista
CREATE ALGORITHM=UNDEFINED DEFINER=`nbattista`@`%` SQL SECURITY DEFINER VIEW `v_get_anomalia_msg_vlt_bot` AS select case when `p`.`sistema` is null then 'AAMS' else `p`.`sistema` end AS `sistema`,`p`.`descrizione` AS `stato`,`p`.`Messaggio` AS `messaggio`,`p`.`numero_msg` AS `numero_msg` from (select `sg`.`DESCRIZIONE` AS `sistema`,count(distinct `mo`.`ID_MSG_APP`) AS `numero_msg`,`sout`.`DESCRIZIONE` AS `descrizione`,`sout`.`CODICE` AS `codice`,`tm`.`CODICE` AS `Messaggio` from (((((`c6msg`.`vl_messaggio_in_oggi` `mi` join `c6msg`.`vl_messaggio_out_oggi` `mo` on(`mi`.`ID_MSG_APP` = `mo`.`ID_MSG_APP` and `mi`.`PROG_TIPO_MSG_ID` = `mo`.`PROG_TIPO_MSG_ID`)) join `c6msg`.`vl_tipo_msg` `tm` on(`mi`.`PROG_TIPO_MSG_ID` = `tm`.`PROG_TIPO_MSG_ID`)) join `c6msg`.`vl_stato_elaborazione` `se` on(`mi`.`PROG_STATO_ELABORAZIONE_ID` = `se`.`PROG_STATO_ELABORAZIONE_ID`)) join `c6msg`.`vl_stato_elaborazione` `sout` on(`mo`.`PROG_STATO_ELABORAZIONE_ID` = `sout`.`PROG_STATO_ELABORAZIONE_ID`)) left join `c6msg`.`vl_sistema_gioco` `sg` on(`mi`.`PROG_SIST_GIOCO_DEST_ID` = `sg`.`PROG_SISTEMA_GIOCO_ID`)) where `mo`.`DATA_TRASMISSIONE` >= `mi`.`DATA_RICEZIONE` and `se`.`CODICE` = 6 and `sout`.`CODICE` in (8,11,15) and `tm`.`CODICE` not in ('500','501') and `tm`.`CODICE`  not like '000%' and !exists(select 1 from `c6msg`.`vl_messaggio_out_oggi` `mo2` where `mo2`.`DATA_TRASMISSIONE` >= date_format(current_timestamp(),'%Y-%m-%d') and `mo2`.`ID_MSG_APP` = `mo`.`ID_MSG_APP` and `mo2`.`PROG_TIPO_MSG_ID` = `mo`.`PROG_TIPO_MSG_ID` and `mo2`.`DATA_TRASMISSIONE` > `mo`.`DATA_TRASMISSIONE` and `mo2`.`PROG_STATO_ELABORAZIONE_ID` in (10,12,13)) group by `sg`.`DESCRIZIONE`,`sg`.`PROG_SISTEMA_GIOCO_ID`,`sout`.`DESCRIZIONE`,`sout`.`CODICE`,`sg`.`CODICE_CONC`,`tm`.`CODICE` union all select `sg`.`DESCRIZIONE` AS `sistema`,count(distinct `mo`.`ID_MSG_APP`) AS `numero_msg`,'SLA_INVIATO_SENZA_RISPOSTA' AS `descrizione`,`sout`.`CODICE` AS `codice`,`tm`.`CODICE` AS `Messaggio` from (((((`c6msg`.`vl_messaggio_in_oggi` `mi` join `c6msg`.`vl_messaggio_out_oggi` `mo` on(`mi`.`ID_MSG_APP` = `mo`.`ID_MSG_APP` and `mi`.`PROG_TIPO_MSG_ID` = `mo`.`PROG_TIPO_MSG_ID`)) join `c6msg`.`vl_tipo_msg` `tm` on(`mi`.`PROG_TIPO_MSG_ID` = `tm`.`PROG_TIPO_MSG_ID`)) join `c6msg`.`vl_sistema_gioco` `sg` on(`mi`.`PROG_SIST_GIOCO_DEST_ID` = `sg`.`PROG_SISTEMA_GIOCO_ID`)) join `c6msg`.`vl_stato_elaborazione` `se` on(`mi`.`PROG_STATO_ELABORAZIONE_ID` = `se`.`PROG_STATO_ELABORAZIONE_ID`)) join `c6msg`.`vl_stato_elaborazione` `sout` on(`mo`.`PROG_STATO_ELABORAZIONE_ID` = `sout`.`PROG_STATO_ELABORAZIONE_ID`)) where `mo`.`DATA_TRASMISSIONE` >= `mi`.`DATA_RICEZIONE` and `mo`.`COD_MITT` = '0' and `se`.`CODICE` = 6 and round(24 * (current_timestamp() - `mi`.`DATA_RICEZIONE`),0) >= 3 and `sout`.`CODICE` = 10 and `tm`.`CODICE` in (210,101) and `mi`.`COD_MITT` = '0' and !exists(select 1 from `c6msg`.`vl_messaggio_in_oggi` `mi2` where `mi2`.`ID_MSG_APP` = `mo`.`ID_MSG_APP` and (`mi2`.`PROG_TIPO_MSG_ID` = `mo`.`PROG_TIPO_MSG_ID` or `mi2`.`PROG_TIPO_MSG_ID` = 40) and `mi2`.`DATA_RICEZIONE` >= `mo`.`DATA_TRASMISSIONE` and `mi2`.`PROG_STATO_ELABORAZIONE_ID` = 6 and `mi2`.`COD_MITT` = 'H') group by `sg`.`DESCRIZIONE`,`sg`.`PROG_SISTEMA_GIOCO_ID`,`sg`.`CODICE_CONC`,`sout`.`CODICE`,`tm`.`CODICE`) `p` order by `p`.`numero_msg` desc;


