Wareineingang bugfix lagerartikel, added some info text

This commit is contained in:
OpenXE 2023-10-06 12:11:17 +02:00
parent b2bf2f14f2
commit b34ba86421
3 changed files with 28 additions and 19 deletions

View File

@ -12,10 +12,10 @@
<div class="row-height"> <div class="row-height">
<div class="col-xs-12 col-md-8 col-md-height"> <div class="col-xs-12 col-md-8 col-md-height">
<div class="inside inside-full-height"> <div class="inside inside-full-height">
<div class="filter-box filter-usersave"> <div class="filter-box filter-usersave">
<div class="filter-block filter-inline"> <div class="filter-block filter-inline">
<fieldset> <fieldset>
<legend>{|Neuen Wareneingang erzeugen|}</legend>
<div class="filter-title">{|Filter|}</div> <div class="filter-title">{|Filter|}</div>
<ul class="filter-list"> <ul class="filter-list">
<li class="filter-item"> <li class="filter-item">

View File

@ -25,7 +25,7 @@
<tr><td>{|Rechnung-Nr.|}:</td><td><input type=text size="40" name="renr" value=[RENR]></td></tr> <tr><td>{|Rechnung-Nr.|}:</td><td><input type=text size="40" name="renr" value=[RENR]></td></tr>
<tr><td>{|Bemerkung|}:</td><td><textarea rows="5" cols="40" name="bemerkung">[BEMERKUNG]</textarea></td></tr> <tr><td>{|Bemerkung|}:</td><td><textarea rows="5" cols="40" name="bemerkung">[BEMERKUNG]</textarea></td></tr>
[ISLIEFERANTSTART] [ISLIEFERANTSTART]
<tr><td>{|Ziellager|}:</td><td><input type=text size="40" name="ziellager" id="ziellager" value=[LAGER]></td></tr> <tr><td>{|Ziellager|}:</td><td><input type=text size="40" name="ziellager" id="ziellager" value=[LAGER]><br><i>Wenn nicht angegeben, wird das Standardlager des Artikels bebucht.</i></td></tr>
[ISLIEFERANTENDE] [ISLIEFERANTENDE]
</table> </table>
</fieldset> </fieldset>

View File

@ -232,8 +232,12 @@ class Wareneingang {
LEFT JOIN projekt p ON b.projekt=p.id "; LEFT JOIN projekt p ON b.projekt=p.id ";
} }
$where = " b.adresse='$adresse' AND b.belegnr != '' $where = "
AND bp.geliefert < bp.menge AND (bp.abgeschlossen IS NULL OR bp.abgeschlossen=0) AND (b.status='versendet' OR b.status='freigegeben') " . $this->app->erp->ProjektRechte(); b.adresse='$adresse' AND
b.belegnr != '' AND bp.geliefert < bp.menge AND
(bp.abgeschlossen IS NULL OR bp.abgeschlossen=0) AND
(b.status='versendet' OR b.status='freigegeben')
" . $this->app->erp->ProjektRechte();
// gesamt anzahl // gesamt anzahl
$count = " $count = "
@ -1755,6 +1759,9 @@ class Wareneingang {
$msg = ""; $msg = "";
foreach ($menge_input as $key => $menge) { foreach ($menge_input as $key => $menge) {
$bemerkung = "";
if ((strpos($key,'menge_') === 0) && ($menge !== '')) { if ((strpos($key,'menge_') === 0) && ($menge !== '')) {
$bestellposition = substr($key,'6'); $bestellposition = substr($key,'6');
if ($menge > 0) { if ($menge > 0) {
@ -1768,22 +1775,24 @@ class Wareneingang {
$vpe = $bparr['vpe']; $vpe = $bparr['vpe'];
$menge_bestellung = $bparr['menge']; $menge_bestellung = $bparr['menge'];
// Get Lager_platz if ($bparr['lagerartikel']) {
if (empty($ziellager_from_form)) { // Get Lager_platz
$lager = $this->app->DB->Select("SELECT lager_platz FROM artikel WHERE id='" . $artikel . "' LIMIT 1"); if (empty($ziellager_from_form)) {
if (empty($lager)) { $lager = $this->app->DB->Select("SELECT lager_platz FROM artikel WHERE id='" . $artikel . "' LIMIT 1");
$msg .= '<div class="error">Kein Ziellagerplatz gefunden für Artikel: '.$artikel_nr.'</div>'; if (empty($lager)) {
continue; $msg .= '<div class="error">Kein Ziellagerplatz gefunden für Artikel: '.$artikel_nr.'</div>';
continue;
}
}
else {
$lager = $ziellager_from_form;
} }
}
else {
$lager = $ziellager_from_form;
}
// Put stock // Put stock
$this->app->erp->LagerEinlagern($artikel, $menge, $lager, '', "Wareneingang Paket $id, Bestellung $bestellung_belegnr", '', $id); $this->app->erp->LagerEinlagern($artikel, $menge, $lager, '', "Wareneingang Paket $id, Bestellung $bestellung_belegnr", '', $id);
$lagerplatz_name = $this->app->DB->Select("SELECT kurzbezeichnung FROM lager_platz WHERE lager_platz.id = $lager LIMIT 1"); $lagerplatz_name = $this->app->DB->Select("SELECT kurzbezeichnung FROM lager_platz WHERE lager_platz.id = $lager LIMIT 1");
$bemerkung = $lagerplatz_name; $bemerkung = $lagerplatz_name;
}
// Increase bestellung_position geliefert_menge // Increase bestellung_position geliefert_menge
$geliefert = $this->app->DB->Select("SELECT ifnull(geliefert,0) FROM bestellung_position WHERE id='$bestellposition' LIMIT 1"); $geliefert = $this->app->DB->Select("SELECT ifnull(geliefert,0) FROM bestellung_position WHERE id='$bestellposition' LIMIT 1");