diff --git a/modules/anagrafiche/actions.php b/modules/anagrafiche/actions.php index dd3de1434..ea18af4b2 100644 --- a/modules/anagrafiche/actions.php +++ b/modules/anagrafiche/actions.php @@ -81,18 +81,20 @@ switch (post('op')) { $idanagrafica = $dbo->fetchOne('SELECT GROUP_CONCAT(idanagrafica) AS idanagrafica FROM an_anagrafiche WHERE codice_fiscale = '.prepare(post('codice_fiscale')).' AND idanagrafica != '.prepare($id_record))['idanagrafica']; if (!empty($idanagrafica)) { + $array = explode(',', $idanagrafica); foreach ($array as $value) { flash()->warning(tr('Attenzione: il codice fiscale _COD_ è già stato censito _LINK_', [ '_COD_' => post('codice_fiscale'), - '_LINK_' => Modules::link('Anagrafiche', $value, null, null, ''), + '_LINK_' => Modules::link('Anagrafiche', $value, null, null, ''), ])); } + } else { - $anagrafica->codice_fiscale = post('codice_fiscale'); + $anagrafica->codice_fiscale = strtoupper(post('codice_fiscale')); } } else { - $anagrafica->codice_fiscale = post('codice_fiscale'); + $anagrafica->codice_fiscale = strtoupper(post('codice_fiscale')); } // Avviso durante il salvataggio della partita iva se già presente e informo l'utente delle schede presenti @@ -104,9 +106,10 @@ switch (post('op')) { foreach ($array as $value) { flash()->warning(tr('Attenzione: la partita IVA _IVA_ è già stata censita _LINK_', [ '_IVA_' => post('piva'), - '_LINK_' => Modules::link('Anagrafiche', $value, null, null, ''), + '_LINK_' => Modules::link('Anagrafiche', $value, null, null, ''), ])); } + } else { $anagrafica->partita_iva = post('piva'); } @@ -172,10 +175,10 @@ switch (post('op')) { '_COD_' => post('codice_fiscale'), ])); } else { - $anagrafica->codice_fiscale = post('codice_fiscale'); + $anagrafica->codice_fiscale = strtoupper(post('codice_fiscale')); } } else { - $anagrafica->codice_fiscale = post('codice_fiscale'); + $anagrafica->codice_fiscale = strtoupper(post('codice_fiscale')); } // Blocco il salvataggio della partita iva se già presente diff --git a/modules/articoli/edit.php b/modules/articoli/edit.php index 0f94c7e5b..2380de462 100644 --- a/modules/articoli/edit.php +++ b/modules/articoli/edit.php @@ -292,13 +292,68 @@ echo ' } else { echo '
- '.tr('Non ci sono listini caricati').'... '.Modules::link('Listini', null, tr('Crea il primo listino!')).'. + '.tr('Non ci sono listini caricati').'... '.Modules::link('Listini', null, tr('Crea il primo listino')).'
'; } echo ' '; ?> + +
+

'.tr('Prezzo medio acquisto').'

+
+ +
'; +$rs_prezzo_medio = $dbo->fetchOne('SELECT ((SUM(subtotale)-SUM(sconto))/SUM(qta)) AS prezzo FROM co_righe_documenti INNER JOIN co_documenti ON co_righe_documenti.iddocumento = co_documenti.id WHERE co_documenti.idtipodocumento IN (SELECT id FROM co_tipidocumento WHERE dir = \'uscita\') AND idarticolo='.prepare($id_record)); +$rs_prezzo_min = $dbo->fetchOne('SELECT ((subtotale-sconto)/qta) AS prezzo, co_documenti.data FROM co_righe_documenti INNER JOIN co_documenti ON co_righe_documenti.iddocumento = co_documenti.id WHERE co_documenti.idtipodocumento IN (SELECT id FROM co_tipidocumento WHERE dir = \'uscita\') AND idarticolo='.prepare($id_record).' ORDER BY ((subtotale-sconto)/qta) ASC' ); +$rs_prezzo_max = $dbo->fetchOne('SELECT ((subtotale-sconto)/qta) AS prezzo, co_documenti.data FROM co_righe_documenti INNER JOIN co_documenti ON co_righe_documenti.iddocumento = co_documenti.id WHERE co_documenti.idtipodocumento IN (SELECT id FROM co_tipidocumento WHERE dir = \'uscita\') AND idarticolo='.prepare($id_record).' ORDER BY ((subtotale-sconto)/qta) DESC' ); + + + +if (count($rs_prezzo_min) > 0) { + echo ' +
+
+ + + + + + + + + '; + + echo ' + + + + + + + '; + + + echo ' +
'.tr('Prezzo minimo').''.tr('Prezzio medio').''.tr('Prezzo massimo').''.tr('Oscillazione').''.tr('Oscillazione in %').''.tr('Andamento prezzo').'
'.moneyFormat($rs_prezzo_min['prezzo']).''.moneyFormat($rs_prezzo_medio['prezzo']).''.moneyFormat($rs_prezzo_max['prezzo']).''.moneyFormat($rs_prezzo_max['prezzo']-$rs_prezzo_min['prezzo']).''.Translator::numberToLocale(((($rs_prezzo_max['prezzo']-$rs_prezzo_min['prezzo'])*100)/$rs_prezzo_medio['prezzo']), '2').' %'.((strtotime($rs_prezzo_min['data'])==strtotime($rs_prezzo_max['data'])) ? 'N.D.' : ((strtotime($rs_prezzo_min['data']) +
+
+
'; + } else { + echo ' +
+ '.tr('Questo articolo non è mai stato acquistato').' +
'; + } + + echo ' +
+ '; + +?> {( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )} @@ -390,8 +445,9 @@ if (!empty($elementi)) {
'.tr('Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale').'.
'; -} else { - ?> +}else{ + +?>