From c8588f22a6b71f9c26e42e71f6fca59143835cf9 Mon Sep 17 00:00:00 2001 From: Thomas Zilio Date: Fri, 29 Sep 2017 17:30:30 +0200 Subject: [PATCH] Miglioramenti discussi in #29 e #34 Miglioramento della gestione delle casistiche per Rivalsa INPS/Ritenuta d'acconto e per la selezione della tipologia di anagrafica. --- modules/anagrafiche/actions.php | 9 +++++++-- modules/anagrafiche/edit.php | 10 +++++++--- modules/fatture/add_riga.php | 4 ++-- modules/fatture/edit_riga.php | 4 ++-- modules/preventivi/edit_riga.php | 27 --------------------------- 5 files changed, 18 insertions(+), 36 deletions(-) diff --git a/modules/anagrafiche/actions.php b/modules/anagrafiche/actions.php index 23e75819b..67c8d0f07 100644 --- a/modules/anagrafiche/actions.php +++ b/modules/anagrafiche/actions.php @@ -82,7 +82,12 @@ switch (post('op')) { } // Aggiorno le tipologie di anagrafica - $dbo->sync('an_tipianagrafiche_anagrafiche', ['idanagrafica' => $id_record], ['idtipoanagrafica' => (array) $post['idtipoanagrafica']]); + $post['idtipoanagrafica'] = (array) $post['idtipoanagrafica']; + if (str_contains($records[0]['idtipianagrafica'], $id_azienda)) { + $post['idtipoanagrafica'][] = $id_azienda; + } + + $dbo->sync('an_tipianagrafiche_anagrafiche', ['idanagrafica' => $id_record], ['idtipoanagrafica' => $post['idtipoanagrafica']]); // Verifico se esiste già l'associazione dell'anagrafica a conti del partitario $rs = $dbo->fetchArray('SELECT idconto_cliente, idconto_fornitore FROM an_anagrafiche WHERE idanagrafica='.prepare($id_record)); @@ -209,7 +214,7 @@ switch (post('op')) { case 'delete': // Se l'anagrafica non è l'azienda principale, la disattivo - if (str_contains($records[0]['idtipianagrafica'], $id_azienda) === false) { + if (!str_contains($records[0]['idtipianagrafica'], $id_azienda)) { $dbo->query('UPDATE an_anagrafiche SET deleted = 1 WHERE idanagrafica = '.prepare($id_record).Modules::getAdditionalsQuery($id_module)); $_SESSION['infos'][] = tr('Anagrafica eliminata!'); diff --git a/modules/anagrafiche/edit.php b/modules/anagrafiche/edit.php index 591881261..2fb2bb50f 100644 --- a/modules/anagrafiche/edit.php +++ b/modules/anagrafiche/edit.php @@ -311,9 +311,13 @@ if ($fornitore) {
- {[ "type": "select", "multiple": "1", "label": "", "name": "idtipoanagrafica[]", "values": "query=SELECT idtipoanagrafica AS id, descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica NOT IN (SELECT DISTINCT(x.idtipoanagrafica) FROM an_tipianagrafiche_anagrafiche x INNER JOIN an_tipianagrafiche t ON x.idtipoanagrafica = t.idtipoanagrafica INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = x.idanagrafica WHERE t.descrizione = 'Azienda' AND deleted = 0) OR idtipoanagrafica IN (SELECT DISTINCT(z.idtipoanagrafica) FROM an_tipianagrafiche_anagrafiche z WHERE idanagrafica = ) ORDER BY descrizione", "value": "$idtipianagrafica$" ]} + {[ "type": "select", "multiple": "1", "label": "", "name": "idtipoanagrafica[]", "values": "query=SELECT idtipoanagrafica AS id, descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica NOT IN (SELECT DISTINCT(x.idtipoanagrafica) FROM an_tipianagrafiche_anagrafiche x INNER JOIN an_tipianagrafiche t ON x.idtipoanagrafica = t.idtipoanagrafica INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = x.idanagrafica WHERE t.descrizione = 'Azienda' AND deleted = 0) ORDER BY descrizione", "value": "$idtipianagrafica$" ]} +'.tr('Questa anagrafica appartiene alla tipologia "Azienda"').'.

'; +} +?>
- {[ "type": "select", "label": "'.tr('Rivalsa INPS').'", "name": "idrivalsainps", "required": 1, "value": "'.get_var('Percentuale rivalsa INPS').'", "values": "query=SELECT * FROM co_rivalsainps" ]} + {[ "type": "select", "label": "'.tr('Rivalsa INPS').'", "name": "idrivalsainps", "value": "'.get_var('Percentuale rivalsa INPS').'", "values": "query=SELECT * FROM co_rivalsainps", "required": '.intval($dir != 'uscita').' ]}
'; } @@ -55,7 +55,7 @@ if (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d if (get_var("Percentuale ritenuta d'acconto") != '' || $dir == 'uscita') { echo '
- {[ "type": "select", "label": "'.tr("Ritenuta d'acconto").'", "name": "idritenutaacconto", "required": 1, "value": "'.get_var("Percentuale ritenuta d'acconto").'", "values": "query=SELECT * FROM co_ritenutaacconto" ]} + {[ "type": "select", "label": "'.tr("Ritenuta d'acconto").'", "name": "idritenutaacconto", "value": "'.get_var("Percentuale ritenuta d'acconto").'", "values": "query=SELECT * FROM co_ritenutaacconto", "required": '.intval($dir != 'uscita').' ]}
'; } diff --git a/modules/fatture/edit_riga.php b/modules/fatture/edit_riga.php index 29e2681c7..53035e4cb 100644 --- a/modules/fatture/edit_riga.php +++ b/modules/fatture/edit_riga.php @@ -53,7 +53,7 @@ if (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d if (get_var('Percentuale rivalsa INPS') != '' || $dir == 'uscita') { echo '
- {[ "type": "select", "label": "'.tr('Rivalsa INPS').'", "name": "idrivalsainps", "value": "'.$rsr[0]['idrivalsainps'].'", "values": "query=SELECT * FROM co_rivalsainps" ]} + {[ "type": "select", "label": "'.tr('Rivalsa INPS').'", "name": "idrivalsainps", "value": "'.$rsr[0]['idrivalsainps'].'", "values": "query=SELECT * FROM co_rivalsainps", "required": '.intval($dir != 'uscita').' ]}
'; } @@ -61,7 +61,7 @@ if (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d if (get_var("Percentuale ritenuta d'acconto") != '' || $dir == 'uscita') { echo '
- {[ "type": "select", "label": "'.tr("Ritenuta d'acconto").'", "name": "idritenutaacconto", "value": "'.$rsr[0]['idritenutaacconto'].'", "values": "query=SELECT * FROM co_ritenutaacconto" ]} + {[ "type": "select", "label": "'.tr("Ritenuta d'acconto").'", "name": "idritenutaacconto", "value": "'.$rsr[0]['idritenutaacconto'].'", "values": "query=SELECT * FROM co_ritenutaacconto", "required": '.intval($dir != 'uscita').' ]}
'; } diff --git a/modules/preventivi/edit_riga.php b/modules/preventivi/edit_riga.php index fdc334833..256212b4f 100644 --- a/modules/preventivi/edit_riga.php +++ b/modules/preventivi/edit_riga.php @@ -97,33 +97,6 @@ echo ' '; -/* -if (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d'acconto") != '') { - echo ' -
'; - - // Rivalsa INPS - if (get_var('Percentuale rivalsa INPS') != '') { - echo ' -
- {[ "type": "select", "label": "'.tr('Rivalsa INPS').'", "name": "idrivalsainps", "required": 1, "value": "'.get_var('Percentuale rivalsa INPS').'", "values": "query=SELECT * FROM co_rivalsainps" ]} -
'; - } - - // Ritenuta d'acconto - if (get_var("Percentuale ritenuta d'acconto") != '') { - echo ' -
- {[ "type": "select", "label": "'.tr("Ritenuta d'acconto").'", "name": "idritenutaacconto", "required": 1, "value": "'.get_var("Percentuale ritenuta d'acconto").'", "values": "query=SELECT * FROM co_ritenutaacconto" ]} -
'; - } - - echo ' -
'; -} - -*/ - // Costo unitario echo '