diff --git a/assets/src/js/functions/inputmask.js b/assets/src/js/functions/inputmask.js index 5b7ad9cc1..d8efc476a 100644 --- a/assets/src/js/functions/inputmask.js +++ b/assets/src/js/functions/inputmask.js @@ -29,12 +29,13 @@ function initMaskInput(input) { }); } else if ($input.hasClass('rea-mask')) { $input.inputmask({ - mask: "AA-999999{1,15}", + regex: "([A-Za-z]{2})-([0-9]{20})", casing: "upper", + placeholder: "", }); } else if ($input.hasClass('provincia-mask')) { $input.inputmask({ - mask: "AA", + regex: "[A-Za-z]{2}", casing: "upper", }); } else if ($input.hasClass('alphanumeric-mask')) { diff --git a/modules/aggiornamenti/src/Controlli/ReaValidi.php b/modules/aggiornamenti/src/Controlli/ReaValidi.php index 3b0cde2d3..bdd1f7de3 100644 --- a/modules/aggiornamenti/src/Controlli/ReaValidi.php +++ b/modules/aggiornamenti/src/Controlli/ReaValidi.php @@ -25,7 +25,7 @@ class ReaValidi extends Controllo { public function getName() { - return tr('Anagrafiche con codici REA non validi'); + return tr('Anagrafiche con codici R.E.A. non validi'); } public function getType($record) @@ -35,7 +35,14 @@ class ReaValidi extends Controllo public function getOptions($record) { - return []; + return [ + [ + 'name' => tr('Rimuovi'), + 'icon' => 'fa fa-trash', + 'color' => 'danger', + 'params' => [], + ], + ]; } public function check() @@ -43,7 +50,7 @@ class ReaValidi extends Controllo $database = database(); /** - * Verifico se i rea inseriti per le anagrafiche hanno una struttura valida. + * Verifico se i R.E.A. inseriti per le anagrafiche hanno una struttura valida. */ $anagrafiche_interessate = $database->fetchArray('SELECT an_anagrafiche.idanagrafica AS id, @@ -54,7 +61,7 @@ class ReaValidi extends Controllo 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 != "" + codicerea NOT REGEXP "([A-Za-z]{2})-([0-9]{1,20})" AND codicerea != "" AND deleted_at IS NULL GROUP BY an_anagrafiche.idanagrafica'); @@ -68,7 +75,7 @@ class ReaValidi extends Controllo $this->addResult([ 'id' => $anagrafica['id'], 'nome' => \Modules::link('Anagrafiche', $anagrafica['id'], $anagrafica['ragione_sociale']), - 'descrizione' => tr('Il codice REA "_REA_" non è valido', [ + 'descrizione' => tr('Il codice REA "_REA_" non è valido.', [ '_REA_' => $anagrafica['codicerea'], ]), ]); @@ -78,6 +85,10 @@ class ReaValidi extends Controllo public function execute($record, $params = []) { - return false; + $anagrafica = Anagrafica::find($record['id']); + $anagrafica->codicerea = null; + $anagrafica->save(); + + return true; } } diff --git a/modules/anagrafiche/actions.php b/modules/anagrafiche/actions.php index 3728f9120..40896fdd1 100755 --- a/modules/anagrafiche/actions.php +++ b/modules/anagrafiche/actions.php @@ -66,7 +66,7 @@ switch (post('op')) { $anagrafica->idsede_fatturazione = post('idsede_fatturazione'); $anagrafica->note = post('note'); $anagrafica->codiceri = post('codiceri'); - $anagrafica->codicerea = post('codicerea'); + $anagrafica->codicerea = strtoupper(post('codicerea')); $anagrafica->appoggiobancario = post('appoggiobancario'); $anagrafica->filiale = post('filiale'); $anagrafica->codiceiban = post('codiceiban'); @@ -89,8 +89,6 @@ switch (post('op')) { $anagrafica->idrelazione = post('idrelazione'); $anagrafica->sitoweb = post('sitoweb'); $anagrafica->iscrizione_tribunale = post('iscrizione_tribunale'); - $anagrafica->cciaa = post('cciaa'); - $anagrafica->cciaa_citta = post('cciaa_citta'); $anagrafica->n_alboartigiani = post('n_alboartigiani'); $anagrafica->foro_competenza = post('foro_competenza'); $anagrafica->riferimento_amministrazione = post('riferimento_amministrazione'); diff --git a/modules/anagrafiche/ajax/search.php b/modules/anagrafiche/ajax/search.php index 6154d3a5e..5b7eda1a1 100755 --- a/modules/anagrafiche/ajax/search.php +++ b/modules/anagrafiche/ajax/search.php @@ -43,7 +43,6 @@ $fields = [ 'Note' => 'note', 'Codice REA' => 'codicerea', 'Marche' => 'marche', - 'CCIAA' => 'cciaa', 'Numero di iscrizione albo artigiani' => 'n_alboartigiani', ]; diff --git a/modules/anagrafiche/edit.php b/modules/anagrafiche/edit.php index 73855ad6a..01df49255 100755 --- a/modules/anagrafiche/edit.php +++ b/modules/anagrafiche/edit.php @@ -192,7 +192,7 @@ if (sizeof($problemi_anagrafica) > 0) {
- {[ "type": "text", "label": "", "name": "provincia", "maxlength": 2, "class": "text-center provincia-mask text-uppercase", "value": "$provincia$", "extra": "onkeyup=\"this.value = this.value.toUpperCase();\"" ]} + {[ "type": "text", "label": "", "name": "provincia", "class": "text-center provincia-mask text-uppercase", "value": "$provincia$", "extra": "onkeyup=\"this.value = this.value.toUpperCase();\"" ]}
@@ -642,7 +642,7 @@ if ($is_cliente or $is_fornitore or $is_tecnico) {
- {[ "type": "text", "label": "('.tr('provincia-C.C.I.A.A.').')'; ?>", "name": "codicerea", "value": "$codicerea$", "class": "rea-mask", "help": "('.tr('provincia-C.C.I.A.A.').')'; ?>", "name": "codicerea", "value": "$codicerea$", "class": "rea-mask text-uppercase", "help": " 'RM-123456', ]); ?>" ]}
diff --git a/modules/pagamenti/edit.php b/modules/pagamenti/edit.php index da9e083fd..eeb54e775 100755 --- a/modules/pagamenti/edit.php +++ b/modules/pagamenti/edit.php @@ -104,15 +104,37 @@ foreach ($results as $result) { $giorno_pagamento = ($result['giorno'] < -1) ? -$result['giorno'] - 1 : $result['giorno']; } +// Collegamenti diretti +$elementi = $dbo->fetchArray('SELECT `co_documenti`.`id`, `co_documenti`.`data`, `co_documenti`.`numero`, `co_documenti`.`numero_esterno`, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir`, NULL AS `deleted_at` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`idpagamento` = '.prepare($id_record).' + +UNION +SELECT `or_ordini`.`id`, `or_ordini`.`data`, `or_ordini`.`numero`, `or_ordini`.`numero_esterno`, `or_tipiordine`.`descrizione` AS tipo_documento, `or_tipiordine`.`dir`, NULL AS `deleted_at` FROM `or_ordini` JOIN `or_tipiordine` ON `or_tipiordine`.`id` = `or_ordini`.`idtipoordine` WHERE `or_ordini`.`idpagamento` = '.prepare($id_record).' + +UNION +SELECT `dt_ddt`.`id`, `dt_ddt`.`data`, `dt_ddt`.`numero`, `dt_ddt`.`numero_esterno`, `dt_tipiddt`.`descrizione` AS tipo_documento, `dt_tipiddt`.`dir`, NULL AS `deleted_at` FROM `dt_ddt` JOIN `dt_tipiddt` ON `dt_tipiddt`.`id` = `dt_ddt`.`idtipoddt` WHERE `dt_ddt`.`idpagamento` = '.prepare($id_record).' + +UNION +SELECT `co_contratti`.`id`, `co_contratti`.`data_bozza`, `co_contratti`.`numero`, 0 AS numero_esterno , "Contratto" AS tipo_documento, 0 AS dir, NULL AS `deleted_at` FROM `co_contratti` WHERE `co_contratti`.`idpagamento` = '.prepare($id_record).' + +UNION +SELECT `co_preventivi`.`id`, `co_preventivi`.`data_bozza`, `co_preventivi`.`numero`, 0 AS numero_esterno , "Preventivo" AS tipo_documento, 0 AS dir, NULL AS `deleted_at` FROM `co_preventivi` WHERE `co_preventivi`.`idpagamento` = '.prepare($id_record).' + +ORDER BY `data`'); + + echo '

'.tr('Rata _NUMBER_', [ '_NUMBER_' => $numero_rata, - ]).'

- + ]).''; + if (empty($elementi)) { + echo ' + '; + } + echo '
@@ -171,9 +193,7 @@ foreach ($results as $result) {
- - - + @@ -207,6 +227,71 @@ echo ' '; + + + +if (!empty($elementi)) { + echo ' +
+
+

'.tr('Documenti collegati: _NUM_', [ + '_NUM_' => count($elementi), + ]).'

+
+ +
+
+
+ +
+
'; +} + +if (!empty($elementi)) { + echo ' +
+ ' . tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale') . '. +
+ + '.tr('Elimina').' +'; +} else { + echo ' + + '.tr('Elimina').' +'; +} ?>