From bd7b95c93b05e851eb038f407dfa27fc412255bb Mon Sep 17 00:00:00 2001 From: Bacca97 Date: Thu, 18 Jan 2018 19:03:06 +0100 Subject: [PATCH] "+ descrizione" su doc., articoli tipo "servizio", "+ articolo" su contratti --- modules/articoli/actions.php | 2 + modules/articoli/edit.php | 9 +- modules/articoli/modutil.php | 26 +++--- modules/contratti/actions.php | 25 +++++- modules/contratti/add_descrizione.php | 41 +++++++++ modules/contratti/add_riga.php | 71 ++++++++++----- modules/contratti/edit.php | 3 +- modules/contratti/row-list.php | 66 +++++++++----- modules/ddt/actions.php | 18 +++- modules/ddt/add_descrizione.php | 48 +++++++++++ modules/ddt/add_riga.php | 22 +++-- modules/ddt/edit.php | 3 + modules/ddt/row-list.php | 60 ++++++++----- modules/fatture/actions.php | 24 +++++- modules/fatture/add_descrizione.php | 50 +++++++++++ modules/fatture/edit.php | 5 ++ modules/fatture/edit_riga.php | 115 +++++++++++++------------ modules/fatture/row-list.php | 62 +++++++++---- modules/ordini/actions.php | 22 ++++- modules/ordini/add_descrizione.php | 41 +++++++++ modules/ordini/add_riga.php | 22 ++--- modules/ordini/edit.php | 1 + modules/ordini/row-list.php | 60 ++++++++----- modules/preventivi/actions.php | 23 ++++- modules/preventivi/add_descrizione.php | 41 +++++++++ modules/preventivi/edit.php | 8 +- modules/preventivi/edit_riga.php | 29 ++++--- modules/preventivi/row-list.php | 53 ++++++++---- templates/contratti/body.php | 40 +++++---- templates/ddt/body.php | 54 +++++++----- templates/fatture/body.php | 67 ++++++++------ templates/ordini/body.php | 64 ++++++++------ templates/preventivi/body.php | 66 ++++++++------ update/2_3.sql | 10 +++ 34 files changed, 897 insertions(+), 354 deletions(-) create mode 100644 modules/contratti/add_descrizione.php create mode 100644 modules/ddt/add_descrizione.php create mode 100644 modules/fatture/add_descrizione.php create mode 100644 modules/ordini/add_descrizione.php create mode 100644 modules/preventivi/add_descrizione.php diff --git a/modules/articoli/actions.php b/modules/articoli/actions.php index 5a3f90f58..e56a4a338 100644 --- a/modules/articoli/actions.php +++ b/modules/articoli/actions.php @@ -21,6 +21,7 @@ switch (post('op')) { $idiva_vendita = post('idiva_vendita'); $gg_garanzia = post('gg_garanzia'); + $servizio = post('servizio'); $componente_filename = post('componente_filename'); $volume = post('volume'); @@ -42,6 +43,7 @@ switch (post('op')) { ' prezzo_acquisto='.prepare($prezzo_acquisto).','. ' idiva_vendita='.prepare($idiva_vendita).','. ' gg_garanzia='.prepare($gg_garanzia).','. + ' servizio='.prepare($servizio).','. ' volume='.prepare($volume).','. ' peso_lordo='.prepare($peso_lordo).','. ' componente_filename='.prepare($componente_filename).','. diff --git a/modules/articoli/edit.php b/modules/articoli/edit.php index 15e9e5008..d753ae85b 100644 --- a/modules/articoli/edit.php +++ b/modules/articoli/edit.php @@ -93,10 +93,7 @@ $_SESSION['superselect']['id_categoria'] = $records[0]['id_categoria'];
{[ "type": "number", "label": "", "name": "prezzo_acquisto", "value": "$prezzo_acquisto$", "icon-after": "€" ]}
- - -
{[ "type": "number", "label": "", "name": "prezzo_vendita", "value": "$prezzo_vendita$", "icon-after": "€" ]}
@@ -108,8 +105,10 @@ $_SESSION['superselect']['id_categoria'] = $records[0]['id_categoria'];
{[ "type": "number", "label": "", "name": "gg_garanzia", "decimals": 0, "value": "$gg_garanzia$", "icon-after": "GG" ]}
- - + +
+ {[ "type": "checkbox", "label": "", "name": "servizio", "value": "$servizio$", "help": "", "placeholder": "" ]} +
diff --git a/modules/articoli/modutil.php b/modules/articoli/modutil.php index 5bfd990f1..73f71e13f 100644 --- a/modules/articoli/modutil.php +++ b/modules/articoli/modutil.php @@ -12,6 +12,9 @@ function add_movimento_magazzino($idarticolo, $qta, $array = [], $descrizone = ' if (empty($qta)) { return false; } + + //Info Articolo + $rs_art = $dbo->fetchArray("SELECT * FROM mg_articoli WHERE id='".$idarticolo."'"); // Ddt if (!empty($array['idddt'])) { @@ -76,18 +79,21 @@ function add_movimento_magazzino($idarticolo, $qta, $array = [], $descrizone = ' $movimento = str_replace(['_NAME_', '_TYPE_', '_NUM_'], [$nome, $tipo, $numero], $movimento); $new = ($qta > 0 ? '+' : '').$qta; + + //Movimento il magazzino solo se l'articolo non è un servizio + if($rs_art[0]['servizio']==0){ + // Movimentazione effettiva + if (empty($array['idintervento']) || empty($array['idautomezzo'])) { + $dbo->query('UPDATE mg_articoli SET qta = qta + '.$new.' WHERE id = '.prepare($idarticolo)); + } - // Movimentazione effettiva - if (empty($array['idintervento']) || empty($array['idautomezzo'])) { - $dbo->query('UPDATE mg_articoli SET qta = qta + '.$new.' WHERE id = '.prepare($idarticolo)); + // Registrazione della movimentazione + $dbo->insert('mg_movimenti', array_merge($array, [ + 'idarticolo' => $idarticolo, + 'qta' => $qta, + 'movimento' => $movimento, + ])); } - // Registrazione della movimentazione - $dbo->insert('mg_movimenti', array_merge($array, [ - 'idarticolo' => $idarticolo, - 'qta' => $qta, - 'movimento' => $movimento, - ])); - return true; } diff --git a/modules/contratti/actions.php b/modules/contratti/actions.php index dbc1b8936..5c93d3553 100644 --- a/modules/contratti/actions.php +++ b/modules/contratti/actions.php @@ -138,6 +138,7 @@ switch (post('op')) { // Aggiungo una riga al contratto case 'addriga': $idiva = post('idiva'); + $idarticolo = post('idarticolo'); $descrizione = post('descrizione'); $qta = $post['qta']; @@ -159,14 +160,30 @@ switch (post('op')) { $iva_indetraibile = $iva / 100 * $rs2[0]['indetraibile']; $desc_iva = $rs2[0]['descrizione']; - $dbo->query('INSERT INTO co_righe2_contratti(idcontratto, idiva, desc_iva, iva, iva_indetraibile, descrizione, subtotale, um, qta, sconto, sconto_unitario, tipo_sconto, `order`) VALUES ('.prepare($id_record).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($iva_indetraibile).', '.prepare($descrizione).', '.prepare($subtot).', '.prepare($um).', '.prepare($qta).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', (SELECT IFNULL(MAX(`order`) + 1, 0) FROM co_righe2_contratti AS t WHERE idcontratto='.prepare($id_record).'))'); + $dbo->query('INSERT INTO co_righe2_contratti(idcontratto, idarticolo, idiva, desc_iva, iva, iva_indetraibile, descrizione, subtotale, um, qta, sconto, sconto_unitario, tipo_sconto, `order`) VALUES ('.prepare($id_record).', '.prepare($idarticolo).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($iva_indetraibile).', '.prepare($descrizione).', '.prepare($subtot).', '.prepare($um).', '.prepare($qta).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', (SELECT IFNULL(MAX(`order`) + 1, 0) FROM co_righe2_contratti AS t WHERE idcontratto='.prepare($id_record).'))'); $_SESSION['infos'][] = tr('Articolo aggiunto!'); break; + + case 'adddescrizione': + if (!empty($id_record)) { + $descrizione = post('descrizione'); + $query = 'INSERT INTO co_righe2_contratti(idcontratto, descrizione, is_descrizione) VALUES('.prepare($id_record).', '.prepare($descrizione).', 1)'; + + if ($dbo->query($query)) { + $_SESSION['infos'][] = tr('Riga descrittiva aggiunta!'); + } + } + break; case 'editriga': $idriga = post('idriga'); + + $rs = $dbo->fetchArray("SELECT * FROM co_righe2_contratti WHERE id='".$idriga."'"); + $is_descrizione = $rs[0]['is_descrizione']; + + $idarticolo = post('idarticolo'); $descrizione = post('descrizione'); $qta = $post['qta']; @@ -190,7 +207,11 @@ switch (post('op')) { $desc_iva = $rs[0]['descrizione']; // Modifica riga generica sul documento - $query = 'UPDATE co_righe2_contratti SET idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + if($is_descrizione==0){ + $query = 'UPDATE co_righe2_contratti SET idarticolo='.prepare($idarticolo).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + }else{ + $query = 'UPDATE co_righe2_contratti SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga); + } $dbo->query($query); $_SESSION['infos'][] = tr('Riga modificata!'); diff --git a/modules/contratti/add_descrizione.php b/modules/contratti/add_descrizione.php new file mode 100644 index 000000000..2f9a62dd9 --- /dev/null +++ b/modules/contratti/add_descrizione.php @@ -0,0 +1,41 @@ +fetchArray('SELECT * FROM co_contratti WHERE id='.prepare($id_record)); +$numero = $record[0]['numero']; +$idanagrafica = $record[0]['idanagrafica']; + +/* + Form di inserimento riga documento +*/ +echo ' +

'.tr('Contratto numero _NUM_', [ + '_NUM_' => $numero, +]).'

+ +
+ + + '; + +// Descrizione +echo ' +
+
+ {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1 ]} +
+
'; + +echo ' + + +
+
+ +
+
+
'; \ No newline at end of file diff --git a/modules/contratti/add_riga.php b/modules/contratti/add_riga.php index 6b2e33d6f..287e6e615 100644 --- a/modules/contratti/add_riga.php +++ b/modules/contratti/add_riga.php @@ -37,6 +37,7 @@ if (empty($idriga)) { $rsr = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' AND id='.prepare($idriga)); + $idarticolo = $rsr[0]['idarticolo']; $descrizione = $rsr[0]['descrizione']; $qta = $rsr[0]['qta']; $um = $rsr[0]['um']; @@ -52,35 +53,43 @@ echo ' '; +// Elenco articoli raggruppati per gruppi e sottogruppi +if($rsr[0]['is_descrizione']!=1){ + echo ' +
+ {[ "type": "select", "label": "'.tr('Articolo').'", "name": "idarticolo", "value": "'.$idarticolo.'", "ajax-source": "articoli" ]} +
'; +} + // Descrizione echo '
- {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "value": '.json_encode($descrizione).', "required": 1 ]} + {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "id": "descrizione_riga", "value": '.json_encode($descrizione).', "required": 1 ]}
'; -// Iva - -echo ' +if($rsr[0]['is_descrizione']!=1){ + // Iva + echo '
{[ "type": "select", "label": "'.tr('Iva').'", "name": "idiva", "required": 1, "values": "query=SELECT id, descrizione FROM co_iva ORDER BY descrizione ASC", "value": "'.$idiva.'" ]}
'; -// Quantità -echo ' + // Quantità + echo '
{[ "type": "number", "label": "'.tr('Q.tà').'", "name": "qta", "value": "'.$qta.'", "required": 1, "decimals": "qta" ]}
'; -// Unità di misura -echo ' + // Unità di misura + echo '
{[ "type": "select", "label": "'.tr('Unità di misura').'", "icon-after": "add|'.Modules::get('Unità di misura')['id'].'", "name": "um", "value": "'.$um.'", "ajax-source": "misure" ]}
'; -/* -if (!empty($idriga)) { -//Rivalsa INPS -if( get_var("Percentuale rivalsa INPS") != "" ){ + /* + if (!empty($idriga)) { + //Rivalsa INPS + if( get_var("Percentuale rivalsa INPS") != "" ){ echo "
\n"; echo " \n"; echo " \n"; echo "
\n"; -} + } -//Ritenuta d'acconto -if( get_var("Percentuale ritenuta d'acconto") != "" ){ + //Ritenuta d'acconto + if( get_var("Percentuale ritenuta d'acconto") != "" ){ echo "
\n"; echo " \n"; echo " \n"; echo "
\n"; -} -} -*/ + } + } + */ -// Costo unitario -echo ' + // Costo unitario + echo '
{[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "required": 1, "value": "'.$prezzo.'", "icon-after": "€" ]}
'; -// Sconto unitario -echo ' + // Sconto unitario + echo '
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
'; +} + +echo ' + '; echo ' diff --git a/modules/contratti/edit.php b/modules/contratti/edit.php index ef4f742cf..54d6b019e 100644 --- a/modules/contratti/edit.php +++ b/modules/contratti/edit.php @@ -277,7 +277,8 @@ if (sizeof($rs) > 0) { -
+ + fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`'); +$rs_art = $dbo->fetchArray('SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`'); $imponibile_art = 0.0; $iva_art = 0.0; @@ -36,48 +36,72 @@ if (!empty($rs_art)) { // descrizione echo ' - - '.nl2br($r['descrizione']).' + '; + if (!empty($r['idarticolo'])) { + echo Modules::link('Articoli', $r['idarticolo'], $r['codice'].' - '.$r['descrizione']); + } else { + echo nl2br($r['descrizione']); + } + + echo ' '; // q.tà echo ' - - '.Translator::numberToLocale($r['qta']).' + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['qta']); + } + echo ' '; // um echo ' - - '.$r['um'].' + '; + if($r['is_descrizione']==0){ + echo + $r['um']; + } + echo ' '; // costo unitario echo ' - - '.Translator::numberToLocale($r['subtotale'] / $r['qta']).' € + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; + } + echo' '; // iva echo ' - - '.Translator::numberToLocale($r['iva'])." €
- ".$r['desc_iva'].' + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['iva'])." €
+ ".$r['desc_iva'].''; + } + echo ' '; // Imponibile echo ' - - '.Translator::numberToLocale($r['subtotale']).' €'; + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale']).' €'; - if ($r['sconto_unitario'] > 0) { - echo ' -
- '.tr('sconto _TOT_ _TYPE_', [ - '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), - '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), - ]).''; + if ($r['sconto_unitario'] > 0) { + echo ' +
- '.tr('sconto _TOT_ _TYPE_', [ + '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), + '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), + ]).''; + } } - echo ' '; diff --git a/modules/ddt/actions.php b/modules/ddt/actions.php index eb12f6dfd..720b0f44d 100644 --- a/modules/ddt/actions.php +++ b/modules/ddt/actions.php @@ -198,6 +198,17 @@ switch (post('op')) { } } break; + + case 'adddescrizione': + if (!empty($id_record)) { + $descrizione = post('descrizione'); + $query = 'INSERT INTO dt_righe_ddt(idddt, descrizione, is_descrizione) VALUES('.prepare($id_record).', '.prepare($descrizione).', 1)'; + + if ($dbo->query($query)) { + $_SESSION['infos'][] = tr('Riga descrittiva aggiunta!'); + } + } + break; // Creazione ddt da ordine case 'ddt_da_ordine': @@ -351,6 +362,7 @@ switch (post('op')) { $idordine = $rs[0]['idordine']; $old_qta = $rs[0]['qta']; $idddt = $rs[0]['idddt']; + $is_descrizione = $rs[0]['is_descrizione']; // Controllo per gestire i serial if (!empty($idarticolo)) { @@ -369,7 +381,11 @@ switch (post('op')) { $desc_iva = $rs[0]['descrizione']; // Modifica riga generica sul ddt - $query = 'UPDATE dt_righe_ddt SET idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + if($is_descrizione==0){ + $query = 'UPDATE dt_righe_ddt SET idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + }else{ + $query = 'UPDATE dt_righe_ddt SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga); + } if ($dbo->query($query)) { if (!empty($idarticolo)) { // Controlli aggiuntivi sulle quantità evase degli ordini diff --git a/modules/ddt/add_descrizione.php b/modules/ddt/add_descrizione.php new file mode 100644 index 000000000..9109d1eda --- /dev/null +++ b/modules/ddt/add_descrizione.php @@ -0,0 +1,48 @@ +fetchArray('SELECT * FROM dt_ddt WHERE id='.prepare($id_record)); +$numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero']; +$idanagrafica = $rs[0]['idanagrafica']; + +/* + Form di inserimento riga ddt +*/ +echo ' +

'.tr('Ddt numero _NUM_', [ + '_NUM_' => $numero, +]).'

+ +
+ + + '; + +// Descrizione +echo ' +
+
+ {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1 ]} +
+
'; + +echo ' + + +
+
+ +
+
+
'; \ No newline at end of file diff --git a/modules/ddt/add_riga.php b/modules/ddt/add_riga.php index eba79e506..e7609b744 100644 --- a/modules/ddt/add_riga.php +++ b/modules/ddt/add_riga.php @@ -72,41 +72,45 @@ echo ' {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1, "value": '.json_encode($descrizione).' ]} '; + +if($rsr[0]['is_descrizione']==0){ -// Quantità -echo ' + // Quantità + echo '
{[ "type": "number", "label": "'.tr('Q.tà').'", "name": "qta", "required": 1, "value": "'.$qta.'", "decimals": "qta" ]}
'; -// Unità di misura + // Unità di misura echo '
{[ "type": "select", "label": "'.tr('Unità di misura').'", "icon-after": "add|'.Modules::get('Unità di misura')['id'].'", "name": "um", "value": "'.$um.'", "ajax-source": "misure" ]}
'; -// Iva -echo ' + // Iva + echo '
{[ "type": "select", "label": "'.tr('Iva').'", "name": "idiva", "values": "query=SELECT id, descrizione FROM co_iva ORDER BY descrizione ASC", "value": "'.$idiva.'" ]}
'; -// Costo unitario -echo ' + // Costo unitario + echo '
{[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "required": 1, "value": "'.$subtot.'", "icon-after": "€" ]}
'; -// Sconto unitario -echo ' + // Sconto unitario + echo '
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
'; +} + echo ' diff --git a/modules/ddt/edit.php b/modules/ddt/edit.php index b25ff86b9..1a9229a66 100644 --- a/modules/ddt/edit.php +++ b/modules/ddt/edit.php @@ -145,6 +145,9 @@ if ($records[0]['stato'] != 'Evaso') { + + + '; - if (empty($r['sconto_globale'])) { - echo ' - '.Translator::numberToLocale($r['qta'] - $r['qta_evasa']).' -
('.tr('Q.tà iniziale').': '.Translator::numberToLocale($r['qta']).')'; - } else { - echo '1'; + if($r['is_descrizione']==0){ + if (empty($r['sconto_globale'])) { + echo ' + '.Translator::numberToLocale($r['qta'] - $r['qta_evasa']).' +
('.tr('Q.tà iniziale').': '.Translator::numberToLocale($r['qta']).')'; + } else { + echo '1'; + } } echo ' '; // Unità di misura echo ' - - '.$r['um'].' + '; + if($r['is_descrizione']==0){ + echo + $r['um']; + } + echo ' '; // Costo unitario echo ' - - '.Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; - if ($r['sconto_unitario'] > 0) { - echo ' -
- '.tr('sconto _TOT_ _TYPE_', [ - '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), - '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), - ]).''; + if ($r['sconto_unitario'] > 0) { + echo ' +
- '.tr('sconto _TOT_ _TYPE_', [ + '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), + '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), + ]).''; + } } - echo ' '; // Iva echo ' - - '.Translator::numberToLocale($r['iva']).' € -
'.$r['desc_iva'].' + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['iva']).' € +
'.$r['desc_iva'].''; + } + echo ' '; // Imponibile echo ' - - '.Translator::numberToLocale($r['subtotale'] - $r['sconto']).' € + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] - $r['sconto']).' €'; + } + echo ' '; // Possibilità di rimuovere una riga solo se il ddt non è evaso diff --git a/modules/fatture/actions.php b/modules/fatture/actions.php index c0e9dc41d..6e4572a52 100755 --- a/modules/fatture/actions.php +++ b/modules/fatture/actions.php @@ -743,6 +743,17 @@ switch (post('op')) { } } break; + + case 'adddescrizione': + if (!empty($id_record)) { + $descrizione = post('descrizione'); + $query = 'INSERT INTO co_righe_documenti(iddocumento, descrizione, is_descrizione) VALUES('.prepare($id_record).', '.prepare($descrizione).', 1)'; + + if ($dbo->query($query)) { + $_SESSION['infos'][] = tr('Riga descrittiva aggiunta!'); + } + } + break; case 'editriga': if (isset($post['idriga'])) { @@ -765,11 +776,12 @@ switch (post('op')) { $subtot = $prezzo * $qta; // Lettura idarticolo dalla riga documento - $rs = $dbo->fetchArray('SELECT iddocumento, idarticolo, qta, abilita_serial FROM co_righe_documenti WHERE id='.prepare($idriga)); + $rs = $dbo->fetchArray('SELECT iddocumento, idarticolo, qta, abilita_serial, is_descrizione FROM co_righe_documenti WHERE id='.prepare($idriga)); $idarticolo = $rs[0]['idarticolo']; $old_qta = $rs[0]['qta']; $iddocumento = $rs[0]['iddocumento']; $abilita_serial = $rs[0]['abilita_serial']; + $is_descrizione = $rs[0]['is_descrizione']; // Controllo per gestire i serial if (!empty($idarticolo)) { @@ -797,8 +809,14 @@ switch (post('op')) { $rs = $dbo->fetchArray($query); $ritenutaacconto = (($prezzo * $qta) - $sconto + $rivalsainps) / 100 * $rs[0]['percentuale']; - // Modifica riga generica sul documento - $query = 'UPDATE co_righe_documenti SET idconto='.prepare($idconto).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', idritenutaacconto='.prepare(post('idritenutaacconto')).', ritenutaacconto='.prepare($ritenutaacconto).', idrivalsainps='.prepare(post('idrivalsainps')).', rivalsainps='.prepare($rivalsainps).', qta='.prepare($qta).' WHERE id='.prepare($idriga).' AND iddocumento='.prepare($iddocumento); + + if($is_descrizione==0){ + // Modifica riga generica sul documento + $query = 'UPDATE co_righe_documenti SET idconto='.prepare($idconto).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', idritenutaacconto='.prepare(post('idritenutaacconto')).', ritenutaacconto='.prepare($ritenutaacconto).', idrivalsainps='.prepare(post('idrivalsainps')).', rivalsainps='.prepare($rivalsainps).', qta='.prepare($qta).' WHERE id='.prepare($idriga).' AND iddocumento='.prepare($iddocumento); + }else{ + // Modifica riga descrizione sul documento + $query = 'UPDATE co_righe_documenti SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga).' AND iddocumento='.prepare($iddocumento); + } if ($dbo->query($query)) { // Modifica per gestire i serial if (!empty($idarticolo)) { diff --git a/modules/fatture/add_descrizione.php b/modules/fatture/add_descrizione.php new file mode 100644 index 000000000..524ffab30 --- /dev/null +++ b/modules/fatture/add_descrizione.php @@ -0,0 +1,50 @@ +fetchArray('SELECT * FROM co_documenti WHERE id='.prepare($id_record)); +$numero = ($record[0]['numero_esterno'] != '') ? $record[0]['numero_esterno'] : $record[0]['numero']; +$idconto = $record[0]['idconto']; +$idanagrafica = $record[0]['idanagrafica']; + +/* + Form di inserimento riga documento +*/ +echo ' +

'.tr('Documento numero _NUM_', [ + '_NUM_' => $numero, +]).'

+ +
+ + + '; + +// Descrizione +echo ' +
+
+ {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1 ]} +
+
'; + +echo ' + + +
+
+ +
+
+
'; \ No newline at end of file diff --git a/modules/fatture/edit.php b/modules/fatture/edit.php index 898cbacee..1730a986a 100644 --- a/modules/fatture/edit.php +++ b/modules/fatture/edit.php @@ -302,6 +302,11 @@ if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') { Riga generica '; + + echo ' + + Descrizione + '; } ?> diff --git a/modules/fatture/edit_riga.php b/modules/fatture/edit_riga.php index 53035e4cb..ebf5d583f 100644 --- a/modules/fatture/edit_riga.php +++ b/modules/fatture/edit_riga.php @@ -44,70 +44,73 @@ echo ' {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1, "value": '.json_encode($rsr[0]['descrizione']).' ]} '; + +if($rsr[0]['is_descrizione']==0){ + + if (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d'acconto") != '' || $dir == 'uscita') { + echo ' +
'; + + // Rivalsa INPS + 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", "required": '.intval($dir != 'uscita').' ]} +
'; + } + + // Ritenuta d'acconto + 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", "required": '.intval($dir != 'uscita').' ]} +
'; + } -if (get_var('Percentuale rivalsa INPS') != '' || get_var("Percentuale ritenuta d'acconto") != '' || $dir == 'uscita') { - echo ' -
'; - - // Rivalsa INPS - 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", "required": '.intval($dir != 'uscita').' ]}
'; } - // Ritenuta d'acconto - 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", "required": '.intval($dir != 'uscita').' ]} -
'; - } + // Iva + echo ' +
+
+ {[ "type": "select", "label": "'.tr('Iva').'", "name": "idiva", "required": 1, "value": "'.$rsr[0]['idiva'].'", "values": "query=SELECT * FROM co_iva ORDER BY descrizione ASC" ]} +
'; echo ' -
'; +
+ {[ "type": "select", "label": "'.tr('Conto').'", "name": "idconto", "required": 1, "value": "'.$idconto.'", "ajax-source": "'.$conti.'" ]} +
+
'; + + // Quantità + echo ' +
+
+ {[ "type": "number", "label": "'.tr('Q.tà').'", "name": "qta", "required": 1, "value": "'.$rsr[0]['qta'].'", "decimals": "qta" ]} +
'; + + // Unità di misura + echo ' +
+ {[ "type": "select", "label": "'.tr('Unità di misura').'", "icon-after": "add|'.Modules::get('Unità di misura')['id'].'", "name": "um", "ajax-source": "misure", "value": "'.$rsr[0]['um'].'" ]} +
'; + + // Costo unitario + echo ' +
+ {[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "required": 1, "value": "'.($rsr[0]['subtotale'] / $rsr[0]['qta']).'", "icon-after": "€" ]} +
'; + + // Sconto unitario + echo ' +
+ {[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]} +
+
'; + } - -// Iva -echo ' -
-
- {[ "type": "select", "label": "'.tr('Iva').'", "name": "idiva", "required": 1, "value": "'.$rsr[0]['idiva'].'", "values": "query=SELECT * FROM co_iva ORDER BY descrizione ASC" ]} -
'; - -echo ' -
- {[ "type": "select", "label": "'.tr('Conto').'", "name": "idconto", "required": 1, "value": "'.$idconto.'", "ajax-source": "'.$conti.'" ]} -
-
'; - -// Quantità -echo ' -
-
- {[ "type": "number", "label": "'.tr('Q.tà').'", "name": "qta", "required": 1, "value": "'.$rsr[0]['qta'].'", "decimals": "qta" ]} -
'; - -// Unità di misura -echo ' -
- {[ "type": "select", "label": "'.tr('Unità di misura').'", "icon-after": "add|'.Modules::get('Unità di misura')['id'].'", "name": "um", "ajax-source": "misure", "value": "'.$rsr[0]['um'].'" ]} -
'; - -// Costo unitario -echo ' -
- {[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "required": 1, "value": "'.($rsr[0]['subtotale'] / $rsr[0]['qta']).'", "icon-after": "€" ]} -
'; - -// Sconto unitario -echo ' -
- {[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]} -
-
'; - echo ' diff --git a/modules/fatture/row-list.php b/modules/fatture/row-list.php index cba91459b..6684ddb8c 100755 --- a/modules/fatture/row-list.php +++ b/modules/fatture/row-list.php @@ -153,43 +153,69 @@ if (!empty($rs)) { '; echo ' - - '.Translator::numberToLocale($r['qta']).' + '; + + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['qta']); + } + + echo ' '; // Unità di misura echo ' - - '.$r['um'].' + '; + + if($r['is_descrizione']==0){ + echo + $r['um']; + } + + echo ' '; // Costo unitario echo ' - - '.Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; + '; + + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; - if ($r['sconto_unitario'] > 0) { - echo ' -
- '.tr('sconto _TOT_ _TYPE_', [ - '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), - '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), - ]).''; + if ($r['sconto_unitario'] > 0) { + echo ' +
- '.tr('sconto _TOT_ _TYPE_', [ + '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), + '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), + ]).''; + } } - + echo ' '; // Iva echo ' - - '.Translator::numberToLocale($r['iva']).' € -
'.$r['desc_iva'].' + '; + + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['iva']).' € +
'.$r['desc_iva'].''; + } + + echo ' '; // Imponibile echo ' - - '.Translator::numberToLocale($r['subtotale'] - $r['sconto']).' € + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] - $r['sconto']).' €'; + } + echo ' '; // Possibilità di rimuovere una riga solo se la fattura non è pagata diff --git a/modules/ordini/actions.php b/modules/ordini/actions.php index c6e7cbaa7..fc8029b1e 100644 --- a/modules/ordini/actions.php +++ b/modules/ordini/actions.php @@ -189,6 +189,17 @@ switch (post('op')) { } } break; + + case 'adddescrizione': + if (!empty($id_record)) { + $descrizione = post('descrizione'); + $query = 'INSERT INTO or_righe_ordini(idordine, descrizione, is_descrizione) VALUES('.prepare($id_record).', '.prepare($descrizione).', 1)'; + + if ($dbo->query($query)) { + $_SESSION['infos'][] = tr('Riga descrittiva aggiunta!'); + } + } + break; // Scollegamento articolo da ordine case 'unlink_articolo': @@ -253,11 +264,12 @@ switch (post('op')) { $sconto = $sconto * $qta; // Lettura idarticolo dalla riga documento - $rs = $dbo->fetchArray('SELECT idordine, idarticolo, qta, abilita_serial FROM or_righe_ordini WHERE id='.prepare($idriga)); + $rs = $dbo->fetchArray('SELECT idordine, idarticolo, qta, abilita_serial, is_descrizione FROM or_righe_ordini WHERE id='.prepare($idriga)); $idarticolo = $rs[0]['idarticolo']; $old_qta = $rs[0]['qta']; $idordine = $rs[0]['idordine']; $abilita_serial = $rs[0]['abilita_serial']; + $is_descrizione = $rs[0]['is_descrizione']; // Controllo per gestire i serial if (!empty($idarticolo)) { @@ -275,8 +287,12 @@ switch (post('op')) { $iva_indetraibile = $iva / 100 * $rs[0]['indetraibile']; $desc_iva = $rs[0]['descrizione']; - // Modifica riga generica sul documento - $query = 'UPDATE or_righe_ordini SET idiva='.prepare($idiva).', desc_iva='.prepare($rs[0]['descrizione']).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + if($is_descrizione==0){ + // Modifica riga generica sul documento + $query = 'UPDATE or_righe_ordini SET idiva='.prepare($idiva).', desc_iva='.prepare($rs[0]['descrizione']).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + }else{ + $query = 'UPDATE or_righe_ordini SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga); + } if ($dbo->query($query)) { $_SESSION['infos'][] = tr('Riga modificata!'); diff --git a/modules/ordini/add_descrizione.php b/modules/ordini/add_descrizione.php new file mode 100644 index 000000000..3dd54b694 --- /dev/null +++ b/modules/ordini/add_descrizione.php @@ -0,0 +1,41 @@ +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, +]).'

+ +
+ + + '; + +// Descrizione +echo ' +
+
+ {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1 ]} +
+
'; + +echo ' + + +
+
+ +
+
+
'; \ No newline at end of file diff --git a/modules/ordini/add_riga.php b/modules/ordini/add_riga.php index 58003d60f..558b23137 100644 --- a/modules/ordini/add_riga.php +++ b/modules/ordini/add_riga.php @@ -79,39 +79,41 @@ echo '
'; -// Iva -echo ' +if($rsr[0]['is_descrizione']!=1){ + // Iva + echo '
{[ "type": "select", "label": "'.tr('Iva').'", "name": "idiva", "required": 1, "value": "'.$idiva.'", "values": "query=SELECT * FROM co_iva ORDER BY descrizione ASC" ]}
'; -// Quantità -echo ' + // Quantità + echo '
{[ "type": "number", "label": "'.tr('Q.tà').'", "name": "qta", "required": 1, "value": "'.$qta.'", "decimals": "qta" ]}
'; -// Unità di misura -echo ' + // Unità di misura + echo '
{[ "type": "select", "label": "'.tr('Unità di misura').'", "icon-after": "add|'.Modules::get('Unità di misura')['id'].'", "name": "um", "ajax-source": "misure", "value": "'.$um.'" ]}
'; -// Costo unitario -echo ' + // Costo unitario + echo '
{[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "required": 1, "icon-after": "€", "value": "'.$prezzo.'" ]}
'; -// Sconto unitario -echo ' + // Sconto unitario + echo '
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
'; +} echo ' diff --git a/modules/ordini/edit.php b/modules/ordini/edit.php index 5c0c92032..18f3fca54 100644 --- a/modules/ordini/edit.php +++ b/modules/ordini/edit.php @@ -98,6 +98,7 @@ if ($module['name'] == 'Ordini cliente') { ?> Articolo Riga generica + Descrizione diff --git a/modules/ordini/row-list.php b/modules/ordini/row-list.php index c8b123dd8..ec508c545 100644 --- a/modules/ordini/row-list.php +++ b/modules/ordini/row-list.php @@ -75,49 +75,65 @@ if (!empty($rs)) { echo ' '; - if (empty($r['sconto_globale'])) { - echo ' - '.Translator::numberToLocale($r['qta'] - $r['qta_evasa']).' -
('.tr('Q.tà iniziale').': '.Translator::numberToLocale($r['qta']).')'; - } else { - echo '1'; + if($r['is_descrizione']==0){ + if (empty($r['sconto_globale'])) { + echo ' + '.Translator::numberToLocale($r['qta'] - $r['qta_evasa']).' +
('.tr('Q.tà iniziale').': '.Translator::numberToLocale($r['qta']).')'; + } else { + echo '1'; + } } echo ' '; // Unità di misura echo ' - - '.$r['um'].' + '; + if($r['is_descrizione']==0){ + echo + $r['um']; + } + echo ' '; // Costo unitario echo ' - - '.Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] / $r['qta']).' €'; - if ($r['sconto_unitario'] > 0) { - echo ' -
- '.tr('sconto _TOT_ _TYPE_', [ - '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), - '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), - ]).''; + if ($r['sconto_unitario'] > 0) { + echo ' +
- '.tr('sconto _TOT_ _TYPE_', [ + '_TOT_' => Translator::numberToLocale($r['sconto_unitario']), + '_TYPE_' => ($r['tipo_sconto'] == 'PRC' ? '%' : '€'), + ]).''; + } } - echo ' '; // Iva echo ' - - '.Translator::numberToLocale($r['iva']).' € -
'.$r['desc_iva'].' + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['iva']).' € +
'.$r['desc_iva'].''; + } + echo ' '; // Imponibile echo ' - - '.Translator::numberToLocale($r['subtotale'] - $r['sconto']).' € + '; + if($r['is_descrizione']==0){ + echo + Translator::numberToLocale($r['subtotale'] - $r['sconto']).' €'; + } + echo ' '; // Possibilità di rimuovere una riga solo se l'ordine non è evaso diff --git a/modules/preventivi/actions.php b/modules/preventivi/actions.php index 629e2f803..7633e6fcf 100644 --- a/modules/preventivi/actions.php +++ b/modules/preventivi/actions.php @@ -233,10 +233,25 @@ switch (post('op')) { $_SESSION['infos'][] = tr('Articolo aggiunto!'); break; + + case 'adddescrizione': + if (!empty($id_record)) { + $descrizione = post('descrizione'); + $query = 'INSERT INTO co_righe_preventivi(idpreventivo, descrizione, is_descrizione) VALUES('.prepare($id_record).', '.prepare($descrizione).', 1)'; + + if ($dbo->query($query)) { + $_SESSION['infos'][] = tr('Riga descrittiva aggiunta!'); + } + } + break; case 'editriga': $idriga = post('idriga'); $descrizione = post('descrizione'); + + //Info riga Preventivo + $rs = $dbo->fetchArray('SELECT * FROM co_righe_preventivi WHERE id='.prepare($idriga)); + $is_descrizione = $rs[0]['is_descrizione']; $qta = $post['qta']; $prezzo = $post['prezzo']; @@ -257,8 +272,12 @@ switch (post('op')) { $iva_indetraibile = $iva / 100 * $rs2[0]['indetraibile']; $desc_iva = $rs2[0]['descrizione']; - // Modifica riga generica sul documento - $query = 'UPDATE co_righe_preventivi SET idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + if($is_descrizione==0){ + // Modifica riga generica sul documento + $query = 'UPDATE co_righe_preventivi SET idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga); + }else{ + $query = 'UPDATE co_righe_preventivi SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga); + } $dbo->query($query); $_SESSION['infos'][] = 'Riga modificata!'; diff --git a/modules/preventivi/add_descrizione.php b/modules/preventivi/add_descrizione.php new file mode 100644 index 000000000..b7db4cb6d --- /dev/null +++ b/modules/preventivi/add_descrizione.php @@ -0,0 +1,41 @@ +fetchArray('SELECT * FROM co_preventivi WHERE id='.prepare($id_record)); +$numero = $record[0]['numero']; +$idanagrafica = $record[0]['idanagrafica']; + +/* + Form di inserimento riga documento +*/ +echo ' +

'.tr('Preventivo numero _NUM_', [ + '_NUM_' => $numero, +]).'

+ +
+ + + '; + +// Descrizione +echo ' +
+
+ {[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "descrizione", "required": 1 ]} +
+
'; + +echo ' + + +
+
+ +
+
+
'; \ No newline at end of file diff --git a/modules/preventivi/edit.php b/modules/preventivi/edit.php index 6feea63a0..6096e66dd 100644 --- a/modules/preventivi/edit.php +++ b/modules/preventivi/edit.php @@ -139,9 +139,11 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica'];
-
- Riga
-
+ + Riga + + Descrizione + diff --git a/modules/preventivi/edit_riga.php b/modules/preventivi/edit_riga.php index 89fa9d677..1043092ec 100644 --- a/modules/preventivi/edit_riga.php +++ b/modules/preventivi/edit_riga.php @@ -61,13 +61,15 @@ echo ' '; -// Elenco articoli raggruppati per gruppi e sottogruppi -echo ' +if($rsr[0]['is_descrizione']!=1){ + // Elenco articoli raggruppati per gruppi e sottogruppi + echo '
{[ "type": "select", "label": "'.tr('Articolo').'", "name": "idarticolo", "value": "'.$idarticolo.'", "ajax-source": "articoli" ]}
'; +} // Descrizione echo ' @@ -77,39 +79,42 @@ echo '
'; -// Quantità -echo ' +if($rsr[0]['is_descrizione']!=1){ + // Quantità + echo '
{[ "type": "number", "label": "'.tr('Q.tà').'", "name": "qta", "value": "'.$qta.'", "required": 1, "decimals": "qta" ]}
'; -// Unità di misura -echo ' + // Unità di misura + echo '
{[ "type": "select", "label": "'.tr('Unità di misura').'", "icon-after": "add|'.Modules::get('Unità di misura')['id'].'", "name": "um", "value": "'.$um.'", "ajax-source": "misure" ]}
'; -// Iva -echo ' + // Iva + echo '
{[ "type": "select", "label": "'.tr('Iva').'", "name": "idiva", "required": 1, "value": "'.$idiva.'", "values": "query=SELECT * FROM co_iva ORDER BY descrizione ASC" ]}
'; -// Costo unitario -echo ' + // Costo unitario + echo '
{[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "required": 1, "value": "'.$subtot.'", "icon-after": "€" ]}
'; -// Sconto unitario -echo ' + // Sconto unitario + echo '
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
'; + +} echo '