2020-08-11 09:38:20 +02:00
-- Miglioramento della cache interna
CREATE TABLE IF NOT EXISTS ` zz_tasks ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` name ` VARCHAR ( 255 ) NOT NULL ,
` class ` TEXT NOT NULL ,
` expression ` VARCHAR ( 255 ) NOT NULL ,
2020-08-18 10:08:35 +02:00
` next_execution_at ` timestamp NULL ,
2020-08-11 09:38:20 +02:00
` last_executed_at ` timestamp NULL ,
PRIMARY KEY ( ` id ` )
) ENGINE = InnoDB ;
2020-08-27 17:28:53 +02:00
CREATE TABLE IF NOT EXISTS ` zz_tasks_logs ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_task ` int ( 11 ) ,
` level ` VARCHAR ( 255 ) NOT NULL ,
` message ` TEXT NOT NULL ,
` context ` TEXT NOT NULL ,
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_task ` ) REFERENCES ` zz_tasks ` ( ` id ` )
) ENGINE = InnoDB ;
2020-08-11 09:38:20 +02:00
INSERT INTO ` zz_cache ` ( ` id ` , ` name ` , ` content ` , ` valid_time ` , ` expire_at ` ) VALUES
2020-08-12 16:03:25 +02:00
( NULL , ' Ultima esecuzione del cron ' , ' ' , ' 1 month ' , NULL ) ,
2020-08-27 17:28:53 +02:00
( NULL , ' ID del cron ' , ' ' , ' 1 month ' , NULL ) ,
2020-08-28 14:10:43 +02:00
( NULL , ' Cron in esecuzione ' , ' ' , ' 1 month ' , NULL ) ,
2020-08-12 16:03:25 +02:00
( NULL , ' Disabilita cron ' , ' ' , ' 1 month ' , NULL ) ;
INSERT INTO ` zz_tasks ` ( ` id ` , ` name ` , ` class ` , ` expression ` , ` last_executed_at ` ) VALUES
2020-08-27 17:28:53 +02:00
( NULL , ' Backup automatico ' , ' Modules\\Backups\\BackupTask ' , ' 0 1 * * * ' , NULL ) ;
2020-08-12 16:03:25 +02:00
DELETE FROM ` zz_hooks ` WHERE ` class ` = ' Modules\\Backups\\BackupHook ' ;
2020-08-17 08:17:21 +02:00
-- Modifica dei Listini in Piani di sconto/rincaro
UPDATE ` zz_modules ` SET ` title ` = ' Piani di sconto/rincaro ' WHERE ` name ` = ' Listini ' ;
2020-08-25 17:38:10 +02:00
-- Aggiunto supporto ai prezzi per Articoli specifici per Anagrafica e range di quantità
CREATE TABLE IF NOT EXISTS ` mg_prezzi_articoli ` (
` id ` int ( 11 ) NOT NULL AUTO_INCREMENT ,
` id_articolo ` int ( 11 ) NOT NULL ,
` id_anagrafica ` int ( 11 ) ,
` minimo ` DECIMAL ( 15 , 6 ) ,
` massimo ` DECIMAL ( 15 , 6 ) ,
` prezzo_unitario ` DECIMAL ( 15 , 6 ) NOT NULL ,
` prezzo_unitario_ivato ` DECIMAL ( 15 , 6 ) NOT NULL ,
2020-08-26 15:12:22 +02:00
` dir ` VARCHAR ( 255 ) NOT NULL ,
2020-08-25 17:38:10 +02:00
PRIMARY KEY ( ` id ` ) ,
FOREIGN KEY ( ` id_articolo ` ) REFERENCES ` mg_articoli ` ( ` id ` ) ,
FOREIGN KEY ( ` id_anagrafica ` ) REFERENCES ` an_anagrafiche ` ( ` idanagrafica ` )
) ENGINE = InnoDB ;
UPDATE ` zz_plugins ` SET ` directory ` = ' dettagli_articolo ' , ` name ` = ' Dettagli articolo ' , ` title ` = ' Dettagli ' WHERE ` name ` = ' Fornitori Articolo ' ;
2020-08-27 11:10:55 +02:00
-- Modulo Giacenze sedi
INSERT INTO ` zz_modules ` ( ` id ` , ` name ` , ` title ` , ` directory ` , ` options ` , ` options2 ` , ` icon ` , ` version ` , ` compatibility ` , ` order ` , ` parent ` , ` default ` , ` enabled ` , ` use_notes ` , ` use_checklists ` ) VALUES ( NULL , ' Giacenze sedi ' , ' Giacenze sedi ' , ' giacenze_sedi ' , ' SELECT |select| FROM `mg_articoli`
LEFT OUTER JOIN an_anagrafiche ON mg_articoli . id_fornitore = an_anagrafiche . idanagrafica
LEFT OUTER JOIN co_iva ON mg_articoli . idiva_vendita = co_iva . id
LEFT OUTER JOIN (
SELECT SUM ( qta - qta_evasa ) AS qta_impegnata , idarticolo FROM or_righe_ordini
INNER JOIN or_ordini ON or_righe_ordini . idordine = or_ordini . id
WHERE idstatoordine IN ( SELECT id FROM or_statiordine WHERE completato = 0 )
GROUP BY idarticolo
) ordini ON ordini . idarticolo = mg_articoli . id
WHERE 1 = 1 AND ` mg_articoli ` . ` deleted_at ` IS NULL HAVING 2 = 2 AND ` Q . tà ` > 0 ORDER BY ` descrizione ` ' , '' , ' fa fa - angle - right ' , ' 2 . 4 . 18 ' , ' 2 . 4 . 18 ' , ' 5 ' , (SELECT id FROM zz_modules t WHERE t.name = ' Magazzino ' ), ' 1 ' , ' 1 ' , ' 1 ' , ' 0 ' );
INSERT INTO ` zz_views ` ( ` id ` , ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` format ` , ` search_inside ` , ` order_by ` , ` visible ` , ` summable ` , ` default ` ) VALUES
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' _link_module_ ' , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Articoli ' ) , ' 1 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 0 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' id ' , ' mg_articoli.id ' , ' 1 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 0 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' id ' , ' mg_articoli.id ' , ' 1 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 0 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Codice ' , ' mg_articoli.codice ' , ' 2 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 1 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Categoria ' , ' (SELECT `nome` FROM `mg_categorie` WHERE `id` = `id_categoria`) ' , ' 4 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 1 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Sottocategoria ' , ' (SELECT `nome` FROM `mg_categorie` WHERE `id` = `id_sottocategoria`) ' , ' 5 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 1 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Q.tà ' , ' (SELECT SUM(IF(mg_movimenti.idsede_azienda = |giacenze_sedi_idsede|, mg_movimenti.qta, IF(mg_movimenti.idsede_controparte = |giacenze_sedi_idsede|, -mg_movimenti.qta, 0))) FROM mg_movimenti LEFT JOIN an_sedi ON an_sedi.id = mg_movimenti.idsede_azienda WHERE mg_movimenti.idarticolo=mg_articoli.id) ' , ' 9 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 1 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Descrizione ' , ' mg_articoli.descrizione ' , ' 1 ' , ' 1 ' , ' 0 ' , ' 0 ' , ' ' , ' ' , ' 1 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Fornitore ' , ' (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica` = `id_fornitore`) ' , ' 6 ' , ' 1 ' , ' 0 ' , ' 0 ' , NULL , NULL , ' 1 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Prezzo di acquisto ' , ' prezzo_acquisto ' , ' 6 ' , ' 1 ' , ' 0 ' , ' 1 ' , NULL , NULL , ' 1 ' , ' 1 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Prezzo di vendita ' , ' prezzo_vendita ' , ' 6 ' , ' 1 ' , ' 0 ' , ' 1 ' , NULL , NULL , ' 1 ' , ' 1 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Prezzo vendita ivato ' , ' IF( co_iva.percentuale IS NOT NULL, (mg_articoli.prezzo_vendita + mg_articoli.prezzo_vendita * co_iva.percentuale / 100), mg_articoli.prezzo_vendita + mg_articoli.prezzo_vendita*(SELECT co_iva.percentuale FROM co_iva INNER JOIN zz_settings ON co_iva.id=zz_settings.valore AND nome=\ ' Iva predefinita \ ' )/100 ) ' , ' 8 ' , ' 1 ' , ' 0 ' , ' 1 ' , ' ' , ' ' , ' 0 ' , ' 0 ' , ' 1 ' ) ,
( NULL , ( SELECT ` id ` FROM ` zz_modules ` WHERE ` name ` = ' Giacenze sedi ' ) , ' Barcode ' , ' mg_articoli.barcode ' , ' 2 ' , ' 1 ' , ' 0 ' , ' 0 ' , ' ' , ' ' , ' 1 ' , ' 0 ' , ' 1 ' ) ;
2020-08-28 13:51:15 +02:00
-- Aggiunta risorse API dedicate alle task in cron
INSERT INTO ` zz_api_resources ` ( ` id ` , ` version ` , ` type ` , ` resource ` , ` class ` , ` enabled ` ) VALUES
( NULL , ' v1 ' , ' retrieve ' , ' cron-logs ' , ' API\\Common\\Task ' , ' 1 ' ) ,
( NULL , ' v1 ' , ' create ' , ' cron-restart ' , ' API\\Common\\Task ' , ' 1 ' ) ;
2020-09-07 09:21:21 +02:00
-- Fix visualizzazione modulo Causali movimenti
UPDATE ` zz_views ` SET ` query ` = ' CONCAT(UCASE(LEFT(tipo_movimento, 1)), SUBSTRING(tipo_movimento, 2)) ' , ` name ` = ' Tipo ' WHERE ` zz_views ` . ` name ` = ' Movimento di carico ' AND id_module = ( SELECT id FROM zz_modules WHERE name = ' Causali movimenti ' ) ;
2020-09-07 16:22:12 +02:00
-- Aggiornamento versione API services
UPDATE ` zz_settings ` SET ` valore ` = ' v3 ' WHERE ` nome ` = ' OSMCloud Services API Version ' ;
2020-09-08 10:38:27 +02:00
-- Aggiunto collegamento con allegato per impostare la ricevuta principale
ALTER TABLE ` co_documenti ` ADD ` id_ricevuta_principale ` INT ( 11 ) ;
UPDATE ` co_documenti ` SET ` co_documenti ` . ` id_ricevuta_principale ` = (
SELECT ` zz_files ` . ` id ` FROM ` zz_files ` WHERE ` zz_files ` . ` id_module ` = (
SELECT ` zz_modules ` . ` id ` FROM ` zz_modules ` WHERE ` zz_modules ` . ` name ` = ' Fatture di vendita '
) AND ` zz_files ` . ` id_record ` = ` co_documenti ` . ` id `
AND ` zz_files ` . ` name ` LIKE ' Ricevuta% '
ORDER BY ` zz_files ` . ` created_at `
LIMIT 1
) ;
2020-09-08 11:38:25 +02:00
ALTER TABLE ` fe_stati_documento ` ADD ` is_generabile ` BOOLEAN DEFAULT FALSE ,
ADD ` is_inviabile ` BOOLEAN DEFAULT FALSE ,
ADD ` tipo ` varchar ( 255 ) NOT NULL ;
UPDATE ` fe_stati_documento ` SET ` is_generabile ` = ' 1 ' , ` is_inviabile ` = ' 1 ' WHERE ` codice ` = ' ERVAL ' ;
UPDATE ` fe_stati_documento ` SET ` is_generabile ` = ' 1 ' , ` is_inviabile ` = ' 1 ' WHERE ` codice ` = ' ERR ' ;
UPDATE ` fe_stati_documento ` SET ` is_generabile ` = ' 1 ' , ` is_inviabile ` = ' 1 ' WHERE ` codice ` = ' GEN ' ;
UPDATE ` fe_stati_documento ` SET ` is_generabile ` = ' 1 ' WHERE ` codice ` = ' NS ' ;
UPDATE ` fe_stati_documento ` SET ` is_generabile ` = ' 1 ' WHERE ` codice ` = ' EC02 ' ;
UPDATE ` fe_stati_documento ` SET ` tipo ` = ' danger ' ;
UPDATE ` fe_stati_documento ` SET ` tipo ` = ' warning ' WHERE ` codice ` IN ( ' ERVAL ' , ' MC ' , ' WAIT ' , ' NE ' ) ;
UPDATE ` fe_stati_documento ` SET ` tipo ` = ' success ' WHERE ` codice ` IN ( ' EC01 ' , ' RC ' ) ;
UPDATE ` fe_stati_documento ` SET ` tipo ` = ' info ' WHERE ` codice ` IN ( ' GEN ' ) ;