diff --git a/plugins/registrazioni/actions.php b/plugins/registrazioni/actions.php new file mode 100644 index 000000000..6995c4d7c --- /dev/null +++ b/plugins/registrazioni/actions.php @@ -0,0 +1,54 @@ +. + */ + +include_once __DIR__.'/../../core.php'; + +use Modules\Fatture\Components\Articolo AS RigaArticolo; +use Modules\Fatture\Components\Riga; +use Modules\Fatture\Fattura; +use Modules\Fatture\Gestori\Movimenti as GestoreMovimenti; + +$operazione = filter('op'); + +switch ($operazione) { + case 'change-conto': + $conti = (array)post('idconto'); + + foreach($conti as $id_riga => $conto){ + $riga = RigaArticolo::find($id_riga); + if(empty($riga)){ + $riga = Riga::find($id_riga); + } + + // Modifica descrizione fornitore + $riga->id_conto = $conto; + $riga->save(); + } + + $fattura = Fattura::find($id_record); + + if ($fattura->stato->descrizione != 'Bozza') { + $fattura->gestoreMovimenti = new GestoreMovimenti($fattura); + $fattura->gestoreMovimenti->registra(); + } + + flash()->info(tr('Salvataggio completato!')); + + break; +} diff --git a/plugins/registrazioni/edit.php b/plugins/registrazioni/edit.php new file mode 100644 index 000000000..e0ba79edb --- /dev/null +++ b/plugins/registrazioni/edit.php @@ -0,0 +1,152 @@ +. + */ + +use Modules\Interventi\Intervento; + +if ( $id_module == Modules::get('Fatture di acquisto')['id'] ){ + $conti = 'conti-acquisti'; +} else{ + $conti = 'conti-vendite'; +} + +echo ' +
+ + + + + + +
+
+ +
+
+
+
+ + + + + + + + + + + '; + + // Righe documento + if (!empty($fattura)) { + $righe = $fattura->getRighe(); + $num = 0; + foreach ($righe as $riga) { + ++$num; + + if (!$riga->isDescrizione()) { + + echo ' + + + + '; + + // Quantità e unità di misura + echo ' + '; + + // Prezzi unitari + echo ' + + + + '; + } + } + } + + echo ' + +
'.tr('#').''.tr('Descrizione').''.tr('Q.tà').''.tr('Prezzo unitario').''.tr('Conto').'
+ '.$num.' + '; + + if ($riga->isArticolo()) { + echo Modules::link('Articoli', $riga->idarticolo, $riga->codice.' - '.$riga->descrizione); + } else { + echo nl2br($riga->descrizione); + } + + echo ' + + '.numberFormat($riga->qta, 'qta').' '.$riga->um.' + + '.moneyFormat($riga->prezzo_unitario_corrente); + + if ($dir == 'entrata' && $riga->costo_unitario != 0) { + echo ' +
+ '.tr('Acquisto').': '.moneyFormat($riga->costo_unitario).' + '; + } + + if (abs($riga->sconto_unitario) > 0) { + $text = discountInfo($riga); + + echo ' +
'.$text.''; + } + + echo ' +
+ {[ "type": "select", "name": "idconto['.$riga['id'].']", "required": 1, "value": "'.$riga->id_conto.'", "ajax-source": "'.$conti.'", "class": "unblockable" ]} +
+
+
+
+ +
+
+
+ +'; + \ No newline at end of file diff --git a/update/2_4_31.sql b/update/2_4_31.sql index 034fe536d..9108c4258 100644 --- a/update/2_4_31.sql +++ b/update/2_4_31.sql @@ -104,4 +104,8 @@ INSERT INTO `zz_plugins` (`id`, `name`, `title`, `idmodule_from`, `idmodule_to`, CREATE TABLE `an_pagamenti_anagrafiche` ( `id` INT NOT NULL AUTO_INCREMENT , `mese` INT NOT NULL , `giorno_fisso` INT NOT NULL , `idanagrafica` INT NOT NULL , PRIMARY KEY (`id`)); -- Aggiunta impostazione per personalizzare dicitura riferimento attività -INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Descrizione personalizzata in fatturazione', '', 'textarea', '1', 'Attività', '17', 'Variabili utilizzabili: \n {email}\n {numero}\n {ragione_sociale}\n {richiesta}\n {descrizione}\n {data}\n {data richiesta}\n {data fine intervento}\n {id_anagrafica}\n {stato}\n'); \ No newline at end of file +INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Descrizione personalizzata in fatturazione', '', 'textarea', '1', 'Attività', '17', 'Variabili utilizzabili: \n {email}\n {numero}\n {ragione_sociale}\n {richiesta}\n {descrizione}\n {data}\n {data richiesta}\n {data fine intervento}\n {id_anagrafica}\n {stato}\n'); + +-- Aggiunto plugin Registrazioni in Fatture +INSERT INTO `zz_plugins` (`id`, `name`, `title`, `idmodule_from`, `idmodule_to`, `position`, `script`, `enabled`, `default`, `order`, `compatibility`, `version`, `options2`, `options`, `directory`, `help`, `created_at`, `updated_at`) VALUES (NULL, 'Registrazioni', 'Registrazioni', (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di acquisto'), (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di acquisto'), 'tab', '', '1', '0', '0', '', '', NULL, 'custom', 'registrazioni', '', NOW(), NOW()); +INSERT INTO `zz_plugins` (`id`, `name`, `title`, `idmodule_from`, `idmodule_to`, `position`, `script`, `enabled`, `default`, `order`, `compatibility`, `version`, `options2`, `options`, `directory`, `help`, `created_at`, `updated_at`) VALUES (NULL, 'Registrazioni', 'Registrazioni', (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di vendita'), (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di vendita'), 'tab', '', '1', '0', '0', '', '', NULL, 'custom', 'registrazioni', '', NOW(), NOW()); \ No newline at end of file