From 7fdf81dafaa49149247b28d9fd38d41919242789 Mon Sep 17 00:00:00 2001 From: Pek5892 Date: Tue, 27 Feb 2024 11:57:42 +0100 Subject: [PATCH] Aggiunta tabella dt_spedizione_lang --- modules/ddt/edit.php | 2 +- modules/fatture/edit.php | 2 +- modules/fatture/src/Fattura.php | 2 +- modules/spedizioni/actions.php | 26 ++++-- modules/spedizioni/init.php | 2 +- templates/ddt/init.php | 2 +- templates/fatture/init.php | 3 +- update/2_4_55.sql | 156 ++++++++++++++++++++------------ update/tables.php | 1 + 9 files changed, 124 insertions(+), 72 deletions(-) diff --git a/modules/ddt/edit.php b/modules/ddt/edit.php index 7f68c8939..ca465211d 100755 --- a/modules/ddt/edit.php +++ b/modules/ddt/edit.php @@ -360,7 +360,7 @@ echo '
- {[ "type": "select", "label": "", "name": "idspedizione", "placeholder": "-", "values": "query=SELECT id, descrizione, esterno FROM dt_spedizione ORDER BY descrizione ASC", "value": "$idspedizione$" ]} + {[ "type": "select", "label": "", "name": "idspedizione", "placeholder": "-", "values": "query=SELECT `dt_spedizione`.`id`, `dt_spedizione_lang`.`name` as `descrizione`, `esterno` FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione_lang`.`id_record` = `dt_spedizione`.`id` AND `dt_spedizione_lang`.`id_lang` = ) ORDER BY `name` ASC", "value": "$idspedizione$" ]}
diff --git a/modules/fatture/edit.php b/modules/fatture/edit.php index 483aef324..61db2c9c1 100755 --- a/modules/fatture/edit.php +++ b/modules/fatture/edit.php @@ -583,7 +583,7 @@ if ($record['descrizione_tipo'] == 'Fattura accompagnatoria di vendita') {
- {[ "type": "select", "label": "'.tr('Tipo di spedizione').'", "name": "idspedizione", "values": "query=SELECT id, descrizione, esterno FROM dt_spedizione ORDER BY descrizione ASC", "value": "$idspedizione$" ]} + {[ "type": "select", "label": "'.tr('Tipo di spedizione').'", "name": "idspedizione", "values": "query=SELECT `dt_spedizione`.`id`, `dt_spedizione_lang`.`name` as descrizione, `esterno` FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id` = `dt_spedizione_lang`.`id_record` AND `dt_spedizione_lang`.`id_lang` = '.prepare(setting('Lingua')).') ORDER BY `name` ASC", "value": "$idspedizione$" ]}
'; diff --git a/modules/fatture/src/Fattura.php b/modules/fatture/src/Fattura.php index 7cdb9ffd6..320cfe51c 100755 --- a/modules/fatture/src/Fattura.php +++ b/modules/fatture/src/Fattura.php @@ -220,7 +220,7 @@ class Fattura extends Document if ($tipo_documento->descrizione == 'Fattura accompagnatoria di vendita') { $model->idporto = database()->fetchOne('SELECT `id` FROM `dt_porto` WHERE `predefined` = 1')['id']; $model->idcausalet = database()->fetchOne('SELECT `id` FROM `dt_causalet` WHERE `predefined` = 1')['id']; - $model->idspedizione = database()->fetchOne('SELECT id FROM dt_spedizione WHERE predefined = 1')['id']; + $model->idspedizione = database()->fetchOne('SELECT `id` FROM `dt_spedizione` WHERE `predefined` = 1')['id']; } $model->save(); diff --git a/modules/spedizioni/actions.php b/modules/spedizioni/actions.php index 9fb925198..c55679413 100755 --- a/modules/spedizioni/actions.php +++ b/modules/spedizioni/actions.php @@ -23,19 +23,21 @@ switch (filter('op')) { case 'update': $descrizione = filter('descrizione'); $vettore = post('esterno'); + $predefined = post('predefined'); - if ($dbo->fetchNum('SELECT * FROM `dt_spedizione` WHERE `descrizione`='.prepare($descrizione).' AND `id`!='.prepare($id_record)) == 0) { - $predefined = post('predefined'); + if ($dbo->fetchNum('SELECT * FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id`=`dt_spedizione_lang`.`idrecord` AND `dt_spedizione_lang`.`id_lang`='.prepare(setting('Lingua')).') WHERE `name`='.prepare($descrizione).' AND `dt_spedizione`.`id`!='.prepare($id_record)) == 0) { if (!empty($predefined)) { - $dbo->query('UPDATE dt_spedizione SET predefined = 0'); + $dbo->query('UPDATE `dt_spedizione` SET `predefined` = 0'); } - $dbo->update('dt_spedizione', [ - 'descrizione' => $descrizione, 'predefined' => $predefined, 'esterno' => $vettore, ], ['id' => $id_record]); + $dbo->update('dt_spedizione_lang', [ + 'name' => $descrizione, + ], ['id_record' => $id_record, 'id_lang' => setting('Lingua')]); + flash()->info(tr('Salvataggio completato!')); } else { flash()->error(tr("E' giĆ  presente una tipologia di _TYPE_ con la stessa descrizione", [ @@ -47,12 +49,18 @@ switch (filter('op')) { case 'add': $descrizione = filter('descrizione'); - if ($dbo->fetchNum('SELECT * FROM `dt_spedizione` WHERE `descrizione`='.prepare($descrizione)) == 0) { + if ($dbo->fetchNum('SELECT * FROM `dt_spedizione_lang` WHERE `name`='.prepare($descrizione)) == 0) { $dbo->insert('dt_spedizione', [ - 'descrizione' => $descrizione, + 'predefined' => 0, ]); $id_record = $dbo->lastInsertedID(); + $dbo->insert('dt_spedizione_lang', [ + 'id_record' => $id_record, + 'id_lang' => setting('Lingua'), + 'name' => $descrizione, + ]); + flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [ '_TYPE_' => 'spedizione', ])); @@ -65,8 +73,8 @@ switch (filter('op')) { break; case 'delete': - $documenti = $dbo->fetchNum('SELECT id FROM dt_ddt WHERE idspedizione='.prepare($id_record).' - UNION SELECT id FROM co_documenti WHERE idspedizione='.prepare($id_record)); + $documenti = $dbo->fetchNum('SELECT `id` FROM `dt_ddt` WHERE `idspedizione`='.prepare($id_record).' + UNION SELECT `id` FROM `co_documenti` WHERE `idspedizione`='.prepare($id_record)); if (isset($id_record) && empty($documenti)) { $dbo->query('DELETE FROM `dt_spedizione` WHERE `id`='.prepare($id_record)); diff --git a/modules/spedizioni/init.php b/modules/spedizioni/init.php index 86d4bcb01..bbe0e811d 100755 --- a/modules/spedizioni/init.php +++ b/modules/spedizioni/init.php @@ -20,5 +20,5 @@ include_once __DIR__.'/../../core.php'; if (isset($id_record)) { - $record = $dbo->fetchOne('SELECT * FROM `dt_spedizione` WHERE id='.prepare($id_record)); + $record = $dbo->fetchOne('SELECT * FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id`=`dt_spedizione_lang`.`idrecord` AND `dt_spedizione_lang`.`id_lang`='.prepare(setting('Lingua')).') WHERE `dt_spedizione`.`id`='.prepare($id_record)); } diff --git a/templates/ddt/init.php b/templates/ddt/init.php index 845566128..8eb21f124 100755 --- a/templates/ddt/init.php +++ b/templates/ddt/init.php @@ -36,7 +36,7 @@ $pagamento = Pagamento::find($documento['idpagamento']); $causale = $dbo->fetchOne('SELECT * FROM `dt_causalet` LEFT JOIN `dt_causalet_lang` ON (`dt_causalet`.`id` = `dt_causalet_lang`.`id_record` AND `dt_causalet_lang`.`id_lang` ='.prepare(setting('Lingua')).') WHERE `dt_causalet`.`id` = '.prepare($documento['idcausalet'])); $porto = $dbo->fetchOne('SELECT * FROM `dt_porto` LEFT JOIN `dt_porto_lang` ON (`dt_porto`.`id` = `dt_porto_lang`.`id_record` AND `dt_porto_lang`.`id_lang` ='.prepare(setting('Lingua')).') WHERE `dt_porto`.`id` = '.prepare($documento['idporto'])); $aspetto_beni = $dbo->fetchOne('SELECT * FROM `dt_aspettobeni` LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni`.`id`=`dt_aspettobeni_lang`.`id_record` AND `dt_aspettobeni_lang`.`id_lang`='.prepare(setting('Lingua')).') WHERE `dt_aspettobeni`.`id` = '.prepare($documento['idaspettobeni'])); -$spedizione = $dbo->fetchOne('SELECT * FROM dt_spedizione WHERE id = '.prepare($documento['idspedizione'])); +$spedizione = $dbo->fetchOne('SELECT * FROM `dt_spedizione` LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione`.`id`=`dt_spedizione_lang`.`idrecord` AND `dt_spedizione_lang`.`id_lang`='.prepare(setting('Lingua')).') WHERE `dt_spedizione`.`id` = '.prepare($documento['idspedizione'])); $vettore = $dbo->fetchOne('SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica = '.prepare($documento['idvettore'])); diff --git a/templates/fatture/init.php b/templates/fatture/init.php index 26f70b21b..dc2c63d59 100755 --- a/templates/fatture/init.php +++ b/templates/fatture/init.php @@ -37,7 +37,7 @@ $record = $dbo->fetchOne('SELECT *, `dt_causalet_lang`.`name` AS causalet, `dt_porto_lang`.`name` AS porto, `dt_aspettobeni_lang`.`name` AS aspettobeni, - `dt_spedizione`.`descrizione` AS spedizione, + `dt_spedizione_lang`.`name` AS spedizione, `vettore`.`ragione_sociale` AS vettore, `co_banche`.`id` AS id_banca, `zz_segments`.`is_fiscale` AS is_fiscale, @@ -61,6 +61,7 @@ FROM LEFT JOIN `dt_aspettobeni` ON `dt_aspettobeni`.`id` = `co_documenti`.`idaspettobeni` LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni_lang`.`id_record` = `dt_aspettobeni`.`id` AND `dt_aspettobeni_lang`.`id_lang` = '.prepare(setting('Lingua')).') LEFT JOIN `dt_spedizione` ON `dt_spedizione`.`id` = `co_documenti`.`idspedizione` + LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione_lang`.`id_record` = `dt_spedizione`.`id` AND `dt_spedizione_lang`.`id_lang` = '.prepare(setting('Lingua')).') WHERE `co_documenti`.`id`='.prepare($id_record)); diff --git a/update/2_4_55.sql b/update/2_4_55.sql index 1e0e18778..c46dfa718 100644 --- a/update/2_4_55.sql +++ b/update/2_4_55.sql @@ -775,7 +775,7 @@ SELECT FROM `do_documenti` INNER JOIN `do_categorie` ON `do_categorie`.`id` = `do_documenti`.`idcategoria` - LEFT JOIN `do_categorie_lang` ON (`do_categorie_lang`.`id_record` = `do_categorie`.`id` AND `do_categorie_lang`.`id_lang` = |lang|) + LEFT JOIN `do_categorie_lang` ON (`do_categorie_lang`.`id_record` = `do_categorie`.`id` AND `do_categorie_lang`.|lang|) 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`) @@ -792,7 +792,7 @@ SELECT |select| FROM `do_categorie` - LEFT JOIN `do_categorie_lang` ON (`do_categorie_lang`.`id_record` = `do_categorie`.`id` AND `do_categorie_lang`.`id_lang` = |lang|) + LEFT JOIN `do_categorie_lang` ON (`do_categorie_lang`.`id_record` = `do_categorie`.`id` AND `do_categorie_lang`.|lang|) 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`) @@ -829,7 +829,7 @@ SELECT |select| FROM `dt_aspettobeni` - LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni_lang`.`id_record` = `dt_aspettobeni`.`id` AND `dt_aspettobeni_lang`.`id_lang` = |lang|) + LEFT JOIN `dt_aspettobeni_lang` ON (`dt_aspettobeni_lang`.`id_record` = `dt_aspettobeni`.`id` AND `dt_aspettobeni_lang`.|lang|) WHERE 1=1 HAVING @@ -865,7 +865,7 @@ SELECT |select| FROM `dt_causalet` - LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.`id_lang` = |lang|) + LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.|lang|) WHERE 1=1 AND `deleted_at` IS NULL HAVING @@ -873,59 +873,8 @@ HAVING UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet_lang`.`name`' WHERE `zz_modules`.`name` = 'Causali' AND `zz_views`.`name` = 'Descrizione'; UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet`.`id`' WHERE `zz_modules`.`name` = 'Causali' AND `zz_views`.`name` = 'id'; --- Allineamento vista Ddt di vendita -UPDATE `zz_modules` SET `options` = " -SELECT - |select| -FROM - `dt_ddt` - LEFT JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` - LEFT JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` - LEFT JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` - LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.`id_lang` = |lang|) - LEFT JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` - LEFT JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` - LEFT JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` - LEFT JOIN `an_sedi` AS `sedi_destinazione`ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` - LEFT JOIN (SELECT `idddt`, SUM(`subtotale` - `sconto`) AS `totale_imponibile`, SUM(`subtotale` - `sconto` + `iva`) AS `totale` FROM `dt_righe_ddt` GROUP BY `idddt`) AS righe ON `dt_ddt`.`id` = `righe`.`idddt` - LEFT JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` - LEFT JOIN (SELECT GROUP_CONCAT(DISTINCT 'Fattura ',`co_documenti`.`numero_esterno` SEPARATOR ', ') AS `info`, `co_righe_documenti`.`original_document_id` AS `idddt` FROM `co_documenti` INNER JOIN `co_righe_documenti` ON `co_documenti`.`id` = `co_righe_documenti`.`iddocumento` WHERE `original_document_type`='Modules\\DDT\\DDT' GROUP BY `original_document_id`) AS `fattura` ON `fattura`.`idddt` = `dt_ddt`.`id` - LEFT JOIN (SELECT COUNT(id) as emails, em_emails.id_record FROM em_emails INNER JOIN zz_operations ON zz_operations.id_email = em_emails.id WHERE id_module IN(SELECT id FROM zz_modules WHERE name = 'Ddt di vendita') AND `zz_operations`.`op` = 'send-email' GROUP BY id_record) AS `email` ON `email`.`id_record` = `dt_ddt`.`id` -WHERE - 1=1 |segment(`dt_ddt`.`id_segment`)| 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` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet_lang`.`name`' WHERE `zz_modules`.`name` = 'Ddt di vendita' AND `zz_views`.`name` = 'Causale'; --- Allineamento vista Ddt di acquisto -UPDATE `zz_modules` SET `options` = " -SELECT - |select| -FROM - `dt_ddt` - LEFT JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` - LEFT JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` - LEFT JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` - LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.`id_lang` = |lang|) - LEFT JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` - LEFT JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` - LEFT JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` - LEFT JOIN `an_sedi` AS `sedi_destinazione`ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` - LEFT JOIN(SELECT `idddt`, SUM(`subtotale` - `sconto`) AS `totale_imponibile`, SUM(`subtotale` - `sconto` + `iva`) AS `totale` FROM `dt_righe_ddt` GROUP BY `idddt`) AS righe ON `dt_ddt`.`id` = `righe`.`idddt` - LEFT JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` - LEFT JOIN (SELECT GROUP_CONCAT(DISTINCT 'Fattura ',`co_documenti`.`numero` SEPARATOR ', ') AS `info`, `co_righe_documenti`.`original_document_id` AS `idddt` FROM `co_documenti` INNER JOIN `co_righe_documenti` ON `co_documenti`.`id` = `co_righe_documenti`.`iddocumento` WHERE `original_document_type`='Modules\\DDT\\DDT' GROUP BY `original_document_id`) AS `fattura` ON `fattura`.`idddt` = `dt_ddt`.`id` -WHERE - 1=1 |segment(`dt_ddt`.`id_segment`)| 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` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_causalet_lang`.`name`' WHERE `zz_modules`.`name` = 'Ddt di acquisto' AND `zz_views`.`name` = 'Causale'; -- Aggiunta tabella dt_porto_lang @@ -956,10 +905,103 @@ SELECT |select| FROM `dt_porto` - LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.`id_lang` = |lang|) + LEFT JOIN `dt_porto_lang` ON (`dt_porto_lang`.`id_record` = `dt_porto`.`id` AND `dt_porto_lang`.|lang|) WHERE 1=1 HAVING 2=2" WHERE `name` = 'Porto'; UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_porto_lang`.`name`' WHERE `zz_modules`.`name` = 'Porto' AND `zz_views`.`name` = 'Descrizione'; -UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_porto`.`id`' WHERE `zz_modules`.`name` = 'Porto' AND `zz_views`.`name` = 'id'; \ 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` = '`dt_porto`.`id`' WHERE `zz_modules`.`name` = 'Porto' AND `zz_views`.`name` = 'id'; + +-- Aggiunta tabella dt_spedizione_lang +CREATE TABLE IF NOT EXISTS `dt_spedizione_lang` ( + `id` int NOT NULL, + `id_lang` int NOT NULL, + `id_record` int NOT NULL, + `name` VARCHAR(255) NOT NULL +); +ALTER TABLE `dt_spedizione_lang` + ADD PRIMARY KEY (`id`); + +ALTER TABLE `dt_spedizione_lang` + MODIFY `id` int NOT NULL AUTO_INCREMENT; + +INSERT INTO `dt_spedizione_lang` (`id`, `id_lang`, `id_record`, `name`) SELECT NULL, (SELECT `id` FROM `zz_langs` WHERE `iso_code` = 'it'), `id`, `descrizione` FROM `dt_spedizione`; + +ALTER TABLE `dt_spedizione` + DROP `descrizione`; + +ALTER TABLE `dt_spedizione` CHANGE `id` `id` INT NOT NULL AUTO_INCREMENT; + +ALTER TABLE `dt_spedizione_lang` ADD CONSTRAINT `dt_spedizione_lang_ibfk_1` FOREIGN KEY (`id_record`) REFERENCES `dt_spedizione`(`id`) ON DELETE CASCADE ON UPDATE RESTRICT; + +-- Allineamento vista Tipi di spedizione +UPDATE `zz_modules` SET `options` = " +SELECT + |select| +FROM + `dt_spedizione` + LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione_lang`.`id_record` = `dt_spedizione`.`id` AND `dt_spedizione_lang`.|lang|) +WHERE + 1=1 +HAVING + 2=2" WHERE `name` = 'Tipi di spedizione'; +UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_spedizione_lang`.`name`' WHERE `zz_modules`.`name` = 'Tipi di spedizione' AND `zz_views`.`name` = 'Descrizione'; +UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_spedizione`.`id`' WHERE `zz_modules`.`name` = 'Tipi di spedizione' AND `zz_views`.`name` = 'id'; + +-- Allineamento vista Ddt di vendita +UPDATE `zz_modules` SET `options` = " +SELECT + |select| +FROM + `dt_ddt` + LEFT JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + LEFT JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` + LEFT JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` + LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.|lang|) + LEFT JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` + LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione_lang`.`id_record` = `dt_spedizione`.`id` AND `dt_spedizione_lang`.|lang|) + LEFT JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` + LEFT JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` + LEFT JOIN `an_sedi` AS `sedi_destinazione`ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` + LEFT JOIN (SELECT `idddt`, SUM(`subtotale` - `sconto`) AS `totale_imponibile`, SUM(`subtotale` - `sconto` + `iva`) AS `totale` FROM `dt_righe_ddt` GROUP BY `idddt`) AS righe ON `dt_ddt`.`id` = `righe`.`idddt` + LEFT JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` + LEFT JOIN (SELECT GROUP_CONCAT(DISTINCT 'Fattura ',`co_documenti`.`numero_esterno` SEPARATOR ', ') AS `info`, `co_righe_documenti`.`original_document_id` AS `idddt` FROM `co_documenti` INNER JOIN `co_righe_documenti` ON `co_documenti`.`id` = `co_righe_documenti`.`iddocumento` WHERE `original_document_type`='Modules\\DDT\\DDT' GROUP BY `original_document_id`) AS `fattura` ON `fattura`.`idddt` = `dt_ddt`.`id` + LEFT JOIN (SELECT COUNT(id) as emails, em_emails.id_record FROM em_emails INNER JOIN zz_operations ON zz_operations.id_email = em_emails.id WHERE id_module IN(SELECT id FROM zz_modules WHERE name = 'Ddt di vendita') AND `zz_operations`.`op` = 'send-email' GROUP BY id_record) AS `email` ON `email`.`id_record` = `dt_ddt`.`id` +WHERE + 1=1 |segment(`dt_ddt`.`id_segment`)| 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` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_spedizione_lang`.`name`' WHERE `zz_modules`.`name` = 'Ddt di vendita' AND `zz_views`.`name` = 'Tipo spedizione'; + +-- Allineamento vista Ddt di acquisto +UPDATE `zz_modules` SET `options` = " +SELECT + |select| +FROM + `dt_ddt` + LEFT JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + LEFT JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` + LEFT JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` + LEFT JOIN `dt_causalet_lang` ON (`dt_causalet_lang`.`id_record` = `dt_causalet`.`id` AND `dt_causalet_lang`.|lang|) + LEFT JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` + LEFT JOIN `dt_spedizione_lang` ON (`dt_spedizione_lang`.`id_record` = `dt_spedizione`.`id` AND `dt_spedizione_lang`.|lang|) + LEFT JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` + LEFT JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` + LEFT JOIN `an_sedi` AS `sedi_destinazione`ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` + LEFT JOIN(SELECT `idddt`, SUM(`subtotale` - `sconto`) AS `totale_imponibile`, SUM(`subtotale` - `sconto` + `iva`) AS `totale` FROM `dt_righe_ddt` GROUP BY `idddt`) AS righe ON `dt_ddt`.`id` = `righe`.`idddt` + LEFT JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` + LEFT JOIN (SELECT GROUP_CONCAT(DISTINCT 'Fattura ',`co_documenti`.`numero` SEPARATOR ', ') AS `info`, `co_righe_documenti`.`original_document_id` AS `idddt` FROM `co_documenti` INNER JOIN `co_righe_documenti` ON `co_documenti`.`id` = `co_righe_documenti`.`iddocumento` WHERE `original_document_type`='Modules\\DDT\\DDT' GROUP BY `original_document_id`) AS `fattura` ON `fattura`.`idddt` = `dt_ddt`.`id` +WHERE + 1=1 |segment(`dt_ddt`.`id_segment`)| 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` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = '`dt_spedizione_lang`.`name`' WHERE `zz_modules`.`name` = 'Ddt di acquisto' AND `zz_views`.`name` = 'Tipo spedizione'; \ No newline at end of file diff --git a/update/tables.php b/update/tables.php index 26814810e..9c7c83c29 100755 --- a/update/tables.php +++ b/update/tables.php @@ -71,6 +71,7 @@ return [ 'dt_porto_lang', 'dt_righe_ddt', 'dt_spedizione', + 'dt_spedizione_lang', 'dt_statiddt', 'dt_tipiddt', 'em_print_template',