295 lines
11 KiB
PHP
295 lines
11 KiB
PHP
|
<?php
|
||
|
include_once(__DIR__."/../../core.php");
|
||
|
|
||
|
|
||
|
|
||
|
$dir = 'entrata';
|
||
|
$module_name="Fatture di vendita";
|
||
|
|
||
|
|
||
|
$iddocumento = $html->form('iddocumento');
|
||
|
$idriga = $html->form('idriga');
|
||
|
|
||
|
//Info ordine
|
||
|
$q = "SELECT * FROM co_documenti WHERE id='".$iddocumento."'";
|
||
|
$rs = $dbo->fetchArray($q);
|
||
|
( $rs[0]['numero_esterno'] != '' ) ? $numero=$rs[0]['numero_esterno'] : $numero=$rs[0]['numero'];
|
||
|
$idanagrafica = $rs[0]['idanagrafica'];
|
||
|
$idarticolo=$rs[0]['idarticolo'];
|
||
|
|
||
|
//Info riga inserita
|
||
|
$q = "SELECT * FROM co_righe_documenti WHERE iddocumento='".$iddocumento."' AND id='".$idriga."'";
|
||
|
$rsr = $dbo->fetchArray($q);
|
||
|
// info dati di magazzino
|
||
|
$idarticolo=$rsr[0]['idarticolo'];
|
||
|
|
||
|
$q_mag="SELECT * FROM mg_articoli left join an_anagrafiche on mg_articoli.idfornitore = an_anagrafiche.idanagrafica WHERE id='".$rsr[0]['idarticolo']."'";
|
||
|
$rs_mag = $dbo->fetchArray($q_mag);
|
||
|
$ragione_sociale=$rs_mag[0]['ragione_sociale'];
|
||
|
$giacenza=number_format($rs_mag[0]['qta'], 2, ",", ".");
|
||
|
$threshold_qta=number_format($rs_mag[0]['threshold_qta'], 2, ",", ".");
|
||
|
$pro_smax=number_format($rs_mag[0]['pro_smax'], 2, ",", ".");
|
||
|
$pro_lotto=number_format($rs_mag[0]['pro_lotto'], 2, ",", ".");
|
||
|
$idarticolo=$rs_mag[0]['id'];
|
||
|
$qt_ordinato=number_format($rsr[0]['qta'], 2, ",", ".");
|
||
|
$descrizione=$rsr[0]['descrizione'];
|
||
|
$da_ordinare_min= $qt_ordinato - $giacenza;
|
||
|
|
||
|
// cerco totale qta in odidini
|
||
|
$tot_ord=$dbo->fetchArray("select sum(qta) as qt1, sum(qta_evasa) as qt2 from co_documenti
|
||
|
left join co_righe_documenti on co_documenti.id = co_righe_documenti.iddocumento
|
||
|
left join co_tipidocumento on co_documenti.idtipodocumento = co_tipidocumento.id
|
||
|
where idarticolo='".$idarticolo."' and mod_impegnato='1'");
|
||
|
|
||
|
$tot_qta_ordinato=number_format($tot_ord[0]['qt1'], 2, ",", ".");
|
||
|
$tot_qta_ordinato_evasa=number_format($tot_ord[0]['qt2'], 2, ",", ".");
|
||
|
$tot_qta_ordinato_da_evadere=number_format($tot_ord[0]['qt1'] - $tot_ord[0]['qt2'], 2, ",", ".");
|
||
|
// ricerco le qta orinata confermata in attesa
|
||
|
|
||
|
$tot_ord_incorso=$dbo->fetchArray("select sum(qta) as qt1, sum(qta_evasa) as qt2 from or_ordini
|
||
|
left join or_righe_ordini on or_ordini.id = or_righe_ordini.idordine
|
||
|
where ( idstatoordine='4' or idstatoordine='3' ) and idtipoordine='1' and idarticolo='".$idarticolo."'");
|
||
|
$or_tot_qta_ordinato=number_format($tot_ord_incorso[0]['qt1'], 2, ",", ".");
|
||
|
$or_tot_qta_ordinato_evasa=number_format($tot_ord_incorso[0]['qt2'], 2, ",", ".");
|
||
|
$or_tot_qta_ordinato_da_evadere=number_format($tot_ord_incorso[0]['qt1'] - $tot_ord_incorso[0]['qt2'], 2, ",", ".");
|
||
|
|
||
|
|
||
|
// if ( $tot_qta_ordinato_da_evadere < 0 ) {
|
||
|
$da_ordinare_min=$tot_qta_ordinato_da_evadere - $giacenza - $or_tot_qta_ordinato_da_evadere ;
|
||
|
// }
|
||
|
// else{
|
||
|
// $da_ordinare_min='0';
|
||
|
// }
|
||
|
|
||
|
if( $ragione_sociale <>"" ){
|
||
|
$show_btn = true;
|
||
|
|
||
|
/*
|
||
|
Form di modifica riga ordine
|
||
|
*/
|
||
|
// echo "<label>Ordine numero ".$numero."</label><br><br>\n";
|
||
|
echo "<label>Fornitore : ".$ragione_sociale."</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_newordfornitore'>\n";
|
||
|
echo " <input type='hidden' name='idriga' value='".$idriga."'>\n";
|
||
|
echo " <input type='hidden' name='backto' value='record-edit'>\n";
|
||
|
echo " <input type='hidden' name='dir' value='".$dir."'>\n";
|
||
|
|
||
|
|
||
|
|
||
|
//Descrizione
|
||
|
echo " <div class='row'>\n";
|
||
|
echo " <div class='col-md-6'>\n";
|
||
|
echo " <label>Articolo : </label>\n";
|
||
|
echo " <label name=\"descrizione\" id=\"descrizione\" class='form-control' >".$descrizione."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
// $qt_ordinato=number_format($rsr[0]['qta'], 2, ",", ".");
|
||
|
|
||
|
//qta in ordine
|
||
|
echo " <div class='col-md-2'>\n";
|
||
|
echo " <label>Q.tà Richiesta</label>\n";
|
||
|
echo " <label name=\"qta_ordine\" align='right' id=\"qta_ordine\" class='form-control' >".$qt_ordinato."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
echo " <div class='col-md-2'>\n";
|
||
|
echo " <label>Qta Impegnata</label>\n";
|
||
|
echo " <label name=\"qta_ordine\" align='right' id=\"qta_ordine\" class='form-control' >".$tot_qta_ordinato_da_evadere."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
echo " </div>\n";
|
||
|
|
||
|
echo " <div class='row'>\n";
|
||
|
//dati di magazzino
|
||
|
echo " <div class='col-md-2'>\n";
|
||
|
echo " <label>Giacenza</label>\n";
|
||
|
echo " <label name=\"qta_ordine\" align='right' class='form-control' >".$giacenza."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
echo " <div class='col-md-2'>\n";
|
||
|
echo " <label>S.Minima</label>\n";
|
||
|
echo " <label name=\"qta_ordine\" align='right' class='form-control' >".$threshold_qta."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " <div class='col-md-2'>\n";
|
||
|
echo " <label>S.Max</label>\n";
|
||
|
echo " <label name=\"qta_ordine\" align='right' class='form-control' >".$pro_smax."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " <div class='col-md-2'>\n";
|
||
|
echo " <label>Lotto E.Acq</label>\n";
|
||
|
echo " <label name=\"qta_ordine\" align='right' class='form-control' >".$pro_lotto."</textarea>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
//Da ordinare
|
||
|
echo " <div class='col-md-3'>\n";
|
||
|
echo " <div class='form-group'>\n";
|
||
|
echo " <label>Qta riordino Minima</label>\n";
|
||
|
echo " <div class='input-group'>\n";
|
||
|
echo " <input type='text' class='form-control' id='qta_or' maxlength='8' name='qta_or' value=\"$da_ordinare_min\">\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
// crea ordine fornitore
|
||
|
echo " <div class='box box-primary'>\n";
|
||
|
echo "<div class='box-body'>\n";
|
||
|
echo " <div class='row'>\n";
|
||
|
echo " <div class='col-md-12'>\n";
|
||
|
echo " <label>Crea nuovo ordine o aggiungi ad esistente: ( stato : NON EVASO )</label>\n";
|
||
|
echo " <select id='idnewdocumento' class='superselect' name=\"idnewdocumento\">\n";
|
||
|
echo " <option value=''>Nuovo ordine</option>\n";
|
||
|
$query = "SELECT * FROM or_ordini where idanagrafica='".$rs_mag[0]['idfornitore']."' and idstatoordine=1";
|
||
|
$rs_newdoc = $dbo->fetchArray($query);
|
||
|
for( $i=0; $i<sizeof($rs_newdoc); $i++ ){
|
||
|
$data_ordine = date("d/m/Y", strtotime($rs_newdoc[$i]['data']));
|
||
|
$testo_ordine = "Numero: ".$rs_newdoc[$i]['numero']." - Numero secondario: ".$rs_newdoc[$i]['numero_esterno']." del ".$data_ordine;
|
||
|
echo " <option value='".$rs_newdoc[$i]['id']."' ".$attr.">".$testo_ordine."</option>\n";
|
||
|
}
|
||
|
echo " </select>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
//Impegnato Stato: Non evaso o Evaso parzialmente
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
$ordiniincorso=$dbo->fetchArray("select numero , numero_esterno ,numero_documento , data,idarticolo,qta,qta_evasa ,co_tipidocumento.descrizione as des_doc , co_documenti.idanagrafica, ragione_sociale , mod_impegnato from co_documenti
|
||
|
left join co_righe_documenti on co_documenti.id = co_righe_documenti.iddocumento
|
||
|
left join co_tipidocumento on co_documenti.idtipodocumento = co_tipidocumento.id
|
||
|
left join an_anagrafiche on co_documenti.idanagrafica = an_anagrafiche.idanagrafica
|
||
|
where idarticolo='".$idarticolo."' and mod_impegnato='1'");
|
||
|
|
||
|
echo " <div class='box box-primary'>\n";
|
||
|
echo "<div class='box-body'>\n";
|
||
|
echo "<h4 class='box-title'>Articolo presente nei seguenti documenti </h3>\n";
|
||
|
echo " <div class='row'>\n";
|
||
|
echo " <div class='col-md-12'>\n";
|
||
|
if( sizeof($ordiniincorso)>0 ){
|
||
|
echo "<br/><table cellspacing='0' class='table-striped'>\n";
|
||
|
echo "<tr><th width='250'>Documento</th>\n";
|
||
|
echo "<th width='250'>Cliente</th>\n";
|
||
|
echo "<th width='100'>Data</th>\n";
|
||
|
echo "<th width='100'>Ordinato</th>\n";
|
||
|
echo "<th width='100'>Evaso</th></tr>\n";
|
||
|
for( $i=0; $i<sizeof($ordiniincorso); $i++ ){
|
||
|
echo "<td class='table_cell'>".$ordiniincorso[$i]['des_doc']." ".$ordiniincorso[$i]['numero_esterno']."</td>\n";
|
||
|
echo "<td class='table_cell'>".$ordiniincorso[$i]['ragione_sociale']."</td>\n";
|
||
|
echo "<td class='table_cell'>".date( "d/m/Y", strtotime($ordiniincorso[$i]['data']) )."</td>\n";
|
||
|
echo "<td class='table_cell'>".number_format( $ordiniincorso[$i]['qta'], 2, ",", "" )."</td>\n";
|
||
|
echo "<td class='table_cell'>".number_format( $ordiniincorso[$i]['qta_evasa'], 2, ",", "" )."</td></tr>\n";
|
||
|
}
|
||
|
echo "</table>\n";
|
||
|
}
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
//Articolo in arrivo Stato: Ordinato
|
||
|
|
||
|
$ordiniincorso=$dbo->fetchArray("select numero , numero_esterno ,data_prevista_consegna,data,idarticolo,qta,qta_evasa ,or_ordini.idanagrafica, ragione_sociale from or_ordini
|
||
|
left join or_righe_ordini on or_ordini.id = or_righe_ordini.idordine
|
||
|
left join an_anagrafiche on or_ordini.idanagrafica = an_anagrafiche.idanagrafica
|
||
|
where idtipoordine='1' and idarticolo='".$idarticolo."'");
|
||
|
|
||
|
echo " <div class='box box-primary'>\n";
|
||
|
echo "<div class='box-body'>\n";
|
||
|
echo "<h4 class='box-title'>Articolo in consegna</h3>\n";
|
||
|
echo " <div class='row'>\n";
|
||
|
echo " <div class='col-md-12'>\n";
|
||
|
if( sizeof($ordiniincorso)>0 ){
|
||
|
echo "<br/><table cellspacing='0' class='table-striped'>\n";
|
||
|
echo "<tr><th width='250'>Documento</th>\n";
|
||
|
echo "<th width='250'>Fornitore</th>\n";
|
||
|
echo "<th width='100'>Data</th>\n";
|
||
|
echo "<th width='100'>Ordinato</th>\n";
|
||
|
echo "<th width='100'>Consegnato</th>\n";
|
||
|
echo "<th width='100'>Data prevista</th></tr>\n";
|
||
|
for( $i=0; $i<sizeof($ordiniincorso); $i++ ){
|
||
|
|
||
|
$data_cons=date( "d/m/Y", strtotime($ordiniincorso[$i]['data_prevista_consegna']) );
|
||
|
if ( $data_cons == '01/01/1970') $data_cons="-";
|
||
|
echo "<td class='table_cell'>".$ordiniincorso[$i]['numero_esterno']."</td>\n";
|
||
|
echo "<td class='table_cell'>".$ordiniincorso[$i]['ragione_sociale']."</td>\n";
|
||
|
echo "<td class='table_cell'>".date( "d/m/Y", strtotime($ordiniincorso[$i]['data']) )."</td>\n";
|
||
|
echo "<td class='table_cell'>".number_format( $ordiniincorso[$i]['qta'], 2, ",", "" )."</td>\n";
|
||
|
echo "<td class='table_cell'>".number_format( $ordiniincorso[$i]['qta_evasa'], 2, ",", "" )."</td>\n";
|
||
|
echo "<td class='table_cell'>".$data_cons."</td></tr>\n";
|
||
|
}
|
||
|
echo "</table>\n";
|
||
|
}
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
echo " <a onclick=\"addriga();\" class=\"btn btn-primary pull-right\"><i class=\"fa fa-edit\"></i> Crea</a>\n";
|
||
|
echo "</form>\n";
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
else{
|
||
|
$show_btn = false;
|
||
|
echo "<b>... Non e' presente nessun fornitore in anagrafica articolo ...</b><br>\n";
|
||
|
echo "</form>\n";
|
||
|
}
|
||
|
|
||
|
|
||
|
?>
|
||
|
|
||
|
<script type="text/javascript">
|
||
|
|
||
|
$(document).ready( function(){
|
||
|
|
||
|
start_superselect();
|
||
|
start_inputmask();
|
||
|
$('.datepicker').datepicker();
|
||
|
});
|
||
|
|
||
|
function addriga(){
|
||
|
// if( $('#qt_ordinato').val()!='' ){
|
||
|
$("#link_form").submit();
|
||
|
// }
|
||
|
}
|
||
|
|
||
|
|
||
|
</script>
|
||
|
<script src="<?php echo $rootdir; ?>/lib/init.js"></script>
|
||
|
<div class="clearfix"></div>
|
||
|
|