226 lines
7.4 KiB
PHP
226 lines
7.4 KiB
PHP
|
<?php
|
||
|
include_once(__DIR__."/../../core.php");
|
||
|
|
||
|
|
||
|
|
||
|
$idmodulo = $html->form('idmodule');
|
||
|
$module_name=get_module_name_by_id($idmodulo);
|
||
|
|
||
|
|
||
|
$iddocumento = $html->form('iddocumento');
|
||
|
$dir = get_var_tipodoc2($iddocumento,"dir");
|
||
|
$rs = $dbo->fetchArray("select id as idintervento , descrizione from co_tipidocumento");
|
||
|
$n2 = sizeof($rs);
|
||
|
$numero=get_var_tipodoc2($iddocumento,"numero_documento");
|
||
|
|
||
|
/*
|
||
|
Form di inserimento riga documento
|
||
|
*/
|
||
|
echo "<label>Documento numero $numero</label><br><br>\n";
|
||
|
echo "<form id=\"link_form\" action=\"".$rootdir."/editor.php?id_module=".$modules_info[$module_name]['id']."&id_record=".$iddocumento."\" method=\"post\">\n";
|
||
|
echo " <input type='hidden' name='op' value='add_transazione'>\n";
|
||
|
echo " <input type='hidden' name='dir' value='".$dir."'>\n";
|
||
|
echo " <input type='hidden' name='backto' value='record-edit'>\n";
|
||
|
|
||
|
echo " <div class='row'>\n";
|
||
|
|
||
|
|
||
|
//Seleziona tipologia documento
|
||
|
echo " <div class='col-md-6'>\n";
|
||
|
echo " <div class='form-group'>\n";
|
||
|
echo " <label>Tipo documento</label>\n";
|
||
|
if( ($n2) == 0 ){
|
||
|
echo " ... Non ci sono tipologie documenti in archivio ...<br><br>\n";
|
||
|
echo " <input type=\"hidden\" id=\"idintervento\" value=\"\">\n";
|
||
|
}
|
||
|
else{
|
||
|
echo " <select id=\"idintervento\" name=\"idintervento\" class=\"superselect\" onchange=\"$('#descrizione').val( $(this).find(':selected').text() ); ;\">\n";
|
||
|
echo " <option value=\"\">- Seleziona una tipologia -</option>\n";
|
||
|
echo " <optgroup label=\"Tipologie documento (".$n2.")\">\n";
|
||
|
for( $i=0;$i<$n2;$i++ ){
|
||
|
echo " <option value=\"".$rs[$i]['idintervento']."\" >".$rs[$i]['descrizione']." </option>\n";
|
||
|
}
|
||
|
echo " </optgroup>\n";
|
||
|
}
|
||
|
echo " </select>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
//Selezione articoli del documento da portare nel nuovo documento
|
||
|
$query = "SELECT * FROM co_documenti INNER JOIN co_righe_documenti ON co_documenti.id=co_righe_documenti.iddocumento WHERE co_documenti.id='".$iddocumento."' and qta <> qta_evasa";
|
||
|
$rs = $dbo->fetchArray( $query );
|
||
|
$n = sizeof($rs);
|
||
|
|
||
|
if( $n>0 ){
|
||
|
$show_btn = true;
|
||
|
echo " <div class='form'>\n";
|
||
|
?>
|
||
|
|
||
|
<div class="clearfix"></div>
|
||
|
<br>
|
||
|
|
||
|
<div class="row">
|
||
|
<div class="col-md-12">
|
||
|
<table class="table table-striped table-hover table-condensed">
|
||
|
|
||
|
<tr>
|
||
|
<th>Descrizione</th>
|
||
|
<th width="10%">Q.tà</th>
|
||
|
<th width="15%">Q.tà da evadere</th>
|
||
|
</tr>
|
||
|
|
||
|
<?php
|
||
|
$totale = 0.00;
|
||
|
|
||
|
for( $i=0; $i<$n; $i++ ){
|
||
|
//Descrizione
|
||
|
echo " <tr>\n";
|
||
|
echo " <td class='text-left' >\n";
|
||
|
|
||
|
echo " <input type='hidden' name='idrigadocumento[]' value=\"".$rs[$i]['id']."\" />\n";
|
||
|
echo " <input type='hidden' id='idarticolo_".$i."' name='idarticolo[]' value=\"".$rs[$i]['idarticolo']."\" />\n";
|
||
|
echo " <input type='hidden' id='descrizione_".$i."' name='descrizione[]' value=\"".$rs[$i]['descrizione']."\" />\n";
|
||
|
|
||
|
echo nl2br($rs[$i]['descrizione'])."<small>";
|
||
|
if( $rs[$i]['lotto']!='' ){ echo "<br>Lotto: ".$rs[$i]['lotto']; }
|
||
|
if( $rs[$i]['serial']!='' ){ echo "<br>SN: ".$rs[$i]['serial']; }
|
||
|
if( $rs[$i]['altro']!='' ){ echo "<br>".$rs[$i]['altro']; }
|
||
|
echo " </small>\n";
|
||
|
echo " </td>\n";
|
||
|
|
||
|
//Q.tà rimanente
|
||
|
echo " <td class='text-left' id='rimanente_".$i."'>\n";
|
||
|
echo " <input type='hidden' id='qtamax_".$i."' value='".($rs[$i]['qta']-$rs[$i]['qta_evasa'])."' />\n";
|
||
|
echo " <input type='hidden' id='um_".$i."' name='um[]' value='".$rs[$i]['um']."' />\n";
|
||
|
echo ($rs[$i]['qta']-$rs[$i]['qta_evasa'])."\n";
|
||
|
echo " </td>\n";
|
||
|
|
||
|
//Q.tà da evadere
|
||
|
echo " <td class='text-left' >\n";
|
||
|
echo " <input class='form-control inputmask-decimal' type='text' id='qta_".$i."' name='qta_da_evadere[]' value='".($rs[$i]['qta']-$rs[$i]['qta_evasa'])."' onkeyup=\"ricalcola_subtotale_riga(".$i.");\" />\n";
|
||
|
echo " </td>\n";
|
||
|
|
||
|
//Subtotale
|
||
|
$subtotale = $rs[$i]['subtotale'] / $rs[$i]['qta'] * ($rs[$i]['qta']-$rs[$i]['qta_evasa']);
|
||
|
$sconto = $rs[$i]['sconto'] / $rs[$i]['qta'] * ($rs[$i]['qta']-$rs[$i]['qta_evasa']);
|
||
|
$iva = $rs[$i]['iva'] / $rs[$i]['qta'] * ($rs[$i]['qta']-$rs[$i]['qta_evasa']);
|
||
|
echo " <td class='text-right'>\n";
|
||
|
echo " <input type='hidden' id='subtot_".$i."' name='subtot[]' value=\"".number_format($rs[$i]['subtotale']/$rs[$i]['qta'], get_var("Cifre decimali"), ".", "")."\" />\n";
|
||
|
echo " <input type='hidden' id='sconto_".$i."' name='sconto[]' value=\"".number_format($rs[$i]['sconto']/$rs[$i]['qta'], get_var("Cifre decimali"), ".", "")."\" />\n";
|
||
|
echo " <input type='hidden' id='idiva_".$i."' name='idiva[]' value=\"".$rs[$i]['idiva']."\" />\n";
|
||
|
echo " <input type='hidden' id='iva_".$i."' name='iva[]' value=\"".number_format($rs[$i]['iva']/$rs[$i]['qta'], get_var("Cifre decimali"), ".", "")."\" />\n";
|
||
|
|
||
|
echo " </td></tr>\n";
|
||
|
|
||
|
$totale += $subtotale-$sconto+$iva;
|
||
|
}
|
||
|
|
||
|
|
||
|
echo " </table>\n";
|
||
|
echo " </div>\n";
|
||
|
echo "</div>\n";
|
||
|
}
|
||
|
|
||
|
else{
|
||
|
$show_btn = false;
|
||
|
echo "<b>"._("Non ci sono articoli da evadere in questo ordine")."...</b><br>\n";
|
||
|
}
|
||
|
?>
|
||
|
|
||
|
|
||
|
|
||
|
<script type="text/javascript">
|
||
|
dir = '<?php echo $dir ?>';
|
||
|
function add_transazione(){
|
||
|
if( $('#idintervento option:selected').val()!='' ){
|
||
|
$("#link_form").submit();
|
||
|
} else {
|
||
|
swal("Tipologia documento mancante!")
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
$(document).ready( function(){
|
||
|
start_superselect();
|
||
|
start_inputmask();
|
||
|
$('.datepicker').datepicker();
|
||
|
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
function ricalcola_subtotale_riga( r ){
|
||
|
subtot = force_decimal( $("#subtot_"+r).val() );
|
||
|
|
||
|
sconto = force_decimal( $("#sconto_"+r).val() );
|
||
|
subtot = subtot-sconto;
|
||
|
|
||
|
qta = force_decimal( $("#qta_"+r).val() );
|
||
|
if( isNaN(qta) ){
|
||
|
qta = 0;
|
||
|
}
|
||
|
qtamax = force_decimal( $("#qtamax_"+r).val() );
|
||
|
if( isNaN(qtamax) ){
|
||
|
qtamax = 0;
|
||
|
}
|
||
|
iva = force_decimal( $("#iva_"+r).val() );
|
||
|
//Se inserisco una quantità da evadere maggiore di quella rimanente, la imposto al massimo possibile
|
||
|
if( qta>qtamax ){
|
||
|
qta = qtamax.toFixed(2).toString().replace('.', ',');
|
||
|
$('#qta_'+r).val( qta );
|
||
|
}
|
||
|
//Se tolgo la spunta della casella dell'evasione devo azzerare i conteggi
|
||
|
if( !$('#checked_'+r).is(':checked') ){
|
||
|
qta = 0;
|
||
|
}
|
||
|
subtotale = (subtot*qta+iva*qta).toFixed(2).toString();
|
||
|
subtotale = subtotale.replace( '.', ',' );
|
||
|
$("#subtotale_"+r).html(subtotale+" €");
|
||
|
$("#subtotaledettagli_"+r).html( (subtot*qta).toFixed(2)+" + " + (iva*qta).toFixed(2) );
|
||
|
ricalcola_totale();
|
||
|
}
|
||
|
|
||
|
|
||
|
function ricalcola_totale(){
|
||
|
r = 0;
|
||
|
totale = 0.00;
|
||
|
$('input[id*=qta_]').each( function(){
|
||
|
qta = force_decimal( $(this).val() );
|
||
|
if( !$('#checked_'+r).is(':checked') || isNaN(qta) ){
|
||
|
qta = 0;
|
||
|
}
|
||
|
subtot = force_decimal( $("#subtot_"+r).val() );
|
||
|
sconto = force_decimal( $("#sconto_"+r).val() );
|
||
|
subtot = subtot-sconto;
|
||
|
iva = force_decimal( $("#iva_"+r).val() );
|
||
|
totale += subtot*qta+iva*qta;
|
||
|
r++;
|
||
|
});
|
||
|
$('#totale').html( (totale.toFixed(2).replace( '.', ',' )) + " €" );
|
||
|
if( totale==0 )
|
||
|
$('#submit_btn').hide();
|
||
|
else
|
||
|
$('#submit_btn').show();
|
||
|
}
|
||
|
|
||
|
</script>
|
||
|
<script src="<?php echo $rootdir; ?>/lib/init.js"></script>
|
||
|
<?php
|
||
|
echo "<a onclick=\"add_transazione();\" class=\"btn btn-primary pull-right\"><i class=\"fa fa-plus\"></i> Crea transazione sucessiva</a>\n";
|
||
|
echo "</form>\n";
|
||
|
|
||
|
?>
|
||
|
|
||
|
<div class="clearfix"></div>
|
||
|
|
||
|
|