neues feature: offen artikel lager mit bestellartikel synchronisieren
Konkrete usecases:
- Bestellartikel bei horai ist 10L bidon, sie möchten bestellmenge in stück. Im verkauf wollen wir pro liter verkaufen.
- Bestellartikel bei horai ist 1kg tofu. Verkaufsartikel sind päckli mit 250g inhalt.
Aktuell haben wir je 1 artikel im system. Die probleme sind:
- beim bidon steht auf der bestellung 10x1 = 10. dies führt zu fehlern und sie bestellen dan 10x10L...
- beim tofu steht auf der bestellung 1kg, die päckli haben aber variablen inhalt mit ca. 250g. somit wenn wir 4 päckli verkaufen, haben wir eine differenz, die auf dem lieferschein immer nachkorrigiert werden muss.
Lösung ist 2 Artikel zu haben:
- Einen zum bestellen, mit der bestelleinheit, gesperrt im verkauf.
- Einer zum verkaufen, mit der verkaufseinheit, ohne lieferant (oder z.b. leiferant namens "Horrai nicht bestellen").
Problem: Lagerverwaltung. Wir wollen den lagerbestand beim bestellartikel korrekt haben, um automatisch bestellen zu können und nicht beim verkaufsartikel.
Idee für neues feature:
job, der den lagerbestand der beiden artikel synchronisiert. zb. hat nach ladenschluss der verkaufs-artikel -2L. Wir stellen dann diesen artikel auf 0 und ziehen 0.2 vom bestellartikel (10L bidon) ab. somit wissen wir immer wieviel vom 10L bidon noch da ist, es funktioniert das automatische bestellen und alle sind glücklich
Neuer Plan:
- Set artikel feature in arcavis nutzen um die artilel zu verbinden. Siehe z.b. A430. Der bestellartikel ist tagged als "Bestellartikel", der Verkaufsartikel ist hinterlegt als Zubehör mit entsprechender Menge. (https://gueter.arcavis.ch/swagger/index.html?url=/swagger/v1/swagger.json#/ArticleSets/ArticleSets_Get2)
Alter Plan:
- Verknüpfungstabelle in directus:
order article id, sale article id, conversion
(https://data.gueter.be/admin/content/arcavis_article_sync) - cronjob setzt
order.stock += sale.stock / conversion
undsale.stock = 0
(https://gueter.arcavis.ch/swagger/index.html?url=/swagger/v1/swagger.json#/Articles/Articles_Put)
Weitere mögliche features:
- einkaufspreis synchronisieren:
sale.buyingPrice = order.buyingPrice / conversion
- vielleicht verkaufspreis synchronisieren? :
sale.price = order.price/conversion
@dw wdyt?
Edited by o@immerda.ch