From a058f89f9a9dfc626a1989fbb9142fe7e2ca44d8 Mon Sep 17 00:00:00 2001 From: Pek5892 Date: Wed, 28 Feb 2024 10:16:03 +0100 Subject: [PATCH] Aggiunta tabella fe_modalita_pagamento_lang --- modules/pagamenti/add.php | 2 +- modules/pagamenti/edit.php | 2 +- plugins/importFE/generate.php | 2 +- templates/fatture/footer.php | 2 +- update/2_4_55.sql | 51 ++++++++++++++++++++++++----------- update/tables.php | 1 + 6 files changed, 41 insertions(+), 19 deletions(-) diff --git a/modules/pagamenti/add.php b/modules/pagamenti/add.php index 3be6a6c1d..ab6bb58d4 100755 --- a/modules/pagamenti/add.php +++ b/modules/pagamenti/add.php @@ -29,7 +29,7 @@ include_once __DIR__.'/../../core.php';
- {[ "type": "select", "label": "", "name": "codice_modalita_pagamento_fe", "value": "", "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_modalita_pagamento", "required": 1 ]} + {[ "type": "select", "label": "", "name": "codice_modalita_pagamento_fe", "value": "", "values": "query=SELECT `codice` as id, CONCAT(`codice`, ' - ', `name`) AS descrizione FROM `fe_modalita_pagamento` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento_lang`.`id_record`=`fe_modalita_pagamento`.`codice` AND `fe_modalita_pagamento_lang`.`id_lang`=)", "required": 1 ]}
diff --git a/modules/pagamenti/edit.php b/modules/pagamenti/edit.php index ddf973710..f7ba52057 100755 --- a/modules/pagamenti/edit.php +++ b/modules/pagamenti/edit.php @@ -36,7 +36,7 @@ include_once __DIR__.'/../../core.php';
- {[ "type": "select", "label": "", "name": "codice_modalita_pagamento_fe", "value": "$codice_modalita_pagamento_fe$", "values": "query=SELECT codice as id, CONCAT(codice, ' - ', descrizione) AS descrizione FROM fe_modalita_pagamento", "required": 1, "help": "" ]} + {[ "type": "select", "label": "", "name": "codice_modalita_pagamento_fe", "value": "$codice_modalita_pagamento_fe$", "values": "query=SELECT `codice` as id, CONCAT(`codice`, ' - ', `name`) AS descrizione FROM `fe_modalita_pagamento` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento_lang`.`id_record`=`fe_modalita_pagamento`.`codice` AND `fe_modalita_pagamento_lang`.`id_lang`=)", "required": 1, "help": "" ]}
diff --git a/plugins/importFE/generate.php b/plugins/importFE/generate.php index 33fa7dadd..77dcd1856 100755 --- a/plugins/importFE/generate.php +++ b/plugins/importFE/generate.php @@ -201,7 +201,7 @@ if (!empty($pagamenti)) { // Scadenze di pagamento foreach ($rate as $rata) { - $descrizione = !empty($rata['ModalitaPagamento']) ? $database->fetchOne('SELECT descrizione FROM fe_modalita_pagamento WHERE codice = '.prepare($rata['ModalitaPagamento']))['descrizione'] : ''; + $descrizione = !empty($rata['ModalitaPagamento']) ? $database->fetchOne('SELECT `name` FROM `fe_modalita_pagamento` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento_lang`.`id_record`=`fe_modalita_pagamento`.`codice` AND `fe_modalita_pagamento_lang`.`id_lang`='.prepare(setting('Lingua')).') WHERE `codice` = '.prepare($rata['ModalitaPagamento']))['descrizione'] : ''; $data = !empty($rata['DataScadenzaPagamento']) ? FatturaElettronica::parseDate($rata['DataScadenzaPagamento']) : ''; echo ' diff --git a/templates/fatture/footer.php b/templates/fatture/footer.php index 99f31fea5..9a91ac047 100755 --- a/templates/fatture/footer.php +++ b/templates/fatture/footer.php @@ -73,7 +73,7 @@ echo " $rs2 = $dbo->fetchArray('SELECT * FROM `co_scadenziario` WHERE `iddocumento`='.prepare($id_record).' ORDER BY `scadenza` ASC'); if (!empty($rs2)) { for ($i = 0; $i < sizeof($rs2); ++$i) { - $pagamento = $dbo->fetchOne('SELECT `fe_modalita_pagamento`.`descrizione` FROM `co_pagamenti` INNER JOIN `fe_modalita_pagamento` ON `fe_modalita_pagamento`.`codice` = `co_pagamenti`.`codice_modalita_pagamento_fe` WHERE `co_pagamenti`.`id`='.$rs2[$i]['id_pagamento'])['descrizione']; + $pagamento = $dbo->fetchOne('SELECT `fe_modalita_pagamento_lang`.`name` FROM `co_pagamenti` INNER JOIN `fe_modalita_pagamento` ON `fe_modalita_pagamento`.`codice` = `co_pagamenti`.`codice_modalita_pagamento_fe` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento_lang`.`id_record`=`fe_modalita_pagamento`.`codice` AND `fe_modalita_pagamento_lang`.`id_lang`='.prepare(setting('Lingua')).') WHERE `co_pagamenti`.`id`='.$rs2[$i]['id_pagamento'])['descrizione']; echo ' diff --git a/update/2_4_55.sql b/update/2_4_55.sql index a36f9d946..2da332967 100644 --- a/update/2_4_55.sql +++ b/update/2_4_55.sql @@ -291,20 +291,6 @@ ALTER TABLE `co_pagamenti` ALTER TABLE `co_pagamenti_lang` ADD CONSTRAINT `co_pagamenti_lang_ibfk_1` FOREIGN KEY (`id_record`) REFERENCES `co_pagamenti`(`id`) ON DELETE CASCADE ON UPDATE RESTRICT; --- Allineamento vista Pagamenti -UPDATE `zz_modules` SET `options` = " -SELECT - |select| -FROM - `co_pagamenti` - LEFT JOIN (SELECT `fe_modalita_pagamento`.`codice`, CONCAT(`fe_modalita_pagamento`.`codice`, ' - ', `fe_modalita_pagamento`.`descrizione`) AS tipo FROM `fe_modalita_pagamento`) AS pagamenti ON `pagamenti`.`codice` = `co_pagamenti`.`codice_modalita_pagamento_fe` - LEFT JOIN `co_pagamenti_lang` ON (`co_pagamenti`.`id` = `co_pagamenti_lang`.`id_record` AND |lang|) -WHERE - 1=1 -GROUP BY - `co_pagamenti_lang`.`name` -HAVING - 2=2" WHERE `name` = 'Pagamenti'; UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`co_pagamenti_lang`.`name`' WHERE `zz_modules`.`name` = 'Pagamenti' AND `zz_views`.`name` = 'descrizione'; UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = 'COUNT(`co_pagamenti_lang`.`name`)' WHERE `zz_modules`.`name` = 'Pagamenti' AND `zz_views`.`name` = 'Rate'; UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`co_pagamenti`.`id`' WHERE `zz_modules`.`name` = 'Pagamenti' AND `zz_views`.`name` = 'id'; @@ -1149,4 +1135,39 @@ WHERE 1=1 AND `em_newsletters`.`deleted_at` IS NULL HAVING 2=2" WHERE `name` = 'Newsletter'; -UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`em_templates_lang`.`name`' WHERE `zz_modules`.`name` = 'Newsletter' AND `zz_views`.`name` = 'Template'; \ No newline at end of file +UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`em_templates_lang`.`name`' WHERE `zz_modules`.`name` = 'Newsletter' AND `zz_views`.`name` = 'Template'; + +-- Aggiunta tabella fe_modalita_pagamento_lang +CREATE TABLE IF NOT EXISTS `fe_modalita_pagamento_lang` ( + `id` int NOT NULL, + `id_lang` int NOT NULL, + `id_record` varchar(4) NOT NULL, + `name` VARCHAR(255) NOT NULL +); +ALTER TABLE `fe_modalita_pagamento_lang` + ADD PRIMARY KEY (`id`); + +ALTER TABLE `fe_modalita_pagamento_lang` + MODIFY `id` int NOT NULL AUTO_INCREMENT; + +INSERT INTO `fe_modalita_pagamento_lang` (`id`, `id_lang`, `id_record`, `name`) SELECT NULL, (SELECT `id` FROM `zz_langs` WHERE `iso_code` = 'it'), `codice`, `descrizione` FROM `fe_modalita_pagamento`; + +ALTER TABLE `fe_modalita_pagamento` + DROP `descrizione`; + +ALTER TABLE `fe_modalita_pagamento_lang` ADD CONSTRAINT `fe_modalita_pagamento_lang_ibfk_1` FOREIGN KEY (`id_record`) REFERENCES `fe_modalita_pagamento`(`codice`) ON DELETE CASCADE ON UPDATE RESTRICT; + +-- Allineamento vista Pagamenti +UPDATE `zz_modules` SET `options` = " +SELECT + |select| +FROM + `co_pagamenti` + LEFT JOIN (SELECT `fe_modalita_pagamento`.`codice`, CONCAT(`fe_modalita_pagamento`.`codice`, ' - ', `fe_modalita_pagamento_lang`.`name`) AS tipo FROM `fe_modalita_pagamento` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento`.`codice` = `fe_modalita_pagamento_lang`.`id_record` AND `fe_modalita_pagamento_lang`.|lang|)) AS pagamenti ON `pagamenti`.`codice` = `co_pagamenti`.`codice_modalita_pagamento_fe` + LEFT JOIN `co_pagamenti_lang` ON (`co_pagamenti`.`id` = `co_pagamenti_lang`.`id_record` AND `co_pagamenti_lang`.|lang|) +WHERE + 1=1 +GROUP BY + `co_pagamenti_lang`.`name` +HAVING + 2=2" WHERE `name` = 'Pagamenti'; \ No newline at end of file diff --git a/update/tables.php b/update/tables.php index 6f7d75c03..5c696c254 100755 --- a/update/tables.php +++ b/update/tables.php @@ -92,6 +92,7 @@ return [ 'em_newsletter_receiver', 'fe_causali_pagamento_ritenuta', 'fe_modalita_pagamento', + 'fe_modalita_pagamento_lang', 'fe_natura', 'fe_regime_fiscale', 'fe_stati_documento',