From 8606b84f6a2231d78d4bf5387be9090fe4bfd19f Mon Sep 17 00:00:00 2001 From: Luca Date: Mon, 5 Dec 2022 19:18:31 +0100 Subject: [PATCH] Aggiunto controllo per Anagrafiche con codici REA non validi --- include/init/requirements.php | 10 ++- modules/aggiornamenti/actions.php | 2 + .../aggiornamenti/src/Controlli/ReaValidi.php | 83 +++++++++++++++++++ 3 files changed, 93 insertions(+), 2 deletions(-) create mode 100644 modules/aggiornamenti/src/Controlli/ReaValidi.php diff --git a/include/init/requirements.php b/include/init/requirements.php index ffd628f0d..23381a169 100755 --- a/include/init/requirements.php +++ b/include/init/requirements.php @@ -187,10 +187,16 @@ if ($database->isInstalled()){ 'minimum' => '5.7.0', 'maximum' => '8.0.99', ], + + 'sort_buffer_size' => [ + 'type' => 'value', + 'description' => '>4M', + ], + ]; - foreach (App::getConfig()['db_options'] as $n => $v){ + /*foreach (App::getConfig()['db_options'] as $n => $v){ switch ($n){ case 'sort_buffer_size': @@ -201,7 +207,7 @@ if ($database->isInstalled()){ break; } - } + }*/ } diff --git a/modules/aggiornamenti/actions.php b/modules/aggiornamenti/actions.php index f2f124965..df3714244 100755 --- a/modules/aggiornamenti/actions.php +++ b/modules/aggiornamenti/actions.php @@ -21,6 +21,7 @@ include_once __DIR__.'/../../core.php'; use Models\Cache; use Modules\Aggiornamenti\Controlli\ColonneDuplicateViste; +use Modules\Aggiornamenti\Controlli\ReaValidi; use Modules\Aggiornamenti\Controlli\PluginDuplicati; use Modules\Aggiornamenti\Controlli\Controllo; use Modules\Aggiornamenti\Controlli\DatiFattureElettroniche; @@ -59,6 +60,7 @@ switch (filter('op')) { DatiFattureElettroniche::class, ColonneDuplicateViste::class, PluginDuplicati::class, + ReaValidi::class, ]; $results = []; diff --git a/modules/aggiornamenti/src/Controlli/ReaValidi.php b/modules/aggiornamenti/src/Controlli/ReaValidi.php new file mode 100644 index 000000000..476c4f660 --- /dev/null +++ b/modules/aggiornamenti/src/Controlli/ReaValidi.php @@ -0,0 +1,83 @@ +. + */ + +namespace Modules\Aggiornamenti\Controlli; + +use Modules\Anagrafiche\Anagrafica; + +class ReaValidi extends Controllo +{ + public function getName() + { + return tr('Anagrafiche con codici REA non validi'); + } + + public function getType($record) + { + return 'warning'; + } + + public function getOptions($record) + { + return []; + } + + public function check() + { + $database = database(); + + /** + * Verifico se i rea inseriti per le anagrafiche hanno una struttura valida. + */ + $anagrafiche_interessate = $database->fetchArray('SELECT + an_anagrafiche.idanagrafica AS id, + an_anagrafiche.codicerea, + an_anagrafiche.ragione_sociale, + GROUP_CONCAT(an_tipianagrafiche.descrizione) AS tipi_anagrafica + FROM an_anagrafiche + INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche_anagrafiche.idanagrafica = an_anagrafiche.idanagrafica + INNER JOIN an_tipianagrafiche ON an_tipianagrafiche.idtipoanagrafica = an_tipianagrafiche_anagrafiche.idtipoanagrafica + WHERE + codicerea NOT REGEXP "^..-......$" AND codicerea != "" + AND + deleted_at IS NULL + GROUP BY an_anagrafiche.idanagrafica'); + + foreach ($anagrafiche_interessate as $anagrafica) { + + /*$tipi = explode(',', $anagrafica['tipi_anagrafica']); + $cliente = in_array('Cliente', $tipi) && empty($anagrafica['idconto_cliente']); + $fornitore = in_array('Fornitore', $tipi) && empty($anagrafica['idconto_fornitore']);*/ + + $this->addResult([ + 'id' => $anagrafica['id'], + 'nome' => $anagrafica['ragione_sociale'], + 'descrizione' => tr('Il codice REA "_REA_" non รจ valido', [ + '_REA_' => $anagrafica['codicerea'], + ]), + ]); + + } + } + + public function execute($record, $params = []) + { + return false; + } +}