mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-02 00:46:44 +01:00
Bugfix sui seriali
Risoluzione di alcuni problemi nella gestione dei seriali nel passaggio tra documenti.
This commit is contained in:
parent
d24ed3cea0
commit
5818082c08
@ -248,7 +248,10 @@ switch (post('op')) {
|
||||
$riga = $dbo->lastInsertedID();
|
||||
|
||||
// Aggiornamento seriali dalla riga dell'ordine
|
||||
$dbo->sync('mg_prodotti', ['id_riga_ddt' => $riga, 'dir' => $dir, 'id_articolo' => $idarticolo], ['serial' => (array) $post['serial'][$i]]);
|
||||
$serials = is_array($post['serial'][$i]) ? $post['serial'][$i] : [];
|
||||
$serials = array_filter($serials, function ($value) { return !empty($value); });
|
||||
|
||||
$dbo->sync('mg_prodotti', ['id_riga_ddt' => $riga, 'dir' => $dir, 'id_articolo' => $idarticolo], ['serial' => $serials]);
|
||||
|
||||
// Scalo la quantità dall'ordine
|
||||
$dbo->query('UPDATE or_righe_ordini SET qta_evasa = qta_evasa+'.$qta.' WHERE id='.prepare($idrigaordine));
|
||||
|
@ -828,7 +828,10 @@ switch (post('op')) {
|
||||
$idriga = add_articolo_infattura($id_record, $idarticolo, $descrizione, $idiva_acquisto, $qta, $prezzo_acquisto, $sconto, $sconto_unitario, $tipo_sconto);
|
||||
|
||||
// Aggiornamento seriali dalla riga dell'ordine
|
||||
$dbo->sync('mg_prodotti', ['id_riga_documento' => $idriga, 'dir' => $dir, 'id_articolo' => $idarticolo], ['serial' => (array) $post['serial'][$i]]);
|
||||
$serials = is_array($post['serial'][$i]) ? $post['serial'][$i] : [];
|
||||
$serials = array_filter($serials, function ($value) { return !empty($value); });
|
||||
|
||||
$dbo->sync('mg_prodotti', ['id_riga_documento' => $idriga, 'dir' => $dir, 'id_articolo' => $idarticolo], ['serial' => $serials]);
|
||||
}
|
||||
|
||||
// Inserimento riga normale
|
||||
@ -905,7 +908,10 @@ switch (post('op')) {
|
||||
$idriga = add_articolo_infattura($id_record, $idarticolo, $descrizione, $idiva_acquisto, $qta, $prezzo_acquisto, $sconto, $sconto_unitario, $tipo_sconto);
|
||||
|
||||
// Aggiornamento seriali dalla riga dell'ordine
|
||||
$dbo->sync('mg_prodotti', ['id_riga_documento' => $idriga, 'dir' => $dir, 'id_articolo' => $idarticolo], ['serial' => (array) $post['serial'][$i]]);
|
||||
$serials = is_array($post['serial'][$i]) ? $post['serial'][$i] : [];
|
||||
$serials = array_filter($serials, function ($value) { return !empty($value); });
|
||||
|
||||
$dbo->sync('mg_prodotti', ['id_riga_documento' => $idriga, 'dir' => $dir, 'id_articolo' => $idarticolo], ['serial' => $serials]);
|
||||
|
||||
// Imposto la provenienza dell'ordine
|
||||
$dbo->query('UPDATE co_righe_documenti SET idordine='.prepare($idordine).' WHERE id='.prepare($idriga));
|
||||
|
@ -168,8 +168,10 @@ if (!empty($rs)) {
|
||||
echo '
|
||||
<td>';
|
||||
if (!empty($r['abilita_serial'])) {
|
||||
$values = $dbo->fetchArray('SELECT DISTINCT serial FROM mg_prodotti WHERE dir=\''.$dir.'\' AND '.$row.' = \''.$r['id'].'\' AND serial IS NOT NULL AND serial NOT IN (SELECT serial FROM mg_prodotti WHERE serial IS NOT NULL AND dir=\''.$dir.'\' AND '.$data[$pos]['condition'].')');
|
||||
|
||||
echo '
|
||||
{[ "type": "select", "name": "serial['.$i.'][]", "id": "serial_'.$i.'", "multiple": 1, "values": "query=SELECT DISTINCT serial AS id, serial AS descrizione FROM mg_prodotti WHERE dir=\''.$dir.'\' AND '.$row.' = \''.$r['id'].'\' AND serial NOT IN (SELECT serial FROM mg_prodotti WHERE dir=\''.$dir.'\' AND '.$data[$pos]['condition'].' AND dir=\''.$dir.'\')", "extra": "data-maximum=\"'.intval($r['qta_rimanente']).'\"" ]}
|
||||
{[ "type": "select", "name": "serial['.$i.'][]", "id": "serial_'.$i.'", "multiple": 1, "values": "query=SELECT DISTINCT serial AS id, serial AS descrizione FROM mg_prodotti WHERE dir=\''.$dir.'\' AND '.$row.' = \''.$r['id'].'\' AND serial IS NOT NULL AND serial NOT IN (SELECT serial FROM mg_prodotti WHERE serial IS NOT NULL AND dir=\''.$dir.'\' AND '.$data[$pos]['condition'].')", "value": "'.implode(',', array_column($values, 'serial')).'", "extra": "data-maximum=\"'.intval($r['qta_rimanente']).'\"" ]}
|
||||
';
|
||||
} else {
|
||||
echo '-';
|
||||
|
@ -905,6 +905,8 @@ UPDATE `mg_prodotti` SET `serial` = NULL WHERE `serial` = '';
|
||||
UPDATE `mg_prodotti` SET `lotto` = NULL WHERE `lotto` = '';
|
||||
UPDATE `mg_prodotti` SET `altro` = NULL WHERE `altro` = '';
|
||||
|
||||
DELETE FROM `mg_prodotti` WHERE `serial` IS NULL AND `lotto` IS NULL AND `altro` IS NULL;
|
||||
|
||||
ALTER TABLE `co_righe_documenti` DROP `serial`, DROP `altro`, DROP `lotto`;
|
||||
ALTER TABLE `mg_articoli_interventi` DROP `serial`, DROP `altro`, DROP `lotto`;
|
||||
ALTER TABLE `dt_righe_ddt` DROP `serial`, DROP `altro`, DROP `lotto`;
|
||||
|
Loading…
x
Reference in New Issue
Block a user