1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2025-01-03 11:29:24 +01:00

Estensione del supporto ai listini

This commit is contained in:
Thomas Zilio 2017-09-18 09:57:27 +02:00
parent b46cc73b5e
commit f8120f9cf7
12 changed files with 81 additions and 68 deletions

View File

@ -149,7 +149,7 @@ switch (post('op')) {
$sconto = ($tipo_sconto == 'PRC') ? ($prezzo * $sconto_unitario) / 100 : $sconto_unitario; $sconto = ($tipo_sconto == 'PRC') ? ($prezzo * $sconto_unitario) / 100 : $sconto_unitario;
$sconto = $sconto * $qta; $sconto = $sconto * $qta;
$subtot = $prezzo_vendita * $qta; $subtot = $prezzo * $qta;
$um = post('um'); $um = post('um');

View File

@ -2,12 +2,10 @@
include_once __DIR__.'/../../core.php'; include_once __DIR__.'/../../core.php';
$idcontratto = $get['idcontratto'];
$idriga = $get['idriga']; $idriga = $get['idriga'];
// Info contratto // Info contratto
$q = 'SELECT *, (SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT idlistino_vendite FROM an_anagrafiche WHERE idanagrafica=co_contratti.idanagrafica)) AS prc_guadagno FROM co_contratti WHERE id='.prepare($idcontratto); $rs = $dbo->fetchArray('SELECT * FROM co_contratti WHERE id='.prepare($id_record));
$rs = $dbo->fetchArray($q);
$numero = $rs[0]['numero']; $numero = $rs[0]['numero'];
$idanagrafica = $rs[0]['idanagrafica']; $idanagrafica = $rs[0]['idanagrafica'];
@ -23,14 +21,16 @@ if (empty($idriga)) {
$sconto = 0; $sconto = 0;
$tipo_sconto = ''; $tipo_sconto = '';
if (!empty($rs[0]['prc_guadagno'])) { // Leggo l'iva predefinita per l'anagrafica e se non c'è leggo quella predefinita generica
$sconto = $rs[0]['prc_guadagno']; $iva = $dbo->fetchArray('SELECT idiva_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_vendite FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica).')');
if (!empty($rss)) {
$sconto = $rss[0]['prc_guadagno'];
$tipo_sconto = 'PRC'; $tipo_sconto = 'PRC';
} }
// Leggo l'iva predefinita dall'anagrafica e se non c'è leggo quella predefinita generica
$rsa = $dbo->fetchArray('SELECT idiva_vendite AS idiva FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica));
$idiva = (!empty($rsa[0]['idiva'])) ? $rsa[0]['idiva'] : get_var('Iva predefinita');
} else { } else {
$op = 'editriga'; $op = 'editriga';
$button = tr('Modifica'); $button = tr('Modifica');

View File

@ -269,7 +269,7 @@ if (sizeof($rs) > 0) {
<?php <?php
if ($records[0]['stato'] != 'Pagato') { if ($records[0]['stato'] != 'Pagato') {
?> ?>
<a class="btn btn-primary" data-href="<?php echo $rootdir ?>/modules/contratti/add_riga.php?idcontratto=<?php echo $id_record ?>" data-toggle="modal" data-title="Aggiungi riga" data-target="#bs-popup"><i class="fa fa-plus"></i> <?php echo tr('Riga'); ?></a><br> <a class="btn btn-primary" data-href="<?php echo $rootdir ?>/modules/contratti/add_riga.php?id_module=<?php echo $id_module ?>&id_record=<?php echo $id_record ?>" data-toggle="modal" data-title="Aggiungi riga" data-target="#bs-popup"><i class="fa fa-plus"></i> <?php echo tr('Riga'); ?></a><br>
<?php <?php
} }

View File

@ -6,26 +6,16 @@ $module = Modules::getModule($id_module);
if ($module['name'] == 'Ddt di vendita') { if ($module['name'] == 'Ddt di vendita') {
$dir = 'entrata'; $dir = 'entrata';
$listino = 'idlistino_vendite';
} else { } else {
$dir = 'uscita'; $dir = 'uscita';
$listino = 'idlistino_acquisti';
} }
$_SESSION['superselect']['dir'] = $dir; $_SESSION['superselect']['dir'] = $dir;
// Info documento // Info documento
$q = 'SELECT *, (SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT '.$listino.' FROM an_anagrafiche WHERE idanagrafica=dt_ddt.idanagrafica)) AS prc_guadagno FROM dt_ddt WHERE id='.prepare($id_record); $rs = $dbo->fetchArray('SELECT * FROM dt_ddt WHERE id='.prepare($id_record));
$rs = $dbo->fetchArray($q);
$numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero']; $numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero'];
$idanagrafica = $rs[0]['idanagrafica']; $idanagrafica = $rs[0]['idanagrafica'];
if (!empty($rs[0]['prc_guadagno'])) {
$sconto = $rs[0]['prc_guadagno'];
$tipo_sconto = 'PRC';
}
/* /*
Form di inserimento riga documento Form di inserimento riga documento
*/ */
@ -79,9 +69,15 @@ echo '
</div>'; </div>';
// Sconto unitario // 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';
}
echo ' echo '
<div class="col-md-3"> <div class="col-md-3">
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc| '.$tipo_sconto.'" ]} {[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
</div> </div>
</div>'; </div>';

View File

@ -35,9 +35,19 @@ if (!empty($get['idriga'])) {
$descrizione = ''; $descrizione = '';
$qta = 1; $qta = 1;
$um = ''; $um = '';
$idiva = get_var('Iva predefinita');
$subtot = 0; $subtot = 0;
$sconto = 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';
}
} }
echo ' echo '

View File

@ -7,25 +7,15 @@ $module = Modules::getModule($id_module);
if ($module['name'] == 'Fatture di vendita') { if ($module['name'] == 'Fatture di vendita') {
$dir = 'entrata'; $dir = 'entrata';
$conti = 'conti-vendite'; $conti = 'conti-vendite';
$listino = 'idlistino_vendite';
} else { } else {
$dir = 'uscita'; $dir = 'uscita';
$conti = 'conti-acquisti'; $conti = 'conti-acquisti';
$listino = 'idlistino_acquisti';
} }
// Info documento // Info documento
$q = 'SELECT *, (SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT '.$listino.' FROM an_anagrafiche WHERE idanagrafica=co_documenti.idanagrafica)) AS prc_guadagno FROM co_documenti WHERE id='.prepare($id_record); $record = $dbo->fetchArray('SELECT * FROM co_documenti WHERE id='.prepare($id_record));
$record = $dbo->fetchArray($q);
$numero = ($record[0]['numero_esterno'] != '') ? $record[0]['numero_esterno'] : $record[0]['numero']; $numero = ($record[0]['numero_esterno'] != '') ? $record[0]['numero_esterno'] : $record[0]['numero'];
if (!empty($rs[0]['prc_guadagno'])) {
$sconto = $rs[0]['prc_guadagno'];
$tipo_sconto = 'PRC';
}
$idconto = $record[0]['idconto']; $idconto = $record[0]['idconto'];
$idanagrafica = $record[0]['idanagrafica']; $idanagrafica = $record[0]['idanagrafica'];
@ -100,9 +90,15 @@ echo '
</div>'; </div>';
// Sconto unitario // 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';
}
echo ' echo '
<div class="col-md-3"> <div class="col-md-3">
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc| '.$tipo_sconto.'" ]} {[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
</div> </div>
</div>'; </div>';

View File

@ -100,9 +100,15 @@ echo '
</div>'; </div>';
// Sconto unitario // 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';
}
echo ' echo '
<div class="col-md-3"> <div class="col-md-3">
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "icon-after": "choice|untprc" ]} {[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
</div> </div>
</div>'; </div>';

View File

@ -12,9 +12,8 @@ include_once __DIR__.'/../../core.php';
</div> </div>
<div class="col-md-6"> <div class="col-md-6">
{[ "type": "number", "label": "<?php echo tr('Guadagno/sconto'); ?>", "name": "prc_guadagno", "required": 1, "value": "0", "icon-after": "%" ]} {[ "type": "number", "label": "<?php echo tr('Rincaro/sconto'); ?>", "name": "prc_guadagno", "required": 1, "value": "0", "icon-after": "%", "help": "<?php echo tr('Il valore positivo indica uno sconto').'. '.tr('Per applicare una percentuale di rincaro inserire un valore negativo').'.'; ?>" ]}
</div> </div>
</div> </div>
<!-- PULSANTI --> <!-- PULSANTI -->

View File

@ -1,4 +1,5 @@
<?php <?php
include_once __DIR__.'/../../core.php'; include_once __DIR__.'/../../core.php';
?><form action="" method="post" role="form"> ?><form action="" method="post" role="form">
@ -8,7 +9,7 @@ include_once __DIR__.'/../../core.php';
<!-- DATI ARTICOLO --> <!-- DATI ARTICOLO -->
<div class="panel panel-primary"> <div class="panel panel-primary">
<div class="panel-heading"> <div class="panel-heading">
<h3 class="panel-title"><?php echo tr("Listino"); ?></h3> <h3 class="panel-title"><?php echo tr('Listino'); ?></h3>
</div> </div>
<div class="panel-body"> <div class="panel-body">
@ -17,23 +18,22 @@ include_once __DIR__.'/../../core.php';
</div> </div>
<div class="clearfix"></div> <div class="clearfix"></div>
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-6">
{[ "type": "text", "label": "<?php echo tr("Nome"); ?>", "name": "nome", "required": 1, "value": "$nome$" ]} {[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": 1, "value": "$nome$" ]}
</div>
<div class="col-md-4">
{[ "type": "number", "label": "<?php echo tr("Guadagno/sconto"); ?>", "name": "prc_guadagno", "required": 1, "value": "$prc_guadagno$", "icon-after": "%" ]}
</div> </div>
<div class="col-md-6">
{[ "type": "number", "label": "<?php echo tr('Rincaro/sconto'); ?>", "name": "prc_guadagno", "required": 1, "value": "$prc_guadagno$", "icon-after": "%", "help": "<?php echo tr('Il valore positivo indica uno sconto').'. '.tr('Per applicare una percentuale di rincaro inserire un valore negativo').'.'; ?>" ]}
</div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
{[ "type": "textarea", "label": "<?php echo tr("Note"); ?>", "name": "note", "value": "$note$" ]} {[ "type": "textarea", "label": "<?php echo tr('Note'); ?>", "name": "note", "value": "$note$" ]}
</div> </div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -6,25 +6,15 @@ $module = Modules::getModule($id_module);
if ($module['name'] == 'Ordini cliente') { if ($module['name'] == 'Ordini cliente') {
$dir = 'entrata'; $dir = 'entrata';
$listino = 'idlistino_vendite';
} else { } else {
$dir = 'uscita'; $dir = 'uscita';
$listino = 'idlistino_acquisti';
} }
//Info documento // Info documento
$q = 'SELECT *, (SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT '.$listino.' FROM an_anagrafiche WHERE idanagrafica=or_ordini.idanagrafica) ) AS prc_guadagno FROM or_ordini WHERE id='.prepare($id_record); $rs = $dbo->fetchArray('SELECT * FROM or_ordini WHERE id='.prepare($id_record));
$rs = $dbo->fetchArray($q);
$numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero']; $numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero'];
$idanagrafica = $rs[0]['idanagrafica']; $idanagrafica = $rs[0]['idanagrafica'];
if (!empty($rs[0]['prc_guadagno'])) {
$sconto = $rs[0]['prc_guadagno'];
$tipo_sconto = 'PRC';
}
// Seleziona articolo // Seleziona articolo
// - per i documenti di vendita deve esserci almeno 1 unità // - per i documenti di vendita deve esserci almeno 1 unità
// - per i documenti di acquisto mostro tutti gli articoli // - per i documenti di acquisto mostro tutti gli articoli
@ -88,9 +78,15 @@ echo '
</div>'; </div>';
// Sconto unitario // 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';
}
echo ' echo '
<div class="col-md-6"> <div class="col-md-6">
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc| '.$tipo_sconto.'" ]} {[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$sconto.'", "icon-after": "choice|untprc|'.$tipo_sconto.'" ]}
</div> </div>
</div>'; </div>';

View File

@ -11,8 +11,7 @@ if ($module['name'] == 'Ordini cliente') {
} }
// Info documento // Info documento
$q = 'SELECT * FROM or_ordini WHERE id='.prepare($id_record); $rs = $dbo->fetchArray('SELECT * FROM or_ordini WHERE id='.prepare($id_record));
$rs = $dbo->fetchArray($q);
$numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero']; $numero = (!empty($rs[0]['numero_esterno'])) ? $rs[0]['numero_esterno'] : $rs[0]['numero'];
$idanagrafica = $rs[0]['idanagrafica']; $idanagrafica = $rs[0]['idanagrafica'];
@ -32,6 +31,13 @@ if (empty($idriga)) {
// Leggo l'iva predefinita per l'anagrafica e se non c'è leggo quella predefinita generica // 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)); $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'); $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 { } else {
$op = 'editriga'; $op = 'editriga';
$button = tr('Modifica'); $button = tr('Modifica');

View File

@ -5,8 +5,7 @@ include_once __DIR__.'/../../core.php';
$idriga = get('idriga'); $idriga = get('idriga');
// Info preventivo // Info preventivo
$q = 'SELECT numero, idanagrafica, (SELECT prc_guadagno FROM mg_listini WHERE id=(SELECT idlistino_vendite FROM an_anagrafiche WHERE idanagrafica=co_preventivi.idanagrafica)) AS prc_guadagno FROM co_preventivi WHERE id='.prepare($id_record); $rs = $dbo->fetchArray('SELECT * FROM co_preventivi WHERE id='.prepare($id_record));
$rs = $dbo->fetchArray($q);
$numero = $rs[0]['numero']; $numero = $rs[0]['numero'];
$idanagrafica = $rs[0]['idanagrafica']; $idanagrafica = $rs[0]['idanagrafica'];
@ -19,12 +18,17 @@ if (empty($idriga)) {
$descrizione = ''; $descrizione = '';
$qta = 1; $qta = 1;
$um = ''; $um = '';
$idiva = get_var('Iva predefinita');
$subtot = 0; $subtot = 0;
$sconto = 0; $sconto = 0;
if (!empty($rs[0]['prc_guadagno'])) { // Leggo l'iva predefinita per l'anagrafica e se non c'è leggo quella predefinita generica
$sconto = $rs[0]['prc_guadagno']; $iva = $dbo->fetchArray('SELECT idiva_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_vendite FROM an_anagrafiche WHERE idanagrafica='.prepare($idanagrafica).')');
if (!empty($rss)) {
$sconto = $rss[0]['prc_guadagno'];
$tipo_sconto = 'PRC'; $tipo_sconto = 'PRC';
} }
} else { } else {