diff --git a/include/common/articolo.php b/include/common/articolo.php index c027f105e..990a6159e 100644 --- a/include/common/articolo.php +++ b/include/common/articolo.php @@ -1,46 +1,55 @@
'.tr('Articolo').': '.$articolo['codice'].' - '.$articolo['descrizione'].'.
'; +} echo App::internalLoad('riga.php', $result, $options); -// Informazioni aggiuntive -if ($module['name'] != 'Contratti' && $module['name'] != 'Preventivi') { - echo ' +if (!isset($options['edit_articolo']) || !empty($options['edit_articolo'])) { + // Informazioni aggiuntive + if ($module['name'] != 'Contratti' && $module['name'] != 'Preventivi') { + $disabled = empty($result['idarticolo']); + + echo ''.tr('Ordine numero _NUM_', [ - '_NUM_' => $numero, -]).'
- -'; - -echo ' - '; diff --git a/modules/ordini/add_descrizione.php b/modules/ordini/add_descrizione.php deleted file mode 100644 index b95530a45..000000000 --- a/modules/ordini/add_descrizione.php +++ /dev/null @@ -1,41 +0,0 @@ -fetchArray('SELECT * FROM or_ordini WHERE id='.prepare($id_record)); -$numero = $record[0]['numero']; -$idanagrafica = $record[0]['idanagrafica']; - -/* - Form di inserimento riga documento -*/ -echo ' -'.tr('Ordine numero _NUM_', [ - '_NUM_' => $numero, -]).'
- -'; diff --git a/modules/ordini/add_riga.php b/modules/ordini/add_riga.php deleted file mode 100644 index 96efd5003..000000000 --- a/modules/ordini/add_riga.php +++ /dev/null @@ -1,129 +0,0 @@ -fetchArray('SELECT * FROM or_ordini WHERE id='.prepare($id_record)); -$numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero']; -$idanagrafica = $rs[0]['idanagrafica']; - -$idriga = $get['idriga']; - -if (empty($idriga)) { - $op = 'addriga'; - $button = tr('Aggiungi'); - - // valori default - $descrizione = ''; - $qta = 1; - $um = ''; - $prezzo = 0; - $sconto = 0; - - // Leggo l'iva predefinita per l'anagrafica e se non c'è leggo quella predefinita generica - $iva = $dbo->fetchArray('SELECT idiva_'.($dir == 'uscita' ? 'acquisti' : 'vendite').' AS idiva FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica)); - $idiva = $iva[0]['idiva'] ?: get_var('Iva predefinita'); - - // Sconto unitario - $rss = $dbo->fetchArray('SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT idlistino_'.($dir == 'uscita' ? 'acquisti' : 'vendite').' FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica).')'); - if (!empty($rss)) { - $sconto = $rss[0]['prc_guadagno']; - $tipo_sconto = 'PRC'; - } -} else { - $op = 'editriga'; - $button = tr('Modifica'); - - $rsr = $dbo->fetchArray('SELECT * FROM or_righe_ordini WHERE idordine='.prepare($id_record).' AND id='.prepare($idriga)); - - $descrizione = $rsr[0]['descrizione']; - $qta = $rsr[0]['qta']; - $um = $rsr[0]['um']; - $idiva = $rsr[0]['idiva']; - $prezzo = $rsr[0]['subtotale'] / $rsr[0]['qta']; - $sconto = $rsr[0]['sconto_unitario']; - $tipo_sconto = $rsr[0]['tipo_sconto']; -} - -/* - Form di inserimento riga documento -*/ -echo ' -'.tr('Ordine numero _NUM_', [ - '_NUM_' => $numero, -]).'
- -'; - -echo ' - '; diff --git a/modules/ordini/edit.php b/modules/ordini/edit.php index 0addc8599..9c75dc672 100644 --- a/modules/ordini/edit.php +++ b/modules/ordini/edit.php @@ -94,9 +94,11 @@ if ($module['name'] == 'Ordini cliente') { diff --git a/modules/ordini/row-add.php b/modules/ordini/row-add.php new file mode 100644 index 000000000..79f5a2f62 --- /dev/null +++ b/modules/ordini/row-add.php @@ -0,0 +1,57 @@ +fetchArray('SELECT * FROM or_ordini WHERE id='.prepare($id_record)); +$idanagrafica = $rs[0]['idanagrafica']; + +if ($module['name'] == 'Ordini cliente') { + $dir = 'entrata'; +} else { + $dir = 'uscita'; +} + +$_SESSION['superselect']['dir'] = $dir; + +// Impostazioni per la gestione +$options = [ + 'op' => 'addriga', + 'action' => 'add', + 'dir' => $dir, + 'idanagrafica' => $idanagrafica, +]; + +// Dati di default +$result = [ + 'descrizione' => '', + 'qta' => 1, + 'um' => '', + 'prezzo' => 0, + 'sconto_unitario' => 0, + 'tipo_sconto' => '', + 'idiva' => '', +]; + +// Leggo l'iva predefinita per l'anagrafica e se non c'è leggo quella predefinita generica +$iva = $dbo->fetchArray('SELECT idiva_'.($dir == 'uscita' ? 'acquisti' : 'vendite').' AS idiva FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica)); +$result['idiva'] = $iva[0]['idiva'] ?: get_var('Iva predefinita'); + +// Sconto unitario +$rss = $dbo->fetchArray('SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT idlistino_'.($dir == 'uscita' ? 'acquisti' : 'vendite').' FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica).')'); +if (!empty($rss)) { + $result['sconto_unitario'] = $rss[0]['prc_guadagno']; + $result['tipo_sconto'] = 'PRC'; +} + +// Importazione della gestione dedicata +$file = 'riga'; +if (isset($get['is_descrizione'])) { + $file = 'descrizione'; +} elseif (isset($get['is_articolo'])) { + $file = 'articolo'; + + $options['op'] = 'addarticolo'; +} + +echo App::load($file.'.php', $result, $options); diff --git a/modules/ordini/row-edit.php b/modules/ordini/row-edit.php new file mode 100644 index 000000000..922c81e91 --- /dev/null +++ b/modules/ordini/row-edit.php @@ -0,0 +1,38 @@ +fetchArray('SELECT * FROM or_ordini WHERE id='.prepare($id_record)); +$idanagrafica = $rs[0]['idanagrafica']; + +if ($module['name'] == 'Ordini cliente') { + $dir = 'entrata'; +} else { + $dir = 'uscita'; +} + +// Impostazioni per la gestione +$options = [ + 'op' => 'editriga', + 'action' => 'edit', + 'dir' => $dir, + 'idanagrafica' => $idanagrafica, + 'edit_articolo' => false, +]; + +// Dati della riga +$rsr = $dbo->fetchArray('SELECT * FROM or_righe_ordini WHERE idordine='.prepare($id_record).' AND id='.prepare($get['idriga'])); + +$result = $rsr[0]; +$result['prezzo'] = $rsr[0]['subtotale'] / $rsr[0]['qta']; + +// Importazione della gestione dedicata +$file = 'riga'; +if (!empty($result['is_descrizione'])) { + $file = 'descrizione'; +} elseif (!empty($result['idarticolo'])) { + $file = 'articolo'; +} + +echo App::load($file.'.php', $result, $options); diff --git a/modules/ordini/row-list.php b/modules/ordini/row-list.php index 9a08c8f29..347e122c2 100644 --- a/modules/ordini/row-list.php +++ b/modules/ordini/row-list.php @@ -164,7 +164,7 @@ if (!empty($rs)) { } echo " - +