From 0d11c217bec8f77c9461c51c0458e6077981dccc Mon Sep 17 00:00:00 2001 From: MatteoPistorello Date: Fri, 26 Mar 2021 09:42:43 +0100 Subject: [PATCH] Aggiunta colonna is_fatturabile in ordini e ddt per il controllo sul pulsante crea dei relativi moduli --- modules/ddt/buttons.php | 15 +++++++++++++-- modules/ddt/src/DDT.php | 10 +++++++--- modules/ordini/buttons.php | 9 ++++++--- update/2_4_23.sql | 14 +++++++++++++- 4 files changed, 39 insertions(+), 9 deletions(-) diff --git a/modules/ddt/buttons.php b/modules/ddt/buttons.php index 3db6b3a02..b4508a4dd 100755 --- a/modules/ddt/buttons.php +++ b/modules/ddt/buttons.php @@ -19,9 +19,20 @@ include_once __DIR__.'/../../core.php'; +$stati = $dbo->fetchArray('SELECT descrizione FROM `dt_statiddt` WHERE `is_fatturabile` = 1'); +foreach($stati as $stato){ + $stati_importabili[] = $stato['descrizione']; +} + +$causali = $dbo->fetchArray('SELECT descrizione FROM `dt_causalet` WHERE `is_importabile` = 1'); +foreach($causali as $causale){ + $causali_importabili[] = $causale['descrizione']; +} + echo ' -
'Evaso, Parzialmente evaso, Parzialmente fatturato', +
implode(', ', $stati_importabili), + '_CAUSALE_LIST_' => implode(', ', $causali_importabili), ]).'"> diff --git a/modules/ddt/src/DDT.php b/modules/ddt/src/DDT.php index 3867e6c0a..1a1de25b1 100755 --- a/modules/ddt/src/DDT.php +++ b/modules/ddt/src/DDT.php @@ -126,12 +126,16 @@ class DDT extends Document public function isImportabile() { - $stati_non_importabili = ['Bozza', 'Fatturato']; - $database = database(); + $stati = $database->fetchArray('SELECT descrizione FROM `dt_statiddt` WHERE `is_fatturabile` = 1'); + foreach($stati as $stato){ + $stati_importabili[] = $stato['descrizione']; + } + + $causale = $database->fetchOne('SELECT * FROM `dt_causalet` WHERE `id` = '.prepare($this->idcausalet)); - return $causale['is_importabile'] && !in_array($this->stato->descrizione, $stati_non_importabili); + return $causale['is_importabile'] && in_array($this->stato->descrizione, $stati_importabili); } public function getReversedAttribute() diff --git a/modules/ordini/buttons.php b/modules/ordini/buttons.php index 9627d9c55..3d64202a7 100755 --- a/modules/ordini/buttons.php +++ b/modules/ordini/buttons.php @@ -19,13 +19,16 @@ include_once __DIR__.'/../../core.php'; -$stati_abilitati = ['Fatturato', 'Evaso', 'Bozza']; +$stati = $dbo->fetchArray('SELECT descrizione FROM `or_statiordine` WHERE `is_fatturabile` = 1'); +foreach($stati as $stato){ + $stati_importabili[] = $stato['descrizione']; +} echo '
implode(', ', $stati_abilitati), + '_STATE_LIST_' => implode(', ', $stati_importabili), ]).'"> - diff --git a/update/2_4_23.sql b/update/2_4_23.sql index 7585cff70..875e1166e 100644 --- a/update/2_4_23.sql +++ b/update/2_4_23.sql @@ -66,4 +66,16 @@ INSERT INTO `zz_api_resources` (`id`, `version`, `type`, `resource`, `class`, `e UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM mg_prezzi_articoli\n INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = mg_prezzi_articoli.id_anagrafica\n INNER JOIN mg_articoli ON mg_articoli.id = mg_prezzi_articoli.id_articolo\n LEFT JOIN mg_categorie AS categoria ON mg_articoli.id_categoria=categoria.id\n LEFT JOIN mg_categorie AS sottocategoria ON mg_articoli.id_sottocategoria=sottocategoria.id\nWHERE 1=1 AND mg_articoli.deleted_at IS NULL AND an_anagrafiche.deleted_at IS NULL\nHAVING 2=2\nORDER BY an_anagrafiche.ragione_sociale' WHERE `zz_modules`.`name` = 'Listini'; -- Cambiato title al plugin prezzi specifici -UPDATE `zz_plugins` SET `title` = 'Prezzi di listino' WHERE `zz_plugins`.`name` = 'Prezzi specifici articolo'; \ No newline at end of file +UPDATE `zz_plugins` SET `title` = 'Prezzi di listino' WHERE `zz_plugins`.`name` = 'Prezzi specifici articolo'; + +-- Impostati stati fatturabili in ddt e ordini +ALTER TABLE `or_statiordine` ADD `is_fatturabile` TINYINT(1) NOT NULL AFTER `completato`; +ALTER TABLE `dt_statiddt` ADD `is_fatturabile` TINYINT(1) NOT NULL AFTER `completato`; + +UPDATE `or_statiordine` SET `is_fatturabile` = '1' WHERE `or_statiordine`.`descrizione` = 'Evaso'; +UPDATE `or_statiordine` SET `is_fatturabile` = '1' WHERE `or_statiordine`.`descrizione` = 'Parzialmente evaso'; +UPDATE `or_statiordine` SET `is_fatturabile` = '1' WHERE `or_statiordine`.`descrizione` = 'Parzialmente fatturato'; +UPDATE `or_statiordine` SET `is_fatturabile` = '1' WHERE `or_statiordine`.`descrizione` = 'Accettato'; +UPDATE `dt_statiddt` SET `is_fatturabile` = '1' WHERE `dt_statiddt`.`descrizione` = 'Evaso'; +UPDATE `dt_statiddt` SET `is_fatturabile` = '1' WHERE `dt_statiddt`.`descrizione` = 'Parzialmente evaso'; +UPDATE `dt_statiddt` SET `is_fatturabile` = '1' WHERE `dt_statiddt`.`descrizione` = 'Parzialmente fatturato'; \ No newline at end of file