Warenwirtschaft: AP-27 Wareneingang gleiche Charge zusammenführen
- Chargen-Existenz-Check beim Buchen (JSON-Endpoint batch-check): Hinweis „Charge bereits im Haus" + Vorbelegung MHD/Qualität aus dem letzten Eingang - Rohstoffbestand-Detail: Chargen je batch_number summiert (InventoryService::chargeGroupsForIngredient), Einkäufe als Unterzeilen - Produktion: Charge-Dropdown je Charge mit Summen-Rest (batches im Recipe-Payload), Verbrauch wird per expandBatchLines FEFO auf die Einzel-Einkäufe der Charge verteilt; Service-API bleibt je stock_entry - Jeder Einkauf bleibt eigener stock_entry (Preis/Datum/Audit) - Hinweise-Doku + Plan V6.0 §6 fortgeschrieben Tests: StockEntryChargeMergeTest (7 neu); Suite 193 grün, 698 Assertions Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
e47d848d3d
commit
7a5b5e0f7b
16 changed files with 673 additions and 34 deletions
|
|
@ -124,6 +124,18 @@ class StockEntry extends Model
|
|||
return $this->status === 'pending';
|
||||
}
|
||||
|
||||
/**
|
||||
* AP-27: Gruppierungsschlüssel für die Chargen-Zusammenführung.
|
||||
* Einträge mit Chargennummer werden je Charge zusammengefasst,
|
||||
* Einträge ohne Chargennummer bleiben einzeln.
|
||||
*/
|
||||
public function batchGroupKey(): string
|
||||
{
|
||||
$batch = trim((string) $this->batch_number);
|
||||
|
||||
return $batch !== '' ? 'b:'.$batch : 'e:'.$this->id;
|
||||
}
|
||||
|
||||
public function isReceived(): bool
|
||||
{
|
||||
return $this->status === 'received';
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue