Bugfix distribuito
This commit is contained in:
parent
b2973f1c40
commit
6eb751afb6
|
@ -108,19 +108,16 @@ switch (post('op')) {
|
|||
$idarticolo = post('idarticolo');
|
||||
$qta = post('qta');
|
||||
|
||||
// Decremento la quantità dal magazzino centrale
|
||||
add_movimento_magazzino($idarticolo, -$qta, ['idautomezzo' => $id_record]);
|
||||
|
||||
// Verifico se nell'automezzo c'è già questo articolo
|
||||
$rs = $dbo->fetchArray("SELECT id, qta FROM mg_articoli_automezzi WHERE idarticolo=".prepare($idarticolo)." AND idautomezzo=".prepare($id_record));
|
||||
|
||||
// Se nell'automezzo c'è già questo articolo incremento la quantità...
|
||||
if (!empty($rs) && $rs[0]['qta'] >= 0) {
|
||||
$dbo->query('UPDATE mg_articoli_automezzi SET qta=qta+'.$qta." WHERE id=".prepare($rs[0]['id']));
|
||||
} else { // ...altrimenti inserisco la scorta nell'automezzo da zero
|
||||
$dbo->query('INSERT INTO mg_articoli_automezzi(idarticolo, idautomezzo, qta) VALUES ('.prepare($idarticolo).', '.prepare($id_record).', '.prepare($qta).')');
|
||||
// Se nell'automezzo non c'è già questo articolo inserisco la scorta nell'automezzo da zero
|
||||
if (empty($rs)) {
|
||||
$dbo->query('INSERT INTO mg_articoli_automezzi(idarticolo, idautomezzo, qta) VALUES ('.prepare($idarticolo).', '.prepare($id_record).', 0)');
|
||||
}
|
||||
|
||||
// Decremento la quantità dal magazzino centrale
|
||||
add_movimento_magazzino($idarticolo, -$qta, ['idautomezzo' => $id_record]);
|
||||
|
||||
$_SESSION['infos'][] = tr("Caricato il magazzino dell'automezzo!");
|
||||
break;
|
||||
|
||||
|
|
|
@ -37,6 +37,8 @@ switch (filter('op')) {
|
|||
$qp = 'SELECT *, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY data_richiesta ASC';
|
||||
$rsp = $dbo->fetchArray($qp);
|
||||
|
||||
$pianificabile = $dbo->fetchNum('SELECT id FROM co_staticontratti WHERE pianificabile = 1 AND descrizione = '.prepare($records[0]['stato']));
|
||||
|
||||
echo '
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
|
@ -95,10 +97,8 @@ if (count($rsp) != 0) {
|
|||
<td align="right">';
|
||||
|
||||
if (empty($rsp[$i]['idintervento'])) {
|
||||
if($records[0]['stato'] != 'Bozza' && $records[0]['stato'] != 'Rifiutato'){
|
||||
echo '
|
||||
<button type="button" class="btn btn-primary btn-sm" title="Pianifica ora..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica intervento\', \''.$rootdir.'/add.php?id_module='.Modules::getModule('Interventi')['id'].'&ref=interventi_contratti&idcontratto='.$id_record.'&idcontratto_riga='.$rsp[$i]['id'].'\');"><i class="fa fa-calendar"></i></button>';
|
||||
}
|
||||
<button type="button" class="btn btn-primary btn-sm" title="Pianifica ora..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica intervento\', \''.$rootdir.'/add.php?id_module='.Modules::getModule('Interventi')['id'].'&ref=interventi_contratti&idcontratto='.$id_record.'&idcontratto_riga='.$rsp[$i]['id'].'\');"'.(!empty($pianificabile) ? '' : ' disabled').'><i class="fa fa-calendar"></i></button>';
|
||||
|
||||
echo '
|
||||
<button type="button" class="btn btn-danger btn-sm ask" data-op="depianifica" data-id="'.$rsp[$i]['id'].'">
|
||||
|
|
|
@ -218,43 +218,42 @@ echo '
|
|||
|
||||
<script type="text/javascript">
|
||||
function ricalcola_subtotale_riga( r ){
|
||||
subtot = $("#subtot_"+r).val().toEnglish();
|
||||
subtot = $("#subtot_"+r).val();
|
||||
sconto = $("#sconto_"+r).val();
|
||||
iva = $("#iva_"+r).val();
|
||||
|
||||
sconto = $("#sconto_"+r).val().toEnglish();
|
||||
subtot = subtot-sconto;
|
||||
qtamax = $("#qtamax_"+r).val() ? $("#qtamax_"+r).val() : 0;
|
||||
|
||||
qta = $("#qta_"+r).val().toEnglish();
|
||||
if( isNaN(qta) ){
|
||||
qta = 0;
|
||||
}
|
||||
subtot = parseFloat(subtot);
|
||||
sconto = parseFloat(sconto);
|
||||
iva = parseFloat(iva);
|
||||
qtamax = parseFloat(qtamax);
|
||||
|
||||
qtamax = $("#qtamax_"+r).val().toEnglish();
|
||||
if( isNaN(qtamax) ){
|
||||
qtamax = 0;
|
||||
}
|
||||
|
||||
iva = $("#iva_"+r).val().toEnglish();
|
||||
|
||||
// Se inserisco una quantità da evadere maggiore di quella rimanente, la imposto al massimo possibile
|
||||
if( qta>qtamax ){
|
||||
qta = qtamax.toFixedLocale(2);
|
||||
$('#qta_'+r).val( qta );
|
||||
}
|
||||
subtot = subtot - sconto;
|
||||
|
||||
$("#serial_"+r).selectClear();
|
||||
$("#serial_"+r).select2("destroy");
|
||||
$("#serial_"+r).data('maximum', qta);
|
||||
start_superselect();
|
||||
|
||||
qta = $("#qta_"+r).val().toEnglish();
|
||||
|
||||
// Se inserisco una quantità da evadere maggiore di quella rimanente, la imposto al massimo possibile
|
||||
if(qta > qtamax){
|
||||
qta = qtamax;
|
||||
|
||||
$('#qta_'+r).val(qta);
|
||||
}
|
||||
|
||||
// Se tolgo la spunta della casella dell'evasione devo azzerare i conteggi
|
||||
if( !$('#checked_'+r).is(':checked') ){
|
||||
if(isNaN(qta) || !$('#checked_'+r).is(':checked')){
|
||||
qta = 0;
|
||||
}
|
||||
|
||||
subtotale = (subtot*qta+iva*qta).toFixedLocale(2);
|
||||
subtotale = (subtot * qta + iva * qta).toFixedLocale(2);
|
||||
|
||||
$("#subtotale_"+r).html(subtotale+" €");
|
||||
$("#subtotaledettagli_"+r).html( (subtot*qta).toFixed(2)+" + " + (iva*qta).toFixed(2) );
|
||||
$("#subtotaledettagli_"+r).html((subtot * qta).toFixedLocale(2) + " + " + (iva * qta).toFixedLocale(2));
|
||||
|
||||
ricalcola_totale();
|
||||
}
|
||||
|
@ -269,13 +268,16 @@ echo '
|
|||
qta = 0;
|
||||
}
|
||||
|
||||
subtot = $("#subtot_"+r).val().toEnglish();
|
||||
subtot = $("#subtot_"+r).val();
|
||||
sconto = $("#sconto_"+r).val();
|
||||
iva = $("#iva_"+r).val();
|
||||
|
||||
subtot = parseFloat(subtot);
|
||||
sconto = parseFloat(sconto);
|
||||
iva = parseFloat(iva);
|
||||
|
||||
sconto = $("#sconto_"+r).val().toEnglish();
|
||||
subtot = subtot-sconto;
|
||||
|
||||
iva = $("#iva_"+r).val().toEnglish();
|
||||
|
||||
totale += subtot*qta+iva*qta;
|
||||
|
||||
r++;
|
||||
|
|
|
@ -15,6 +15,7 @@ $numero = !empty($records[0]['numero_esterno']) ?$records[0]['numero_esterno'] :
|
|||
|
||||
// Sostituzioni specifiche
|
||||
$custom = [
|
||||
'tipo_doc' => Stringy\Stringy::create($records[0]['tipo_doc'])->toUpperCase(),
|
||||
'numero_doc' => $numero,
|
||||
'data' => Translator::dateToLocale($records[0]['data']),
|
||||
'pagamento' => $records[0]['tipo_pagamento'],
|
||||
|
|
Loading…
Reference in New Issue