2019-07-12 12:40:13 +02:00
UPDATE ` zz_prints ` SET ` filename ` = ' Preventivo num. {numero} del {data} ' WHERE ` name ` = ' Preventivo (senza totali) ' ;
2019-07-29 16:54:20 +02:00
UPDATE ` zz_prints ` SET ` filename ` = ' Fattura num. {numero} del {data} ' WHERE ` name ` = ' Fattura di vendita (senza intestazione) ' ;
UPDATE ` zz_prints ` SET ` filename ` = ' Calendario ' WHERE ` name ` = ' Stampa calendario ' ;
2019-07-15 11:16:12 +02:00
DELETE FROM ` zz_plugins ` WHERE ` name ` = ' Pianificazione ordini di servizio ' ;
2019-07-15 16:53:18 +02:00
-- Aggiunta campo JSON per le informazioni aggiuntive FE
ALTER TABLE ` co_righe_documenti ` ADD ` dati_aggiuntivi_fe ` TEXT ;
UPDATE ` co_righe_documenti ` SET ` dati_aggiuntivi_fe ` = CONCAT ( ' {"tipo_cessione_prestazione":" ' , IFNULL ( tipo_cessione_prestazione , " " ) , ' ","riferimento_amministrazione":" ' , IFNULL ( riferimento_amministrazione , " " ) , ' ","data_inizio_periodo":" ' , IFNULL ( data_inizio_periodo , " " ) , ' ","data_fine_periodo":" ' , IFNULL ( data_fine_periodo , " " ) , ' "} ' ) ;
ALTER TABLE ` co_righe_documenti ` DROP ` tipo_cessione_prestazione ` , DROP ` riferimento_amministrazione ` , DROP ` data_inizio_periodo ` , DROP ` data_fine_periodo ` ;
2019-07-15 18:34:59 +02:00
ALTER TABLE ` co_documenti ` ADD ` dati_aggiuntivi_fe ` TEXT ;
2019-07-16 12:13:10 +02:00
-- Aggiunta stampe consuntivo costi per Preventivi e Contratti
INSERT INTO ` zz_prints ` ( ` id_module ` , ` name ` , ` title ` , ` filename ` , ` directory ` , ` options ` , ` icon ` , ` enabled ` , ` default ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) , ' Consuntivo contratto interno ' , ' Consuntivo contratto interno ' , ' Consuntivo interno contratto num. {numero} del {data} ' , ' contratti_cons ' , ' {"dir":"uscita"} ' , ' fa fa-print ' , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) , ' Consuntivo preventivo interno ' , ' Consuntivo preventivo interno ' , ' Consuntivo interno preventivo num. {numero} del {data} ' , ' preventivi_cons ' , ' {"dir":"uscita"} ' , ' fa fa-print ' , 1 , 1 ) ;
2019-07-16 15:43:15 +02:00
-- Reset password per gli utenti
ALTER TABLE ` zz_users ` ADD ` reset_token ` VARCHAR ( 255 ) ;
2019-09-27 11:24:05 +02:00
INSERT INTO ` zz_emails ` ( ` id ` , ` id_module ` , ` id_smtp ` , ` name ` , ` icon ` , ` subject ` , ` reply_to ` , ` cc ` , ` bcc ` , ` body ` , ` read_notify ` ) VALUES
2019-07-16 15:43:15 +02:00
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Utenti e permessi ' ) , 1 , ' Reset password ' , ' fa fa-envelope ' , ' Richiesta di reset password ' , ' ' , ' ' , ' ' , ' <p>Gentile {username},</p>\r\n<p>a seguito della richiesta di reimpostazione della password del Suo account è pregato di inserire la nuova password che desidera utilizzare al seguente link:</p>\r\n<p class="text-center"><a href="{reset_link}">{reset_link}</a></p>\r\n<p> </p><p>Se non sei il responsabile della richiesta in questione, contatta l '' amministratore il prima possibile per richiedere un cambio di username.</p>\r\n<p> </p>\r\n<p>Distinti saluti</p>\r\n ' , ' 0 ' ) ;
2019-07-17 18:30:35 +02:00
-- Relazione tra le righe dei documenti
ALTER TABLE ` co_righe_documenti ` ADD ` original_id ` int ( 11 ) , ADD ` original_type ` varchar ( 255 ) ;
ALTER TABLE ` or_righe_ordini ` ADD ` original_id ` int ( 11 ) , ADD ` original_type ` varchar ( 255 ) ;
ALTER TABLE ` dt_righe_ddt ` ADD ` original_id ` int ( 11 ) , ADD ` original_type ` varchar ( 255 ) ;
2019-07-18 09:42:51 +02:00
ALTER TABLE ` co_righe_contratti ` ADD ` abilita_serial ` tinyint ( 1 ) NOT NULL DEFAULT ' 0 ' ;
ALTER TABLE ` co_righe_preventivi ` ADD ` abilita_serial ` tinyint ( 1 ) NOT NULL DEFAULT ' 0 ' ;
--
-- Attenzione: da testare per il corretto aggiornamento dei dati.
--
2019-07-23 15:39:00 +02:00
--
-- Fatture
--
-- Collegamento Articoli
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` or_righe_ordini ` ON ` co_righe_documenti ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` co_righe_documenti ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Ordini\\Components\\Articolo ' WHERE ` co_righe_documenti ` . ` idarticolo ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-11-12 16:24:37 +01:00
UPDATE ` co_righe_documenti ` INNER JOIN ` dt_righe_ddt ` ON ` co_righe_documenti ` . ` idddt ` = ` dt_righe_ddt ` . ` idddt ` AND ` co_righe_documenti ` . ` descrizione ` = ` dt_righe_ddt ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` dt_righe_ddt ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` dt_righe_ddt ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\DDT\\Components\\Articolo ' WHERE ` co_righe_documenti ` . ` idarticolo ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_contratti ` ON ` co_righe_documenti ` . ` idcontratto ` = ` co_righe_contratti ` . ` idcontratto ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_contratti ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_contratti ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_contratti ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Contratti\\Components\\Articolo ' WHERE ` co_righe_documenti ` . ` idarticolo ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_preventivi ` ON ` co_righe_documenti ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Articolo ' WHERE ` co_righe_documenti ` . ` idarticolo ` ! = 0 ;
2019-07-18 09:42:51 +02:00
-- Collegamento Sconti
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` or_righe_ordini ` ON ` co_righe_documenti ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` co_righe_documenti ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Ordini\\Components\\Sconto ' WHERE ` co_righe_documenti ` . ` is_sconto ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-11-12 16:24:37 +01:00
UPDATE ` co_righe_documenti ` INNER JOIN ` dt_righe_ddt ` ON ` co_righe_documenti ` . ` idddt ` = ` dt_righe_ddt ` . ` idddt ` AND ` co_righe_documenti ` . ` descrizione ` = ` dt_righe_ddt ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` dt_righe_ddt ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` dt_righe_ddt ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\DDT\\Components\\Sconto ' WHERE ` co_righe_documenti ` . ` is_sconto ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_contratti ` ON ` co_righe_documenti ` . ` idcontratto ` = ` co_righe_contratti ` . ` idcontratto ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_contratti ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_contratti ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_contratti ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Contratti\\Components\\Sconto ' WHERE ` co_righe_documenti ` . ` is_sconto ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_preventivi ` ON ` co_righe_documenti ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Sconto ' WHERE ` co_righe_documenti ` . ` is_sconto ` ! = 0 ;
2019-07-18 09:42:51 +02:00
-- Collegamento Descrizioni
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` or_righe_ordini ` ON ` co_righe_documenti ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` co_righe_documenti ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Ordini\\Components\\Descrizione ' WHERE ` co_righe_documenti ` . ` is_descrizione ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-11-12 16:24:37 +01:00
UPDATE ` co_righe_documenti ` INNER JOIN ` dt_righe_ddt ` ON ` co_righe_documenti ` . ` idddt ` = ` dt_righe_ddt ` . ` idddt ` AND ` co_righe_documenti ` . ` descrizione ` = ` dt_righe_ddt ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` dt_righe_ddt ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` dt_righe_ddt ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\DDT\\Components\\Descrizione ' WHERE ` co_righe_documenti ` . ` is_descrizione ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_contratti ` ON ` co_righe_documenti ` . ` idcontratto ` = ` co_righe_contratti ` . ` idcontratto ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_contratti ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_contratti ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_contratti ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Contratti\\Components\\Descrizione ' WHERE ` co_righe_documenti ` . ` is_descrizione ` ! = 0 ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_preventivi ` ON ` co_righe_documenti ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Descrizione ' WHERE ` co_righe_documenti ` . ` is_descrizione ` ! = 0 ;
2019-07-18 09:42:51 +02:00
-- Collegamento Righe
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` or_righe_ordini ` ON ` co_righe_documenti ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` co_righe_documenti ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Ordini\\Components\\Riga ' WHERE ` co_righe_documenti ` . ` original_id ` IS NULL ;
2019-07-18 09:42:51 +02:00
2019-11-12 16:24:37 +01:00
UPDATE ` co_righe_documenti ` INNER JOIN ` dt_righe_ddt ` ON ` co_righe_documenti ` . ` idddt ` = ` dt_righe_ddt ` . ` idddt ` AND ` co_righe_documenti ` . ` descrizione ` = ` dt_righe_ddt ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` dt_righe_ddt ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` dt_righe_ddt ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\DDT\\Components\\Riga ' WHERE ` co_righe_documenti ` . ` original_id ` IS NULL ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_contratti ` ON ` co_righe_documenti ` . ` idcontratto ` = ` co_righe_contratti ` . ` idcontratto ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_contratti ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_contratti ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_contratti ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Contratti\\Components\\Riga ' WHERE ` co_righe_documenti ` . ` original_id ` IS NULL ;
2019-07-18 09:42:51 +02:00
2019-07-19 09:32:50 +02:00
UPDATE ` co_righe_documenti ` INNER JOIN ` co_righe_preventivi ` ON ` co_righe_documenti ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` co_righe_documenti ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` co_righe_documenti ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` co_righe_documenti ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` co_righe_documenti ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Riga ' WHERE ` co_righe_documenti ` . ` original_id ` IS NULL ;
2019-07-18 18:33:56 +02:00
2019-07-23 15:39:00 +02:00
--
-- DDT
--
-- Collegamento Articoli
UPDATE ` dt_righe_ddt ` INNER JOIN ` or_righe_ordini ` ON ` dt_righe_ddt ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` dt_righe_ddt ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` dt_righe_ddt ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` dt_righe_ddt ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` dt_righe_ddt ` . ` original_type ` = ' Modules\\Ordini\\Components\\Articolo ' WHERE ` dt_righe_ddt ` . ` idarticolo ` ! = 0 ;
-- Collegamento Sconti
UPDATE ` dt_righe_ddt ` INNER JOIN ` or_righe_ordini ` ON ` dt_righe_ddt ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` dt_righe_ddt ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` dt_righe_ddt ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` dt_righe_ddt ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` dt_righe_ddt ` . ` original_type ` = ' Modules\\Ordini\\Components\\Sconto ' WHERE ` dt_righe_ddt ` . ` is_sconto ` ! = 0 ;
-- Collegamento Descrizioni
UPDATE ` dt_righe_ddt ` INNER JOIN ` or_righe_ordini ` ON ` dt_righe_ddt ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` dt_righe_ddt ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` dt_righe_ddt ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` dt_righe_ddt ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` dt_righe_ddt ` . ` original_type ` = ' Modules\\Ordini\\Components\\Descrizione ' WHERE ` dt_righe_ddt ` . ` is_descrizione ` ! = 0 ;
-- Collegamento Righe
UPDATE ` dt_righe_ddt ` INNER JOIN ` or_righe_ordini ` ON ` dt_righe_ddt ` . ` idordine ` = ` or_righe_ordini ` . ` idordine ` AND ` dt_righe_ddt ` . ` descrizione ` = ` or_righe_ordini ` . ` descrizione ` AND ` dt_righe_ddt ` . ` idarticolo ` = ` or_righe_ordini ` . ` idarticolo ` SET ` dt_righe_ddt ` . ` original_id ` = ` or_righe_ordini ` . ` id ` , ` dt_righe_ddt ` . ` original_type ` = ' Modules\\Ordini\\Components\\Riga ' WHERE ` dt_righe_ddt ` . ` original_id ` IS NULL ;
--
-- Ordini
--
-- Collegamento Articoli
UPDATE ` or_righe_ordini ` INNER JOIN ` co_righe_preventivi ` ON ` or_righe_ordini ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` or_righe_ordini ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` or_righe_ordini ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` or_righe_ordini ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` or_righe_ordini ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Articolo ' WHERE ` or_righe_ordini ` . ` idarticolo ` ! = 0 ;
-- Collegamento Sconti
UPDATE ` or_righe_ordini ` INNER JOIN ` co_righe_preventivi ` ON ` or_righe_ordini ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` or_righe_ordini ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` or_righe_ordini ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` or_righe_ordini ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` or_righe_ordini ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Sconto ' WHERE ` or_righe_ordini ` . ` is_sconto ` ! = 0 ;
-- Collegamento Descrizioni
UPDATE ` or_righe_ordini ` INNER JOIN ` co_righe_preventivi ` ON ` or_righe_ordini ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` or_righe_ordini ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` or_righe_ordini ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` or_righe_ordini ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` or_righe_ordini ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Descrizione ' WHERE ` or_righe_ordini ` . ` is_descrizione ` ! = 0 ;
-- Collegamento Righe
UPDATE ` or_righe_ordini ` INNER JOIN ` co_righe_preventivi ` ON ` or_righe_ordini ` . ` idpreventivo ` = ` co_righe_preventivi ` . ` idpreventivo ` AND ` or_righe_ordini ` . ` descrizione ` = ` co_righe_preventivi ` . ` descrizione ` AND ` or_righe_ordini ` . ` idarticolo ` = ` co_righe_preventivi ` . ` idarticolo ` SET ` or_righe_ordini ` . ` original_id ` = ` co_righe_preventivi ` . ` id ` , ` or_righe_ordini ` . ` original_type ` = ' Modules\\Preventivi\\Components\\Riga ' WHERE ` or_righe_ordini ` . ` original_id ` IS NULL ;
2019-07-18 18:33:56 +02:00
-- Aggiunta foto utente
ALTER TABLE ` zz_users ` ADD ` image_file_id ` int ( 11 ) ;
UPDATE ` zz_modules ` SET ` enabled ` = 1 WHERE ` name ` = ' Utenti e permessi ' ;
2019-07-19 15:23:00 +02:00
-- Aggiornamento sistema API
CREATE TABLE IF NOT EXISTS ` zz_api_resources ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` version ` varchar ( 15 ) NOT NULL ,
` type ` ENUM ( ' create ' , ' retrieve ' , ' update ' , ' delete ' ) ,
` resource ` varchar ( 255 ) NOT NULL ,
` class ` varchar ( 255 ) NOT NULL ,
` enabled ` tinyint ( 1 ) NOT NULL ,
PRIMARY KEY ( ` id ` )
) ENGINE = InnoDB ;
DELETE FROM ` zz_settings ` WHERE ` nome ` = ' Tabelle escluse per la sincronizzazione API automatica ' ;
INSERT INTO ` zz_api_resources ` ( ` id ` , ` version ` , ` type ` , ` resource ` , ` class ` , ` enabled ` ) VALUES
( NULL , ' v1 ' , ' create ' , ' allegato ' , ' Api\\Common\\Allegato ' , ' 1 ' ) ,
2019-08-01 12:53:21 +02:00
( NULL , ' v1 ' , ' retrieve ' , ' clienti ' , ' Modules\\Anagrafiche\\API\\v1\\Anagrafiche ' , ' 1 ' ) ,
2019-07-19 15:23:00 +02:00
( NULL , ' v1 ' , ' retrieve ' , ' anagrafiche ' , ' Modules\\Anagrafiche\\API\\v1\\Anagrafiche ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' create ' , ' anagrafica ' , ' Modules\\Anagrafiche\\API\\v1\\Anagrafiche ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' update ' , ' anagrafica ' , ' Modules\\Anagrafiche\\API\\v1\\Anagrafiche ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' delete ' , ' anagrafica ' , ' Modules\\Anagrafiche\\API\\v1\\Anagrafiche ' , ' 1 ' ) ,
2019-08-01 12:53:21 +02:00
( NULL , ' v1 ' , ' retrieve ' , ' sedi ' , ' Modules\\Anagrafiche\\API\\v1\\Sedi ' , ' 1 ' ) ,
2019-07-19 15:23:00 +02:00
( NULL , ' v1 ' , ' create ' , ' movimento_articolo ' , ' Modules\\Articoli\\API\\v1\\Movimenti ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' articoli ' , ' Modules\\Articoli\\API\\v1\\Articoli ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' create ' , ' login ' , ' Modules\\Utenti\\API\\v1\\Login ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' create ' , ' logout ' , ' Modules\\Utenti\\API\\v1\\Logout ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' folder_size ' , ' Modules\\StatoServizi\\API\\v1\\FolderSize ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' tipi_intervento ' , ' Modules\\TipiIntervento\\API\\v1\\TipiInterventi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' stati_intervento ' , ' Modules\\StatiIntervento\\API\\v1\\StatiInterventi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' stati_preventivo ' , ' Modules\\StatiPreventivo\\API\\v1\\StatiPreventivi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' stati_contratto ' , ' Modules\\StatiContratto\\API\\v1\\StatiContratti ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' tipi_intervento ' , ' Modules\\Interventi\\API\\v1\\Interventi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' interventi ' , ' Modules\\Interventi\\API\\v1\\Interventi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' create ' , ' intervento ' , ' Modules\\Interventi\\API\\v1\\Interventi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' update ' , ' intervento ' , ' Modules\\Interventi\\API\\v1\\Interventi ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' update ' , ' firma_intervento ' , ' Modules\\Interventi\\API\\v1\\Firma ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' sync ' , ' Modules\\Interventi\\API\\v1\\Sync ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' update ' , ' sync ' , ' Modules\\Interventi\\API\\v1\\Sync ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' sessioni_intervento ' , ' Modules\\Interventi\\API\\v1\\Sessioni ' , ' 1 ' ) ,
2019-08-01 15:43:19 +02:00
( NULL , ' v1 ' , ' create ' , ' sessione ' , ' Modules\\Interventi\\API\\v1\\Sessioni ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' delete ' , ' sessioni_intervento ' , ' Modules\\Interventi\\API\\v1\\Sessioni ' , ' 1 ' ) ,
2019-07-19 15:23:00 +02:00
( NULL , ' v1 ' , ' retrieve ' , ' articoli_intervento ' , ' Modules\\Interventi\\API\\v1\\Articoli ' , ' 1 ' ) ,
2019-09-16 17:40:53 +02:00
( NULL , ' v1 ' , ' create ' , ' articolo_intervento ' , ' Modules\\Interventi\\API\\v1\\Articoli ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' retrieve ' , ' stampa ' , ' Api\\Common\\Stampa ' , ' 1 ' ) ;
2019-07-19 17:58:03 +02:00
-- Supporto alla personalizzazione dell'API remota OSMCloud
INSERT INTO ` zz_settings ` ( ` id ` , ` nome ` , ` valore ` , ` tipo ` , ` editable ` , ` sezione ` , ` order ` ) VALUES
( NULL , ' OSMCloud Services API Version ' , ' v2 ' , ' string ' , 0 , ' Fatturazione Elettronica ' , 11 ) ;
DELETE FROM ` zz_settings ` WHERE ` nome ` = ' apilayer API key for Email ' ;
2019-07-22 12:52:48 +02:00
-- Fatture pro-forma di acquisto
2019-07-24 17:17:54 +02:00
INSERT INTO ` zz_segments ` ( ` id ` , ` id_module ` , ` name ` , ` clause ` , ` position ` , ` pattern ` , ` is_fiscale ` ) VALUES ( NULL , ' 15 ' , ' Fatture pro-forma ' , ' 1=1 ' , ' WHR ' , ' PRO-### ' , ' 0 ' ) ;
2019-07-22 16:13:38 +02:00
-- Aggiunto codice cig e codice cup per ddt
ALTER TABLE ` dt_ddt ` ADD ` codice_cig ` VARCHAR ( 15 ) , ADD ` codice_cup ` VARCHAR ( 15 ) AFTER ` codice_cig ` , ADD ` id_documento_fe ` VARCHAR ( 20 ) AFTER ` codice_cup ` , ADD ` num_item ` VARCHAR ( 15 ) AFTER ` id_documento_fe ` ;
2019-07-23 15:39:00 +02:00
-- Fix quantità per descrizioni
UPDATE ` co_righe_documenti ` SET ` qta ` = 1 WHERE ` is_descrizione ` = 1 ;
UPDATE ` dt_righe_ddt ` SET ` qta ` = 1 WHERE ` is_descrizione ` = 1 ;
UPDATE ` co_righe_preventivi ` SET ` qta ` = 1 WHERE ` is_descrizione ` = 1 ;
UPDATE ` co_righe_contratti ` SET ` qta ` = 1 WHERE ` is_descrizione ` = 1 ;
UPDATE ` or_righe_ordini ` SET ` qta ` = 1 WHERE ` is_descrizione ` = 1 ;
UPDATE ` mg_articoli_interventi ` SET ` qta ` = 1 WHERE ` is_descrizione ` = 1 ;
-- Aggiunta generale di prezzo_unitario_acquisto
ALTER TABLE ` dt_righe_ddt ` ADD ` prezzo_unitario_acquisto ` DECIMAL ( 12 , 4 ) NOT NULL AFTER ` descrizione ` ;
ALTER TABLE ` or_righe_ordini ` ADD ` prezzo_unitario_acquisto ` DECIMAL ( 12 , 4 ) NOT NULL AFTER ` descrizione ` ;
ALTER TABLE ` co_righe_contratti ` ADD ` prezzo_unitario_acquisto ` DECIMAL ( 12 , 4 ) NOT NULL AFTER ` descrizione ` ;
2019-07-24 18:26:30 +02:00
-- Fix query Scadenzario
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `co_scadenziario`
2019-07-26 18:05:19 +02:00
LEFT JOIN ` co_documenti ` ON ` co_scadenziario ` . ` iddocumento ` = ` co_documenti ` . ` id `
LEFT JOIN ` an_anagrafiche ` ON ` co_documenti ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
LEFT JOIN ` co_pagamenti ` ON ` co_documenti ` . ` idpagamento ` = ` co_pagamenti ` . ` id `
LEFT JOIN ` co_tipidocumento ` ON ` co_documenti ` . ` idtipodocumento ` = ` co_tipidocumento ` . ` id `
LEFT JOIN ` co_statidocumento ` ON ` co_documenti ` . ` idstatodocumento ` = ` co_statidocumento ` . ` id `
2019-08-26 10:11:04 +02:00
WHERE 1 = 1 AND
( ` co_scadenziario ` . ` scadenza ` BETWEEN ' ' | period_start | ' ' AND ' ' | period_end | ' ' OR ABS ( ` co_scadenziario ` . ` pagato ` ) < ABS ( ` co_scadenziario ` . ` da_pagare ` ) ) AND
( ` co_statidocumento ` . ` descrizione ` IS NULL OR ` co_statidocumento ` . ` descrizione ` IN ( ' ' Emessa ' ' , ' ' Parzialmente pagato ' ' ) )
2019-07-24 18:26:30 +02:00
HAVING 2 = 2
ORDER BY ` scadenza ` ASC ' WHERE `name` = ' Scadenzario ' ;
2019-07-25 14:49:24 +02:00
-- Aggiunte impostazione Autocomple web form
2019-10-16 11:11:09 +02:00
INSERT INTO ` zz_settings ` ( ` id ` , ` nome ` , ` valore ` , ` tipo ` , ` editable ` , ` sezione ` , ` order ` , ` help ` ) VALUES ( NULL , ' Autocompletamento form ' , ' off ' , ' list[on,off] ' , ' 1 ' , ' Generali ' , ' ' , NULL ) ;
2019-07-25 18:05:47 +02:00
-- Data concordata per le scadenza
ALTER TABLE ` co_scadenziario ` ADD ` data_concordata ` DATE ;
UPDATE ` zz_views ` SET ` query ` = ' IF(pagato = da_pagare, '' #38CD4E '' , IF(data_concordata IS NOT NULL AND data_concordata > NOW(), '' #CC9837 '' , IF(scadenza < NOW(), '' #CC4D37 '' , '' '' ))) ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Scadenzario ' ) AND ` name ` = ' _bg_ ' ;
2019-07-26 11:57:59 +02:00
-- Sistema di note interne
CREATE TABLE IF NOT EXISTS ` zz_notes ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_module ` int ( 11 ) ,
` id_plugin ` int ( 11 ) ,
` id_record ` int ( 11 ) NOT NULL ,
` id_utente ` int ( 11 ) NOT NULL ,
` notification_date ` DATE ,
` content ` TEXT ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_module ` ) REFERENCES ` zz_modules ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_plugin ` ) REFERENCES ` zz_plugins ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_utente ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
2019-07-26 16:24:20 +02:00
-- Sistema di checklists
2019-07-26 18:05:19 +02:00
CREATE TABLE IF NOT EXISTS ` zz_checks ` (
2019-07-26 16:24:20 +02:00
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_module ` int ( 11 ) ,
` id_plugin ` int ( 11 ) ,
` id_record ` int ( 11 ) NOT NULL ,
2019-07-30 16:50:10 +02:00
` created_by ` int ( 11 ) NOT NULL ,
2019-07-30 17:44:15 +02:00
` checked_by ` int ( 11 ) ,
2019-07-26 18:05:19 +02:00
` checked_at ` TIMESTAMP NULL ,
2019-07-26 16:24:20 +02:00
` content ` TEXT ,
` id_parent ` int ( 11 ) ,
2019-07-30 16:50:10 +02:00
` order ` int ( 11 ) ,
2019-07-26 16:24:20 +02:00
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_module ` ) REFERENCES ` zz_modules ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_plugin ` ) REFERENCES ` zz_plugins ` ( ` id ` ) ON DELETE CASCADE ,
2019-07-30 16:50:10 +02:00
FOREIGN KEY ( ` created_by ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE CASCADE ,
2019-07-30 17:44:15 +02:00
FOREIGN KEY ( ` checked_by ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE CASCADE ,
2019-07-26 18:05:19 +02:00
FOREIGN KEY ( ` id_parent ` ) REFERENCES ` zz_checks ` ( ` id ` ) ON DELETE CASCADE
2019-07-26 16:24:20 +02:00
) ENGINE = InnoDB ;
2019-07-30 16:50:10 +02:00
CREATE TABLE IF NOT EXISTS ` zz_check_user ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_utente ` int ( 11 ) NOT NULL ,
` id_check ` int ( 11 ) NOT NULL ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_utente ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_check ` ) REFERENCES ` zz_checks ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
2019-07-26 18:05:19 +02:00
CREATE TABLE IF NOT EXISTS ` zz_checklists ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` name ` varchar ( 255 ) ,
` id_module ` int ( 11 ) ,
` id_plugin ` int ( 11 ) ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_module ` ) REFERENCES ` zz_modules ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_plugin ` ) REFERENCES ` zz_plugins ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
CREATE TABLE IF NOT EXISTS ` zz_checklist_items ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_checklist ` int ( 11 ) ,
` content ` TEXT ,
` id_parent ` int ( 11 ) ,
2019-07-30 16:50:10 +02:00
` order ` int ( 11 ) ,
2019-07-26 18:05:19 +02:00
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_checklist ` ) REFERENCES ` zz_checklists ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_parent ` ) REFERENCES ` zz_checklist_items ` ( ` id ` ) ON DELETE CASCADE
2019-07-26 16:24:20 +02:00
) ENGINE = InnoDB ;
2019-07-29 13:16:55 +02:00
2019-07-30 16:50:10 +02:00
-- Gestione di note e checklists
ALTER TABLE ` zz_modules ` ADD ` use_notes ` BOOLEAN DEFAULT FALSE , ADD ` use_checklists ` BOOLEAN DEFAULT FALSE ;
UPDATE ` zz_modules ` SET ` use_notes ` = 1 WHERE ` name ` IN ( ' Anagrafiche ' , ' Interventi ' , ' Preventivi ' , ' Contratti ' , ' Fatture di vendita ' , ' Fatture di acquisto ' , ' Scadenzario ' , ' Ordini cliente ' , ' Ordini fornitore ' , ' Articoli ' , ' Ddt di vendita ' , ' Ddt di acquisto ' , ' MyImpianti ' ) ;
UPDATE ` zz_modules ` SET ` use_checklists ` = 1 WHERE ` name ` IN ( ' Interventi ' , ' MyImpianti ' ) ;
-- Modulo per i template delle Checklist
2019-09-24 10:09:29 +02:00
INSERT INTO ` zz_modules ` ( ` id ` , ` name ` , ` title ` , ` directory ` , ` options ` , ` options2 ` , ` icon ` , ` version ` , ` compatibility ` , ` order ` , ` parent ` , ` default ` , ` enabled ` ) VALUES ( NULL , ' Checklists ' , ' Checklists ' , ' checklists ' , ' SELECT |select| FROM `zz_checklists` WHERE 1=1 HAVING 2=2 ' , ' ' , ' fa fa-check-square-o ' , ' 2.4.11 ' , ' 2.* ' , ' 1 ' , ( SELECT ` id ` FROM ` zz_modules ` t WHERE t . ` name ` = ' Strumenti ' ) , ' 1 ' , ' 1 ' ) ;
2019-07-29 13:16:55 +02:00
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Checklists ' ) , ' id ' , ' id ' , 1 , 0 , 0 , 1 , 0 ) ,
2019-09-24 10:09:29 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Checklists ' ) , ' Nome ' , ' name ' , 2 , 1 , 0 , 1 , 1 ) ,
2019-07-29 13:16:55 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Checklists ' ) , ' Modulo ' , ' (SELECT name FROM zz_modules WHERE id = zz_checklists.id_module) ' , 5 , 1 , 0 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Checklists ' ) , ' Plugin ' , ' (SELECT name FROM zz_plugins WHERE id = zz_checklists.id_plugin) ' , 5 , 1 , 0 , 1 , 1 ) ;
2019-07-29 16:54:20 +02:00
-- Miglioramento gestione header e footer per le stampe
UPDATE ` zz_prints ` SET ` options ` = REPLACE ( ` options ` , " hide_header " , " hide-header " ) ;
UPDATE ` zz_prints ` SET ` options ` = REPLACE ( ` options ` , " hide_footer " , " hide-footer " ) ;
UPDATE ` zz_prints ` SET ` options ` = ' {"last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Fattura di vendita ' ;
UPDATE ` zz_prints ` SET ` options ` = ' {"hide-header": true, "hide-footer": true, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Fattura di vendita (senza intestazione) ' ;
2019-07-29 17:53:29 +02:00
UPDATE ` zz_prints ` SET ` options ` = ' {"pricing": true, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Ordine cliente ' ;
UPDATE ` zz_prints ` SET ` options ` = ' {"pricing": false, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Ordine cliente (senza costi) ' ;
UPDATE ` zz_prints ` SET ` options ` = ' {"pricing": true, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Preventivo ' ;
UPDATE ` zz_prints ` SET ` options ` = ' {"pricing": false, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Preventivo (senza costi) ' ;
UPDATE ` zz_prints ` SET ` options ` = ' {"pricing": true, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Contratto ' ;
UPDATE ` zz_prints ` SET ` options ` = ' {"pricing": false, "last-page-footer": true} ' WHERE ` zz_prints ` . ` name ` = ' Contratto (senza costi) ' ;
2019-07-30 16:50:10 +02:00
-- Widget per le notifiche delle note interne
INSERT INTO ` zz_widgets ` ( ` id ` , ` name ` , ` type ` , ` id_module ` , ` location ` , ` class ` , ` query ` , ` bgcolor ` , ` icon ` , ` print_link ` , ` more_link ` , ` more_link_type ` , ` php_include ` , ` text ` , ` enabled ` , ` order ` ) VALUES ( NULL , ' Note interne ' , ' custom ' , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Dashboard ' ) , ' controller_top ' , ' col-md-12 ' , NULL , ' #4ccc4c ' , ' fa fa-file-text-o ' , ' ' , ' ./modules/dashboard/widgets/notifiche.php ' , ' popup ' , ' ./modules/dashboard/widgets/notifiche.php ' , ' Notifiche interne ' , ' 1 ' , ' 1 ' ) ;
2019-07-31 11:52:13 +02:00
-- Aggiunto collegamento degli allegati al creatore
ALTER TABLE ` zz_files ` ADD ` created_by ` INT ( 11 ) AFTER ` id_record ` , ADD FOREIGN KEY ( ` created_by ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE SET NULL ;
2019-07-31 18:22:35 +02:00
-- Aggiunto riferimento allo Scadenzario nella Prima Nota
ALTER TABLE ` co_movimenti ` ADD ` id_scadenza ` INT ( 11 ) AFTER ` iddocumento ` , ADD FOREIGN KEY ( ` id_scadenza ` ) REFERENCES ` co_scadenziario ` ( ` id ` ) ON DELETE CASCADE , ADD ` is_insoluto ` BOOLEAN NOT NULL DEFAULT FALSE AFTER ` id_scadenza ` ;
2019-08-02 18:18:26 +02:00
-- Aggiornamento indirizzo email SDI
2019-09-27 11:24:05 +02:00
UPDATE ` zz_emails ` SET ` cc ` = ' sdi52@pec.fatturapa.it ' WHERE ` name ` = ' PEC ' ;
2019-08-26 10:25:19 +02:00
-- Rimozione Pianificazione fatturazione
DELETE FROM ` zz_plugins ` WHERE ` name ` = ' Pianificazione fatturazione ' ;
2019-08-26 11:10:59 +02:00
-- Aggiunta deleted_at su mg_articoli
ALTER TABLE ` mg_articoli ` ADD ` deleted_at ` timestamp NULL DEFAULT NULL ;
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `mg_articoli` WHERE 1=1 AND `deleted_at` IS NULL HAVING 2=2 ORDER BY `descrizione` ' WHERE ` name ` = ' Articoli ' ;
2019-08-26 18:02:05 +02:00
-- Ampliamento hooks
2019-08-29 10:25:14 +02:00
ALTER TABLE ` zz_hooks ` ADD ` processing_at ` TIMESTAMP NULL DEFAULT NULL , ADD ` processing_token ` varchar ( 255 ) ;
2019-08-26 18:02:05 +02:00
INSERT INTO ` zz_hooks ` ( ` id ` , ` name ` , ` class ` , ` frequency ` , ` id_module ` ) VALUES ( NULL , ' Backup ' , ' Modules\\Backups\\BackupHook ' , ' 1 day ' , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Backup ' ) ) ;
-- Miglioramento gestione email
2020-03-02 17:38:02 +01:00
RENAME TABLE ` zz_emails ` TO ` em_templates ` ;
RENAME TABLE ` zz_smtps ` TO ` em_accounts ` ;
RENAME TABLE ` zz_email_print ` TO ` em_print_template ` ;
2019-08-26 18:02:05 +02:00
2019-09-27 11:24:05 +02:00
UPDATE zz_modules SET options = REPLACE ( options , ' zz_emails ' , ' em_templates ' ) , options2 = REPLACE ( options2 , ' zz_emails ' , ' em_templates ' ) ;
2019-08-26 18:04:49 +02:00
UPDATE zz_modules SET options = REPLACE ( options , ' zz_smtps ' , ' em_accounts ' ) , options2 = REPLACE ( options2 , ' zz_smtps ' , ' em_accounts ' ) ;
2019-09-27 11:24:05 +02:00
UPDATE zz_views SET query = REPLACE ( query , ' zz_emails ' , ' em_templates ' ) ;
2019-08-26 18:04:49 +02:00
UPDATE zz_views SET query = REPLACE ( query , ' zz_smtps ' , ' em_accounts ' ) ;
2019-08-26 18:02:05 +02:00
2019-08-29 10:25:14 +02:00
CREATE TABLE IF NOT EXISTS ` em_newsletters ` (
2019-08-26 18:02:05 +02:00
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` name ` varchar ( 255 ) NOT NULL ,
` id_template ` int ( 11 ) NOT NULL ,
` state ` varchar ( 25 ) NOT NULL ,
2019-08-27 17:25:52 +02:00
` subject ` varchar ( 255 ) NOT NULL ,
` content ` TEXT NOT NULL ,
2019-08-29 10:25:14 +02:00
` notes ` TEXT ,
2019-08-27 17:25:52 +02:00
` created_by ` int ( 11 ) NOT NULL ,
2019-08-26 18:02:05 +02:00
` completed_at ` TIMESTAMP NULL DEFAULT NULL ,
` deleted_at ` TIMESTAMP NULL DEFAULT NULL ,
PRIMARY KEY ( ` id ` ) ,
2019-08-27 17:25:52 +02:00
FOREIGN KEY ( ` id_template ` ) REFERENCES ` em_templates ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` created_by ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE CASCADE
2019-08-26 18:02:05 +02:00
) ENGINE = InnoDB ;
CREATE TABLE IF NOT EXISTS ` em_emails ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_account ` int ( 11 ) NOT NULL ,
` id_template ` int ( 11 ) ,
2019-08-29 10:25:14 +02:00
` id_newsletter ` int ( 11 ) ,
2019-08-26 18:02:05 +02:00
` id_record ` int ( 11 ) ,
` subject ` varchar ( 255 ) ,
` content ` TEXT ,
` options ` TEXT ,
` sent_at ` TIMESTAMP NULL DEFAULT NULL ,
2019-08-27 15:42:13 +02:00
` failed_at ` TIMESTAMP NULL DEFAULT NULL ,
2019-08-29 10:25:14 +02:00
` processing_at ` TIMESTAMP NULL DEFAULT NULL ,
2019-08-27 15:42:13 +02:00
` created_by ` int ( 11 ) NOT NULL ,
2019-08-26 18:02:05 +02:00
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_account ` ) REFERENCES ` em_accounts ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_template ` ) REFERENCES ` em_templates ` ( ` id ` ) ON DELETE CASCADE ,
2019-08-29 10:25:14 +02:00
FOREIGN KEY ( ` id_newsletter ` ) REFERENCES ` em_newsletters ` ( ` id ` ) ON DELETE CASCADE ,
2019-08-27 15:42:13 +02:00
FOREIGN KEY ( ` created_by ` ) REFERENCES ` zz_users ` ( ` id ` ) ON DELETE CASCADE
2019-08-26 18:02:05 +02:00
) ENGINE = InnoDB ;
2019-08-29 10:25:14 +02:00
CREATE TABLE IF NOT EXISTS ` em_email_receiver ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_email ` int ( 11 ) NOT NULL ,
` type ` varchar ( 255 ) NOT NULL ,
` address ` varchar ( 255 ) NOT NULL ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_email ` ) REFERENCES ` em_emails ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
CREATE TABLE IF NOT EXISTS ` em_email_upload ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_email ` int ( 11 ) NOT NULL ,
` id_file ` int ( 11 ) NOT NULL ,
` name ` varchar ( 255 ) ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_email ` ) REFERENCES ` em_emails ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_file ` ) REFERENCES ` zz_files ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
CREATE TABLE IF NOT EXISTS ` em_email_print ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_email ` int ( 11 ) NOT NULL ,
` id_print ` int ( 11 ) NOT NULL ,
` name ` varchar ( 255 ) ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_email ` ) REFERENCES ` em_emails ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_print ` ) REFERENCES ` zz_prints ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
CREATE TABLE IF NOT EXISTS ` em_newsletter_anagrafica ` (
` id_newsletter ` int ( 11 ) NOT NULL ,
2019-08-26 18:02:05 +02:00
` id_anagrafica ` int ( 11 ) NOT NULL ,
` id_email ` int ( 11 ) ,
2019-08-29 10:25:14 +02:00
FOREIGN KEY ( ` id_newsletter ` ) REFERENCES ` em_newsletters ` ( ` id ` ) ON DELETE CASCADE ,
2019-08-26 18:02:05 +02:00
FOREIGN KEY ( ` id_anagrafica ` ) REFERENCES ` an_anagrafiche ` ( ` idanagrafica ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_email ` ) REFERENCES ` em_emails ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
2019-08-27 15:42:13 +02:00
2019-08-29 10:25:14 +02:00
-- Hook per la gestione della coda di invio
2019-08-28 11:52:04 +02:00
ALTER TABLE ` zz_hooks ` CHANGE ` id_module ` ` id_module ` INT ( 11 ) NULL ;
INSERT INTO ` zz_hooks ` ( ` id ` , ` name ` , ` class ` , ` frequency ` , ` id_module ` ) VALUES ( NULL , ' Email ' , ' Modules\\Emails\\EmailHook ' , ' 1 minute ' , NULL ) ;
2019-08-27 17:25:52 +02:00
2019-08-29 10:25:14 +02:00
-- Modulo Newsletter
2019-09-24 10:09:29 +02:00
INSERT INTO ` zz_modules ` ( ` id ` , ` name ` , ` title ` , ` directory ` , ` options ` , ` options2 ` , ` icon ` , ` version ` , ` compatibility ` , ` order ` , ` parent ` , ` default ` , ` enabled ` ) VALUES ( NULL , ' Newsletter ' , ' Newsletter ' , ' newsletter ' , ' SELECT |select| FROM `em_newsletters` WHERE 1=1 AND deleted_at IS NULL HAVING 2=2 ' , ' ' , ' fa fa-newspaper-o ' , ' 2.4.11 ' , ' 2.* ' , ' 1 ' , ( SELECT ` id ` FROM ` zz_modules ` t WHERE t . ` name ` = ' Gestione email ' ) , ' 1 ' , ' 1 ' ) ;
2019-08-27 17:25:52 +02:00
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Newsletter ' ) , ' id ' , ' id ' , 1 , 0 , 0 , 1 , 0 ) ,
2019-09-24 10:09:29 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Newsletter ' ) , ' Nome ' , ' name ' , 2 , 1 , 0 , 1 , 1 ) ,
2019-08-29 10:25:14 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Newsletter ' ) , ' Template ' , ' (SELECT name FROM em_templates WHERE id = em_newsletters.id_template) ' , 3 , 1 , 0 , 1 , 1 ) ,
2019-08-27 17:25:52 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Newsletter ' ) , ' Completato ' , ' IF(completed_at IS NULL, '' No '' , '' Si '' ) ' , 4 , 1 , 0 , 1 , 1 ) ;
2019-08-29 10:25:14 +02:00
-- Modulo Stato email
2019-09-19 18:22:20 +02:00
INSERT INTO ` zz_modules ` ( ` id ` , ` name ` , ` title ` , ` directory ` , ` options ` , ` options2 ` , ` icon ` , ` version ` , ` compatibility ` , ` order ` , ` parent ` , ` default ` , ` enabled ` ) VALUES ( NULL , ' Stato email ' , ' Coda di invio ' , ' stato_email ' , ' SELECT |select|
FROM ` em_emails `
LEFT JOIN ` em_templates ` ON ` em_templates ` . ` id ` = ` em_emails ` . ` id_template `
INNER JOIN ` zz_users ` ON ` zz_users ` . ` id ` = ` em_emails ` . ` created_by `
WHERE 1 = 1 AND ( ` em_emails ` . ` created_at ` BETWEEN ' ' | period_start | ' ' AND ' ' | period_end | ' ' OR ` em_emails ` . ` sent_at ` IS NULL )
HAVING 2 = 2
2019-09-24 10:09:29 +02:00
ORDER BY ` em_emails ` . ` created_at ` DESC ' , '' , ' fa fa - spinner ' , ' 2 . 4 . 11 ' , ' 2 . * ' , ' 1 ' , (SELECT `id` FROM `zz_modules` t WHERE t.`name` = ' Gestione email ' ), ' 1 ' , ' 1 ' );
2019-08-29 10:25:14 +02:00
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` default ` , ` visible ` , ` format ` ) VALUES
2019-10-03 11:24:58 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' id ' , ' em_emails.id ' , 1 , 0 , 0 , 1 , 0 , 0 ) ,
2019-09-24 10:09:29 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' Oggetto ' , ' em_emails.subject ' , 2 , 1 , 0 , 1 , 1 , 0 ) ,
2019-09-19 18:22:20 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' Contenuto ' , ' em_emails.content ' , 3 , 1 , 0 , 0 , 1 , 0 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' Template ' , ' em_templates.name ' , 3 , 1 , 0 , 1 , 1 , 0 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' Data invio ' , ' em_emails.sent_at ' , 4 , 1 , 0 , 1 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' Ultimo tentativo ' , ' em_emails.failed_at ' , 5 , 1 , 0 , 1 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' Utente ' , ' zz_users.username ' , 6 , 1 , 0 , 1 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stato email ' ) , ' _bg_ ' , ' IF(em_emails.sent_at IS NULL, IF(em_emails.failed_at IS NULL, '' #CC9837 '' , '' #CC4D37 '' ), '' #38CD4E '' ) ' , 6 , 1 , 0 , 0 , 0 , 0 ) ;
2019-08-29 10:25:14 +02:00
ALTER TABLE ` em_templates ` CHANGE ` id_smtp ` ` id_account ` INT ( 11 ) NOT NULL ;
ALTER TABLE ` em_print_template ` CHANGE ` id_email ` ` id_template ` INT ( 11 ) NOT NULL ;
2019-08-29 14:48:14 +02:00
ALTER TABLE ` em_accounts ` ADD ` timeout ` INT ( 11 ) NOT NULL DEFAULT 1000 ;
2019-08-29 15:09:01 +02:00
ALTER TABLE ` an_anagrafiche ` ADD ` enable_newsletter ` BOOLEAN DEFAULT TRUE ;
2019-08-29 16:01:49 +02:00
-- Aggiunta coda di invio per le Fatture Elettroniche
ALTER TABLE ` co_documenti ` ADD ` hook_send ` BOOLEAN DEFAULT FALSE ;
INSERT INTO ` zz_hooks ` ( ` id ` , ` name ` , ` class ` , ` frequency ` , ` id_module ` ) VALUES ( NULL , ' Fatture Elettroniche ' , ' Plugins\\ExportFE\\InvoiceHook ' , ' 1 minute ' , NULL ) ;
INSERT INTO ` fe_stati_documento ` ( ` codice ` , ` descrizione ` , ` icon ` ) VALUES
( ' ERR ' , ' Trasmissione non riuscita ' , ' fa fa-close ' ) ,
( ' QUEUE ' , ' In coda di elaborazione ' , ' fa fa-spinner ' ) ;
2019-09-06 10:20:20 +02:00
-- Ottimizzazione Fatture di vendita
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `co_documenti`
INNER JOIN ` an_anagrafiche ` ON ` co_documenti ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` co_tipidocumento ` ON ` co_documenti ` . ` idtipodocumento ` = ` co_tipidocumento ` . ` id `
INNER JOIN ` co_statidocumento ` ON ` co_documenti ` . ` idstatodocumento ` = ` co_statidocumento ` . ` id `
LEFT JOIN ` fe_stati_documento ` ON ` co_documenti ` . ` codice_stato_fe ` = ` fe_stati_documento ` . ` codice `
LEFT OUTER JOIN (
SELECT ` iddocumento ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` + ` rivalsainps ` - ` ritenutaacconto ` ) AS ` totale `
FROM ` co_righe_documenti `
GROUP BY ` iddocumento `
) AS righe ON ` co_documenti ` . ` id ` = ` righe ` . ` iddocumento `
LEFT JOIN (
SELECT ` numero_esterno ` , ` id_segment `
FROM ` co_documenti `
2019-09-13 10:07:54 +02:00
WHERE ` co_documenti ` . ` idtipodocumento ` IN ( SELECT ` id ` FROM ` co_tipidocumento ` WHERE ` dir ` = ' ' entrata ' ' ) | date_period ( ` co_documenti ` . ` data ` ) | AND ` numero_esterno ` ! = ' '' '
2019-09-06 10:20:20 +02:00
GROUP BY ` id_segment ` , ` numero_esterno `
HAVING COUNT ( ` numero_esterno ` ) > 1
) dup ON ` co_documenti ` . ` numero_esterno ` = ` dup ` . ` numero_esterno ` AND ` dup ` . ` id_segment ` = ` co_documenti ` . ` id_segment `
LEFT OUTER JOIN (
SELECT ` zz_operations ` . ` id_email ` , ` zz_operations ` . ` id_record `
FROM ` zz_operations `
INNER JOIN ` em_emails ` ON ` zz_operations ` . ` id_email ` = ` em_emails ` . ` id `
INNER JOIN ` em_templates ` ON ` em_emails ` . ` id_template ` = ` em_templates ` . ` id `
INNER JOIN ` zz_modules ` ON ` zz_operations ` . ` id_module ` = ` zz_modules ` . ` id `
WHERE ` zz_modules ` . ` name ` = ' ' Fatture di vendita ' ' AND ` zz_operations ` . ` op ` = ' ' send - email ' '
2019-10-29 11:31:48 +01:00
GROUP BY ` zz_operations ` . ` id_record `
2019-09-06 10:20:20 +02:00
) AS ` email ` ON ` email ` . ` id_record ` = ` co_documenti ` . ` id `
WHERE 1 = 1 AND ` dir ` = ' ' entrata ' ' | segment ( ` co_documenti ` . ` id_segment ` ) | | date_period ( ` co_documenti ` . ` data ` ) |
HAVING 2 = 2
ORDER BY ` co_documenti ` . ` data ` DESC , CAST ( ` co_documenti ` . ` numero_esterno ` AS UNSIGNED ) DESC ' WHERE `name` = ' Fatture di vendita ' ;
UPDATE ` zz_views ` SET ` query ` = ' righe.totale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di vendita ' ) AND ` name ` = ' Totale ' ;
2019-09-28 10:43:41 +02:00
UPDATE ` zz_views ` SET ` query ` = ' IF(`email`.`id_email` IS NOT NULL, '' fa fa-envelope text-success '' , '' '' ) ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di vendita ' ) AND ` name ` = ' icon_Inviata ' ;
UPDATE ` zz_views ` SET ` query ` = ' IF(`email`.`id_email` IS NOT NULL, '' Inviata via email '' , '' '' ) ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di vendita ' ) AND ` name ` = ' icon_title_Inviata ' ;
2019-09-06 10:20:20 +02:00
-- Ottimizzazione Fatture di acquisto
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `co_documenti`
INNER JOIN ` an_anagrafiche ` ON ` co_documenti ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` co_tipidocumento ` ON ` co_documenti ` . ` idtipodocumento ` = ` co_tipidocumento ` . ` id `
INNER JOIN ` co_statidocumento ` ON ` co_documenti ` . ` idstatodocumento ` = ` co_statidocumento ` . ` id `
LEFT OUTER JOIN (
SELECT ` iddocumento ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` + ` rivalsainps ` - ` ritenutaacconto ` ) AS ` totale `
FROM ` co_righe_documenti `
GROUP BY ` iddocumento `
) AS righe ON ` co_documenti ` . ` id ` = ` righe ` . ` iddocumento `
WHERE 1 = 1 AND ` dir ` = ' ' uscita ' ' | segment ( ` co_documenti ` . ` id_segment ` ) | | date_period ( ` co_documenti ` . ` data ` ) |
HAVING 2 = 2
ORDER BY ` co_documenti ` . ` data ` DESC , CAST ( IF ( ` co_documenti ` . ` numero_esterno ` = ' '' ' , ` co_documenti ` . ` numero ` , ` co_documenti ` . ` numero_esterno ` ) AS UNSIGNED ) DESC ' WHERE `name` = ' Fatture di acquisto ' ;
UPDATE ` zz_views ` SET ` query ` = ' righe.totale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di acquisto ' ) AND ` name ` = ' Totale ' ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di acquisto ' ) AND ` name ` = ' Ragione sociale ' ;
UPDATE ` zz_views ` SET ` query ` = ' co_statidocumento.icona ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di acquisto ' ) AND ` name ` = ' icon_Stato ' ;
UPDATE ` zz_views ` SET ` query ` = ' co_statidocumento.descrizione ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Fatture di acquisto ' ) AND ` name ` = ' icon_title_Stato ' ;
-- Ottimizzazione Contratti
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select|
FROM ` co_contratti `
INNER JOIN ` an_anagrafiche ` ON ` co_contratti ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` co_staticontratti ` ON ` co_contratti ` . ` idstato ` = ` co_staticontratti ` . ` id `
LEFT OUTER JOIN (
SELECT ` idcontratto ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` ) AS ` totale `
FROM ` co_righe_contratti `
GROUP BY ` idcontratto `
) AS righe ON ` co_contratti ` . ` id ` = ` righe ` . ` idcontratto `
LEFT OUTER JOIN (
SELECT GROUP_CONCAT ( CONCAT ( matricola , IF ( nome ! = ' '' ' , CONCAT ( ' ' - ' ' , nome ) , ' '' ' ) ) SEPARATOR ' ' < br > ' ' ) AS descrizione , my_impianti_contratti . idcontratto
FROM my_impianti
INNER JOIN my_impianti_contratti ON my_impianti . id = my_impianti_contratti . idimpianto
GROUP BY my_impianti_contratti . idcontratto
) AS impianti ON impianti . idcontratto = co_contratti . id
WHERE 1 = 1 | date_period ( custom , ' ' | period_start | ' ' > = ` data_bozza ` AND ' ' | period_start | ' ' < = ` data_conclusione ` , ' ' | period_end | ' ' > = ` data_bozza ` AND ' ' | period_end | ' ' < = ` data_conclusione ` , ` data_bozza ` > = ' ' | period_start | ' ' AND ` data_bozza ` < = ' ' | period_end | ' ' , ` data_conclusione ` > = ' ' | period_start | ' ' AND ` data_conclusione ` < = ' ' | period_end | ' ' , ` data_bozza ` > = ' ' | period_start | ' ' AND ` data_conclusione ` = ' ' 0000 - 00 - 00 ' ' ) |
HAVING 2 = 2
ORDER BY ` co_contratti ` . ` id ` DESC ' WHERE `name` = ' Contratti ' ;
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` format ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) , ' Totale ' , ' righe.totale ' , 5 , 1 , 1 , 1 , 1 ) ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) AND ` name ` = ' Cliente ' ;
UPDATE ` zz_views ` SET ` query ` = ' co_staticontratti.icona ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) AND ` name ` = ' icon_Stato ' ;
UPDATE ` zz_views ` SET ` query ` = ' co_staticontratti.descrizione ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) AND ` name ` = ' icon_title_Stato ' ;
UPDATE ` zz_views ` SET ` query ` = ' `co_contratti`.`id` ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) AND ` name ` = ' id ' ;
UPDATE ` zz_views ` SET ` query ` = ' `co_contratti`.`nome` ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) AND ` name ` = ' Nome ' ;
UPDATE ` zz_views ` SET ` query ` = ' impianti.descrizione ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Contratti ' ) AND ` name ` = ' Impianti ' ;
-- Ottimizzazione Preventivi
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select|
FROM ` co_preventivi `
INNER JOIN ` an_anagrafiche ` ON ` co_preventivi ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` co_statipreventivi ` ON ` co_preventivi ` . ` idstato ` = ` co_statipreventivi ` . ` id `
LEFT OUTER JOIN (
SELECT ` idpreventivo ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` ) AS ` totale `
FROM ` co_righe_preventivi `
GROUP BY ` idpreventivo `
) AS righe ON ` co_preventivi ` . ` id ` = ` righe ` . ` idpreventivo `
WHERE 1 = 1 | date_period ( custom , ' ' | period_start | ' ' > = ` data_bozza ` AND ' ' | period_start | ' ' < = ` data_conclusione ` , ' ' | period_end | ' ' > = ` data_bozza ` AND ' ' | period_end | ' ' < = ` data_conclusione ` , ` data_bozza ` > = ' ' | period_start | ' ' AND ` data_bozza ` < = ' ' | period_end | ' ' , ` data_conclusione ` > = ' ' | period_start | ' ' AND ` data_conclusione ` < = ' ' | period_end | ' ' , ` data_bozza ` > = ' ' | period_start | ' ' AND ` data_conclusione ` = ' ' 0000 - 00 - 00 ' ' ) |
HAVING 2 = 2
ORDER BY ` co_preventivi ` . ` id ` DESC ' WHERE `name` = ' Preventivi ' ;
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` format ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) , ' Totale ' , ' righe.totale ' , 5 , 1 , 1 , 1 , 1 ) ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) AND ` name ` = ' Cliente ' ;
UPDATE ` zz_views ` SET ` query ` = ' co_statipreventivi.icona ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) AND ` name ` = ' icon_Stato ' ;
UPDATE ` zz_views ` SET ` query ` = ' co_statipreventivi.descrizione ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) AND ` name ` = ' icon_title_Stato ' ;
UPDATE ` zz_views ` SET ` query ` = ' `co_preventivi`.`id` ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) AND ` name ` = ' id ' ;
UPDATE ` zz_views ` SET ` query ` = ' `co_preventivi`.`nome` ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Preventivi ' ) AND ` name ` = ' Nome ' ;
-- Ottimizzazione Ddt di acquisto
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `dt_ddt`
INNER JOIN ` an_anagrafiche ` ON ` dt_ddt ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` dt_tipiddt ` ON ` dt_ddt ` . ` idtipoddt ` = ` dt_tipiddt ` . ` id `
LEFT OUTER JOIN ` dt_causalet ` ON ` dt_ddt ` . ` idcausalet ` = ` dt_causalet ` . ` id `
LEFT OUTER JOIN ` dt_spedizione ` ON ` dt_ddt ` . ` idspedizione ` = ` dt_spedizione ` . ` id `
LEFT OUTER JOIN ` an_anagrafiche ` ` vettori ` ON ` dt_ddt ` . ` idvettore ` = ` vettori ` . ` idanagrafica `
LEFT OUTER JOIN ` an_sedi ` AS sedi ON ` dt_ddt ` . ` idsede_partenza ` = sedi . ` id `
LEFT OUTER JOIN ` an_sedi ` AS ` sedi_destinazione ` ON ` dt_ddt ` . ` idsede_destinazione ` = ` sedi_destinazione ` . ` id `
LEFT OUTER JOIN (
SELECT ` idddt ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` ) AS ` totale `
FROM ` dt_righe_ddt `
GROUP BY ` idddt `
) AS righe ON ` dt_ddt ` . ` id ` = ` righe ` . ` idddt `
WHERE 1 = 1 AND ` dir ` = ' ' uscita ' ' | date_period ( ` data ` ) |
HAVING 2 = 2
ORDER BY ` data ` DESC , CAST ( ` numero_esterno ` AS UNSIGNED ) DESC , ` dt_ddt ` . created_at DESC ' WHERE `name` = ' Ddt di acquisto ' ;
UPDATE ` zz_views ` SET ` query ` = ' righe.totale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ddt di acquisto ' ) AND ` name ` = ' Totale ' ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ddt di acquisto ' ) AND ` name ` = ' Ragione sociale ' ;
-- Ottimizzazione Ddt di vendita
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select|
FROM ` dt_ddt `
INNER JOIN ` an_anagrafiche ` ON ` dt_ddt ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` dt_tipiddt ` ON ` dt_ddt ` . ` idtipoddt ` = ` dt_tipiddt ` . ` id `
LEFT OUTER JOIN ` dt_causalet ` ON ` dt_ddt ` . ` idcausalet ` = ` dt_causalet ` . ` id `
LEFT OUTER JOIN ` dt_spedizione ` ON ` dt_ddt ` . ` idspedizione ` = ` dt_spedizione ` . ` id `
LEFT OUTER JOIN ` an_anagrafiche ` ` vettori ` ON ` dt_ddt ` . ` idvettore ` = ` vettori ` . ` idanagrafica `
LEFT OUTER JOIN ` an_sedi ` AS sedi ON ` dt_ddt ` . ` idsede_partenza ` = sedi . ` id `
LEFT OUTER JOIN ` an_sedi ` AS ` sedi_destinazione ` ON ` dt_ddt ` . ` idsede_destinazione ` = ` sedi_destinazione ` . ` id `
LEFT OUTER JOIN (
SELECT ` idddt ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` ) AS ` totale `
FROM ` dt_righe_ddt `
GROUP BY ` idddt `
) AS righe ON ` dt_ddt ` . ` id ` = ` righe ` . ` idddt `
WHERE 1 = 1 AND ` dir ` = ' ' entrata ' ' | date_period ( ` data ` ) |
HAVING 2 = 2
ORDER BY ` data ` DESC , CAST ( ` numero_esterno ` AS UNSIGNED ) DESC , ` dt_ddt ` . created_at DESC ' WHERE `name` = ' Ddt di vendita ' ;
UPDATE ` zz_views ` SET ` query ` = ' righe.totale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ddt di vendita ' ) AND ` name ` = ' Totale ' ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ddt di vendita ' ) AND ` name ` = ' Ragione sociale ' ;
-- Ottimizzazione Ordini cliente
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select|
FROM ` or_ordini `
INNER JOIN ` an_anagrafiche ` ON ` or_ordini ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` or_tipiordine ` ON ` or_ordini ` . ` idtipoordine ` = ` or_tipiordine ` . ` id `
LEFT OUTER JOIN (
SELECT ` idordine ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` ) AS ` totale `
FROM ` or_righe_ordini `
GROUP BY ` idordine `
) AS righe ON ` or_ordini ` . ` id ` = ` righe ` . ` idordine `
WHERE 1 = 1 AND ` dir ` = ' ' entrata ' ' | date_period ( ` data ` ) |
HAVING 2 = 2
ORDER BY ` data ` DESC , CAST ( ` numero_esterno ` AS UNSIGNED ) DESC ' WHERE `name` = ' Ordini cliente ' ;
UPDATE ` zz_views ` SET ` query ` = ' righe.totale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ordini cliente ' ) AND ` name ` = ' Totale ' ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ordini cliente ' ) AND ` name ` = ' Ragione sociale ' ;
-- Ottimizzazione Ordini fornitore
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select|
FROM ` or_ordini `
INNER JOIN ` an_anagrafiche ` ON ` or_ordini ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
INNER JOIN ` or_tipiordine ` ON ` or_ordini ` . ` idtipoordine ` = ` or_tipiordine ` . ` id `
LEFT OUTER JOIN (
SELECT ` idordine ` , SUM ( ` subtotale ` - ` sconto ` + ` iva ` ) AS ` totale `
FROM ` or_righe_ordini `
GROUP BY ` idordine `
) AS righe ON ` or_ordini ` . ` id ` = ` righe ` . ` idordine `
WHERE 1 = 1 AND ` dir ` = ' ' uscita ' ' | date_period ( ` data ` ) |
HAVING 2 = 2
ORDER BY ` data ` DESC , CAST ( ` numero_esterno ` AS UNSIGNED ) DESC ' WHERE `name` = ' Ordini fornitore ' ;
UPDATE ` zz_views ` SET ` query ` = ' righe.totale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ordini fornitore ' ) AND ` name ` = ' Totale ' ;
UPDATE ` zz_views ` SET ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ordini fornitore ' ) AND ` name ` = ' Ragione sociale ' ;
2019-09-12 17:13:53 +02:00
-- Correzioni per gli ordini
INSERT INTO ` or_statiordine ` ( ` id ` , ` descrizione ` , ` annullato ` , ` icona ` , ` completato ` ) VALUES
( NULL , ' In attesa di conferma ' , ' 0 ' , ' fa fa-clock-o text-warning ' , ' 0 ' ) ,
( NULL , ' Accettato ' , ' 0 ' , ' fa fa-thumbs-up text-success ' , ' 0 ' ) ;
ALTER TABLE ` or_ordini ` ADD ` data_cliente ` DATE NULL DEFAULT NULL , ADD ` numero_cliente ` varchar ( 255 ) NULL DEFAULT NULL ;
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` format ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Ordini cliente ' ) , ' Numero ordine cliente ' , ' numero_cliente ' , 3 , 1 , 0 , 1 , 1 ) ;
2019-09-13 10:07:54 +02:00
-- Dichiarazioni d'Intento
CREATE TABLE IF NOT EXISTS ` co_dichiarazioni_intento ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_anagrafica ` int ( 11 ) NOT NULL ,
` data ` DATE NOT NULL ,
` numero_protocollo ` varchar ( 255 ) NOT NULL ,
` numero_progressivo ` varchar ( 255 ) NOT NULL ,
` data_inizio ` DATE NOT NULL ,
` data_fine ` DATE NOT NULL ,
` data_protocollo ` DATE NULL DEFAULT NULL ,
` data_emissione ` DATE NULL DEFAULT NULL ,
` massimale ` DECIMAL ( 12 , 4 ) NOT NULL ,
` totale ` DECIMAL ( 12 , 4 ) NOT NULL ,
` deleted_at ` timestamp NULL DEFAULT NULL ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_anagrafica ` ) REFERENCES ` an_anagrafiche ` ( ` idanagrafica ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
ALTER TABLE ` co_documenti ` ADD ` id_dichiarazione_intento ` int ( 11 ) , ADD FOREIGN KEY ( ` id_dichiarazione_intento ` ) REFERENCES ` co_dichiarazioni_intento ` ( ` id ` ) ON DELETE SET NULL ;
INSERT INTO ` zz_plugins ` ( ` id ` , ` name ` , ` title ` , ` idmodule_from ` , ` idmodule_to ` , ` position ` , ` script ` , ` enabled ` , ` default ` , ` order ` , ` compatibility ` , ` version ` , ` options2 ` , ` options ` , ` directory ` , ` help ` ) VALUES ( NULL , ' Dichiarazioni d '' Intento ' , ' Dichiarazioni d '' Intento ' , ( SELECT id FROM zz_modules WHERE name = ' Fatture di vendita ' ) , ( SELECT id FROM zz_modules WHERE name = ' Anagrafiche ' ) , ' tab ' , ' ' , ' 1 ' , ' 1 ' , ' 0 ' , ' ' , ' ' , NULL , ' { "main_query": [ { "type": "table", "fields": "Protocollo, Progressivo, Massimale, Totale, Data inizio, Data fine", "query": "SELECT id, numero_protocollo AS Protocollo, numero_progressivo AS Progressivo, DATE_FORMAT(data_inizio, '' %d/%m/%Y '' ) AS '' Data inizio '' , DATE_FORMAT(data_inizio, '' %d/%m/%Y '' ) AS '' Data fine '' , ROUND(massimale, 2) AS Massimale, ROUND(totale, 2) AS Totale FROM co_dichiarazioni_intento WHERE 1=1 AND deleted_at IS NULL AND id_anagrafica = |id_parent| HAVING 2=2 ORDER BY co_dichiarazioni_intento.id DESC"} ]} ' , ' dichiarazioni_intento ' , ' ' ) ;
2019-09-13 11:29:45 +02:00
INSERT INTO ` zz_settings ` ( ` id ` , ` nome ` , ` valore ` , ` tipo ` , ` editable ` , ` sezione ` , ` order ` ) VALUES
( NULL , ' Iva per lettere d '' intento ' , ' ' , ' query=SELECT id, descrizione FROM `co_iva` WHERE codice_natura_fe = '' N3 '' AND deleted_at IS NULL ORDER BY descrizione ASC ' , 1 , ' Fatturazione ' , 11 ) ;
2019-09-24 10:09:29 +02:00
-- Liste per le newsletter
CREATE TABLE IF NOT EXISTS ` em_lists ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` name ` varchar ( 255 ) NOT NULL ,
` description ` TEXT ,
` query ` TEXT ,
` deleted_at ` TIMESTAMP NULL DEFAULT NULL ,
PRIMARY KEY ( ` id ` )
) ENGINE = InnoDB ;
CREATE TABLE IF NOT EXISTS ` em_list_anagrafica ` (
` id_list ` int ( 11 ) NOT NULL ,
` id_anagrafica ` int ( 11 ) NOT NULL ,
FOREIGN KEY ( ` id_list ` ) REFERENCES ` em_newsletters ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_anagrafica ` ) REFERENCES ` an_anagrafiche ` ( ` idanagrafica ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
INSERT INTO ` zz_modules ` ( ` id ` , ` name ` , ` title ` , ` directory ` , ` options ` , ` options2 ` , ` icon ` , ` version ` , ` compatibility ` , ` order ` , ` parent ` , ` default ` , ` enabled ` ) VALUES ( NULL , ' Liste newsletter ' , ' Liste ' , ' liste_newsletter ' , ' SELECT |select| FROM `em_lists` WHERE deleted_at IS NULL AND 1=1 HAVING 2=2 ' , ' ' , ' fa fa-list ' , ' 2.4.11 ' , ' 2.* ' , ' 1 ' , ( SELECT ` id ` FROM ` zz_modules ` t WHERE t . ` name ` = ' Gestione email ' ) , ' 1 ' , ' 0 ' ) ;
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Liste newsletter ' ) , ' id ' , ' id ' , 1 , 0 , 0 , 1 , 0 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Liste newsletter ' ) , ' Nome ' , ' name ' , 2 , 1 , 0 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Liste newsletter ' ) , ' Descrizione ' , ' description ' , 3 , 1 , 0 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Liste newsletter ' ) , ' Dinamica ' , ' IF(query IS NULL, '' No '' , '' Si '' ) ' , 4 , 1 , 0 , 1 , 1 ) ;
2019-10-04 12:57:30 +02:00
2019-10-04 17:00:53 +02:00
UPDATE ` zz_prints ` SET ` is_record ` = ' 0 ' WHERE ` zz_prints ` . ` name ` = ' Inventario magazzino ' ;
-- Gestione permessi per le categorie documentali
ALTER TABLE ` zz_documenti ` RENAME TO ` do_documenti ` ;
ALTER TABLE ` zz_documenti_categorie ` RENAME TO ` do_categorie ` ;
CREATE TABLE IF NOT EXISTS ` do_permessi ` (
` id_categoria ` int ( 11 ) NOT NULL ,
` id_gruppo ` int ( 11 ) NOT NULL ,
FOREIGN KEY ( ` id_categoria ` ) REFERENCES ` do_categorie ` ( ` id ` ) ON DELETE CASCADE ,
FOREIGN KEY ( ` id_gruppo ` ) REFERENCES ` zz_groups ` ( ` id ` ) ON DELETE CASCADE
) ENGINE = InnoDB ;
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `do_categorie`
WHERE 1 = 1 AND ` deleted_at ` IS NULL AND
( SELECT ` idgruppo ` FROM ` zz_users ` WHERE ` id ` = | id_utente | ) IN ( SELECT ` id_gruppo ` FROM ` do_permessi ` WHERE ` id_categoria ` = ` do_categorie ` . ` id ` )
HAVING 2 = 2 ' WHERE `name` = ' Categorie documenti ' ;
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` default ` , ` visible ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Categorie documenti ' ) , ' id ' , ' id ' , 1 , 0 , 0 , 1 , 0 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Categorie documenti ' ) , ' Descrizione ' , ' descrizione ' , 2 , 0 , 0 , 1 , 1 ) ;
UPDATE ` zz_modules ` SET ` options ` = ' SELECT |select| FROM `do_documenti`
INNER JOIN ` do_categorie ` ON ` do_categorie ` . ` id ` = ` do_documenti ` . ` idcategoria `
WHERE 1 = 1 AND ` deleted_at ` IS NULL AND
( SELECT ` idgruppo ` FROM ` zz_users ` WHERE ` zz_users ` . ` id ` = | id_utente | ) IN ( SELECT ` id_gruppo ` FROM ` do_permessi ` WHERE ` id_categoria ` = ` do_documenti ` . ` idcategoria ` )
| date_period ( ` data ` ) |
HAVING 2 = 2 ' WHERE `name` = ' Gestione documentale ' ;
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` format ` , ` default ` , ` visible ` ) VALUES
2019-11-11 19:19:10 +01:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Gestione documentale ' ) , ' id ' , ' `do_documenti`.`id` ' , 1 , 0 , 0 , 1 , 0 ) ,
2019-10-04 17:00:53 +02:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Gestione documentale ' ) , ' Categoria ' , ' `do_categorie`.`descrizione` ' , 2 , 0 , 0 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Gestione documentale ' ) , ' Nome ' , ' `do_documenti`.`nome` ' , 3 , 0 , 0 , 1 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Gestione documentale ' ) , ' Data ' , ' `do_documenti`.`data` ' , 4 , 0 , 1 , 1 , 1 ) ;
2019-10-04 17:19:45 +02:00
-- Aggiornamento limite sui decimali
ALTER TABLE ` co_contratti ` CHANGE ` budget ` ` budget ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti ` CHANGE ` costo_diritto_chiamata ` ` costo_diritto_chiamata ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti ` CHANGE ` ore_lavoro ` ` ore_lavoro ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti ` CHANGE ` costo_orario ` ` costo_orario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti ` CHANGE ` costo_km ` ` costo_km ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti_tipiintervento ` CHANGE ` costo_ore ` ` costo_ore ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti_tipiintervento ` CHANGE ` costo_km ` ` costo_km ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti_tipiintervento ` CHANGE ` costo_dirittochiamata ` ` costo_dirittochiamata ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti_tipiintervento ` CHANGE ` costo_ore_tecnico ` ` costo_ore_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti_tipiintervento ` CHANGE ` costo_km_tecnico ` ` costo_km_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_contratti_tipiintervento ` CHANGE ` costo_dirittochiamata_tecnico ` ` costo_dirittochiamata_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_dichiarazioni_intento ` CHANGE ` massimale ` ` massimale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_dichiarazioni_intento ` CHANGE ` totale ` ` totale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_documenti ` CHANGE ` rivalsainps ` ` rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_documenti ` CHANGE ` iva_rivalsainps ` ` iva_rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_documenti ` CHANGE ` ritenutaacconto ` ` ritenutaacconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_documenti ` CHANGE ` bollo ` ` bollo ` decimal ( 12 , 6 ) ;
ALTER TABLE ` co_documenti ` CHANGE ` ritenuta_contributi ` ` ritenuta_contributi ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_movimenti ` CHANGE ` totale ` ` totale ` decimal ( 12 , 6 ) ;
ALTER TABLE ` co_preventivi ` CHANGE ` budget ` ` budget ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_preventivi ` CHANGE ` costo_diritto_chiamata ` ` costo_diritto_chiamata ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_preventivi ` CHANGE ` ore_lavoro ` ` ore_lavoro ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_preventivi ` CHANGE ` costo_orario ` ` costo_orario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_preventivi ` CHANGE ` costo_km ` ` costo_km ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_articoli ` CHANGE ` prezzo_acquisto ` ` prezzo_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_articoli ` CHANGE ` prezzo_vendita ` ` prezzo_vendita ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_articoli ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_articoli ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_articoli ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_righe ` CHANGE ` prezzo_vendita ` ` prezzo_vendita ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_righe ` CHANGE ` prezzo_acquisto ` ` prezzo_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_righe ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_righe ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_promemoria_righe ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` prezzo_unitario_acquisto ` ` prezzo_unitario_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` subtotale ` ` subtotale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` iva_indetraibile ` ` iva_indetraibile ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_contratti ` CHANGE ` qta_evasa ` ` qta_evasa ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` iva_indetraibile ` ` iva_indetraibile ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` prezzo_unitario_acquisto ` ` prezzo_unitario_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` subtotale ` ` subtotale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` ritenutaacconto ` ` ritenutaacconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` rivalsainps ` ` rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_documenti ` CHANGE ` qta_evasa ` ` qta_evasa ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` iva_indetraibile ` ` iva_indetraibile ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` prezzo_unitario_acquisto ` ` prezzo_unitario_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` subtotale ` ` subtotale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_righe_preventivi ` CHANGE ` qta_evasa ` ` qta_evasa ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` co_scadenziario ` CHANGE ` da_pagare ` ` da_pagare ` decimal ( 12 , 6 ) ;
ALTER TABLE ` co_scadenziario ` CHANGE ` pagato ` ` pagato ` decimal ( 12 , 6 ) ;
ALTER TABLE ` dt_ddt ` CHANGE ` rivalsainps ` ` rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_ddt ` CHANGE ` iva_rivalsainps ` ` iva_rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_ddt ` CHANGE ` ritenutaacconto ` ` ritenutaacconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_ddt ` CHANGE ` bollo ` ` bollo ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` iva_indetraibile ` ` iva_indetraibile ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` prezzo_unitario_acquisto ` ` prezzo_unitario_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` subtotale ` ` subtotale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` dt_righe_ddt ` CHANGE ` qta_evasa ` ` qta_evasa ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` ore ` ` ore ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` km ` ` km ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_ore_unitario ` ` prezzo_ore_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_km_unitario ` ` prezzo_km_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_ore_consuntivo ` ` prezzo_ore_consuntivo ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_km_consuntivo ` ` prezzo_km_consuntivo ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_dirittochiamata ` ` prezzo_dirittochiamata ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_ore_unitario_tecnico ` ` prezzo_ore_unitario_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_km_unitario_tecnico ` ` prezzo_km_unitario_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_ore_consuntivo_tecnico ` ` prezzo_ore_consuntivo_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_km_consuntivo_tecnico ` ` prezzo_km_consuntivo_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` prezzo_dirittochiamata_tecnico ` ` prezzo_dirittochiamata_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` scontokm ` ` scontokm ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_interventi_tecnici ` CHANGE ` scontokm_unitario ` ` scontokm_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_righe_interventi ` CHANGE ` prezzo_vendita ` ` prezzo_vendita ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_righe_interventi ` CHANGE ` prezzo_acquisto ` ` prezzo_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_righe_interventi ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_righe_interventi ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_righe_interventi ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tariffe ` CHANGE ` costo_ore ` ` costo_ore ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tariffe ` CHANGE ` costo_km ` ` costo_km ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tariffe ` CHANGE ` costo_dirittochiamata ` ` costo_dirittochiamata ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tariffe ` CHANGE ` costo_ore_tecnico ` ` costo_ore_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tariffe ` CHANGE ` costo_km_tecnico ` ` costo_km_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tariffe ` CHANGE ` costo_dirittochiamata_tecnico ` ` costo_dirittochiamata_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tipiintervento ` CHANGE ` costo_orario ` ` costo_orario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tipiintervento ` CHANGE ` costo_km ` ` costo_km ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tipiintervento ` CHANGE ` costo_diritto_chiamata ` ` costo_diritto_chiamata ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tipiintervento ` CHANGE ` costo_orario_tecnico ` ` costo_orario_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tipiintervento ` CHANGE ` costo_km_tecnico ` ` costo_km_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` in_tipiintervento ` CHANGE ` costo_diritto_chiamata_tecnico ` ` costo_diritto_chiamata_tecnico ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli ` CHANGE ` threshold_qta ` ` threshold_qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli ` CHANGE ` prezzo_acquisto ` ` prezzo_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli ` CHANGE ` prezzo_vendita ` ` prezzo_vendita ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli ` CHANGE ` peso_lordo ` ` peso_lordo ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli ` CHANGE ` volume ` ` volume ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli_interventi ` CHANGE ` prezzo_acquisto ` ` prezzo_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli_interventi ` CHANGE ` prezzo_vendita ` ` prezzo_vendita ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli_interventi ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli_interventi ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_articoli_interventi ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` mg_movimenti ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_ordini ` CHANGE ` rivalsainps ` ` rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_ordini ` CHANGE ` iva_rivalsainps ` ` iva_rivalsainps ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_ordini ` CHANGE ` ritenutaacconto ` ` ritenutaacconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` iva ` ` iva ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` iva_indetraibile ` ` iva_indetraibile ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` prezzo_unitario_acquisto ` ` prezzo_unitario_acquisto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` subtotale ` ` subtotale ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` sconto ` ` sconto ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` sconto_unitario ` ` sconto_unitario ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` qta ` ` qta ` decimal ( 12 , 6 ) NOT NULL ;
ALTER TABLE ` or_righe_ordini ` CHANGE ` qta_evasa ` ` qta_evasa ` decimal ( 12 , 6 ) NOT NULL ;
UPDATE ` zz_settings ` SET ` tipo ` = ' list[1,2,3,4,5] ' WHERE ` nome ` = ' Cifre decimali per importi ' ;
UPDATE ` zz_settings ` SET ` tipo ` = ' list[1,2,3,4,5] ' WHERE ` nome ` = ' Cifre decimali per quantità ' ;
2019-10-11 17:34:42 +02:00
-- Aggiunta percentuale combinata in listini
ALTER TABLE ` mg_listini ` ADD ` prc_combinato ` VARCHAR ( 255 ) ;
2019-10-29 16:29:59 +01:00
-- Aggiunto supporto ai tentativi di invio email
ALTER TABLE ` em_emails ` ADD ` attempt ` INT ( 11 ) NOT NULL DEFAULT 0 ;
2019-11-07 13:15:07 +01:00
-- Fix calcolo totale contratti in scadenza
UPDATE ` zz_widgets ` SET ` query ` = ' SELECT COUNT(id) AS dato,
DATEDIFF ( data_conclusione , NOW ( ) ) AS giorni_rimanenti ,
data_conclusione ,
ore_preavviso_rinnovo ,
giorni_preavviso_rinnovo ,
( SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica = co_contratti . idanagrafica ) AS ragione_sociale
FROM co_contratti WHERE
idstato IN ( SELECT id FROM co_staticontratti WHERE is_fatturabile = 1 ) AND
rinnovabile = 1 AND
YEAR ( data_conclusione ) > 1970 AND
( SELECT id FROM co_contratti contratti WHERE contratti . idcontratto_prev = co_contratti . id ) IS NULL
AND ( IFNULL ( ( ( SELECT SUM ( co_righe_contratti . qta ) FROM co_righe_contratti WHERE co_righe_contratti . um = \ ' ore\ ' AND co_righe_contratti . idcontratto = co_contratti . id ) - IFNULL ( ( SELECT SUM ( in_interventi_tecnici . ore ) FROM in_interventi_tecnici INNER JOIN in_interventi ON in_interventi_tecnici . idintervento = in_interventi . id WHERE in_interventi . id_contratto = co_contratti . id AND in_interventi . idstatointervento IN ( SELECT in_statiintervento . idstatointervento FROM in_statiintervento WHERE in_statiintervento . completato = 1 ) ) , 0 ) ) , 0 ) < ore_preavviso_rinnovo OR DATEDIFF ( data_conclusione , NOW ( ) ) < ABS ( giorni_preavviso_rinnovo ) )
ORDER BY giorni_rimanenti ASC , IFNULL ( ( ( SELECT SUM ( co_righe_contratti . qta ) FROM co_righe_contratti WHERE co_righe_contratti . um = \ ' ore\ ' AND co_righe_contratti . idcontratto = co_contratti . id ) - IFNULL ( ( SELECT SUM ( in_interventi_tecnici . ore ) FROM in_interventi_tecnici INNER JOIN in_interventi ON in_interventi_tecnici . idintervento = in_interventi . id WHERE in_interventi . id_contratto = co_contratti . id AND in_interventi . idstatointervento IN ( SELECT in_statiintervento . idstatointervento FROM in_statiintervento WHERE in_statiintervento . completato = 1 ) ) , 0 ) ) , 0 ) ASC ' WHERE `zz_widgets`.`name` = ' Contratti in scadenza ' ;
2019-11-08 14:58:49 +01:00
-- Aggiunta campo barcode per gli articoli
ALTER TABLE ` mg_articoli ` ADD ` barcode ` VARCHAR ( 255 ) ;
2019-11-12 18:45:52 +01:00
-- Aggiunta campo fornitore per gli articoli
ALTER TABLE ` mg_articoli ` ADD ` id_fornitore ` INT ( 11 ) NULL DEFAULT NULL ;
-- Aggiunta vista prezzo vendita e prezzo acquisto per gli articoli
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` format ` , ` summable ` , ` visible ` , ` default ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Articoli ' ) , ' Fornitore ' , ' (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica` = `id_fornitore`) ' , 6 , 1 , 0 , 0 , 0 , 0 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Articoli ' ) , ' Prezzo di acquisto ' , ' prezzo_acquisto ' , 6 , 1 , 0 , 1 , 1 , 0 , 1 ) ,
2019-11-13 22:11:12 +01:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Articoli ' ) , ' Prezzo di vendita ' , ' prezzo_vendita ' , 6 , 1 , 0 , 1 , 1 , 0 , 1 ) ;
2019-11-14 10:22:47 +01:00
-- Aggiunta flag can_delete per stati preventivi e contratti
ALTER TABLE ` co_statipreventivi ` ADD ` can_delete ` BOOLEAN NOT NULL DEFAULT TRUE ;
ALTER TABLE ` co_staticontratti ` ADD ` can_delete ` BOOLEAN NOT NULL DEFAULT TRUE ;
2019-11-13 22:11:12 +01:00
-- Imposto gli stati Bozza, In lavorazione e Concluso non eliminabili per stati preventivi e contratti
2019-11-15 15:55:44 +01:00
UPDATE ` co_statipreventivi ` SET ` can_delete ` = ' 0 ' WHERE ` co_statipreventivi ` . ` descrizione ` = ' Bozza ' ;
2019-11-14 10:22:47 +01:00
UPDATE ` co_statipreventivi ` SET ` can_delete ` = ' 0 ' WHERE ` co_statipreventivi ` . ` descrizione ` = ' In lavorazione ' ;
2019-11-15 15:55:44 +01:00
UPDATE ` co_staticontratti ` SET ` can_delete ` = ' 0 ' WHERE ` co_staticontratti ` . ` descrizione ` = ' Bozza ' ;
2019-11-14 10:22:47 +01:00
UPDATE ` co_staticontratti ` SET ` can_delete ` = ' 0 ' WHERE ` co_staticontratti ` . ` descrizione ` = ' In lavorazione ' ;
UPDATE ` co_staticontratti ` SET ` can_delete ` = ' 0 ' WHERE ` co_staticontratti ` . ` descrizione ` = ' Concluso ' ;
UPDATE ` co_staticontratti ` SET ` can_delete ` = ' 0 ' WHERE ` co_staticontratti ` . ` descrizione ` = ' Fatturato ' ;
2019-11-15 15:55:44 +01:00
UPDATE ` co_staticontratti ` SET ` can_delete ` = ' 0 ' WHERE ` co_staticontratti ` . ` descrizione ` = ' Parzialmente fatturato ' ;
2019-11-20 00:21:58 +01:00
2019-11-20 23:22:43 +01:00
ALTER TABLE ` an_sedi ` ADD ` note ` TEXT NULL DEFAULT NULL AFTER ` idzona ` ;
UPDATE ` zz_views ` SET ` query ` = ' codice ' WHERE ` zz_views ` . ` name ` = ' Codice ' AND ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Stati di intervento ' ) ;
UPDATE ` zz_views ` SET ` query ` = ' codice ' WHERE ` zz_views ` . ` name ` = ' Codice ' AND ` id_module ` = ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Tipi di intervento ' ) ;
2019-11-22 17:51:18 +01:00
UPDATE ` zz_modules ` SET ` icon ` = ' fa fa-angle-right ' WHERE ` zz_modules ` . ` name ` = ' Categorie documenti ' ;
UPDATE ` zz_widgets ` SET ` query ` = ' SELECT CONCAT_WS(" ", REPLACE(REPLACE(REPLACE(FORMAT(SUM(prezzo_acquisto*qta),2), ",", "#"), ".", ","), "#", "."), "€") AS dato FROM mg_articoli WHERE qta>0 AND deleted_at IS NULL ' WHERE ` zz_widgets ` . ` name ` = ' Valore magazzino ' ;
2019-11-22 18:25:33 +01:00
UPDATE ` zz_widgets ` SET ` query ` = ' SELECT CONCAT_WS(" ", REPLACE(REPLACE(REPLACE(FORMAT(SUM(qta),2), ",", "#"), ".", ","), "#", "."), "unità") AS dato FROM mg_articoli WHERE qta>0 AND deleted_at IS NULL ' WHERE ` zz_widgets ` . ` name ` = ' Articoli in magazzino ' ;
2019-11-29 18:21:31 +01:00
-- Fix accesso alla stampa dell'Inventario magazzino
2019-11-22 18:25:33 +01:00
UPDATE ` zz_prints ` SET ` is_record ` = ' 0 ' WHERE ` zz_prints ` . ` name ` = ' Inventario magazzino ' ;
2019-11-23 08:23:34 +01:00
2019-11-29 18:02:11 +01:00
UPDATE ` in_statiintervento ` SET ` can_delete ` = ' 0 ' , ` in_statiintervento ` . ` codice ` = ' TODO ' WHERE ` in_statiintervento ` . ` codice ` = ' DAP ' ;
-- Fix possibili problemi per data_registrazione e data_competenza
UPDATE ` co_documenti ` SET ` data_registrazione ` = NULL WHERE ` data_registrazione ` = ' 0000-00-00 ' ;
UPDATE ` co_documenti ` SET ` data_registrazione ` = ` data ` WHERE ` data_registrazione ` IS NULL AND idtipodocumento IN ( SELECT id FROM co_tipidocumento WHERE dir = ' uscita ' ) ;
UPDATE ` co_documenti ` SET ` data_competenza ` = ` data_registrazione ` WHERE ` data_competenza ` = ' 0000-00-00 ' OR ` data_competenza ` IS NULL ;