Avatar
Roman Kocián:

Ahoj, prosím o radu jak vyřešit skladové zásoby při zboží v košíku?

Dělám eshop od Davida zde na síti a zajímá mě jak vyřešit tuto situaci:

Zboží se ze skladu odečte až po dokončení objednávky zákazníkem, co když ale nastane, že si zákazník dá zboží do košíku (v momentě kdy bylo skladem), pak si odskočí a mezi tím se jiný zákazník připojí a to samé zboží (rozumějte např. max. počet kusů) vloží do košíku a objednávku dokončí dříve než zákazník před ním, co měl zboží v košíku. Kusy se tedy odečtou ze skladu a zboží bude vyprodané. Co ale se zákazníkem, který si vložil zboží do košíku v momentě kdy ještě skladem bylo? Příjde mi pitomost mu pak objednávku nedovolit dokončit z důvodu, že zboží již není skladem:-D

Vítě někdo jak to pořešit? Předem děkuji za odpověd:)

 
Odpovědět 23. ledna 17:51
Avatar
Odpovídá na Roman Kocián
Martin Konečný (pavelco1998):

zdravim,
no jinak to asi moc udělat nepůjde. Můžeš tu dostupnost kontrolovat v určitých intervalech (třeba AJAXem, nebo při každém znovunačtení stránky).
Jako prevenci můžeš dočasně to zboží ze skladu odečíst, když si jej daný uživatel přidá do košíku. Zde ale naopak bude problém, že druhému uživateli to může hlásit, že zboží již není na skladě, přičemž první zákazník objednávku nedokončí a to zboží tam bude.

 
Nahoru Odpovědět 23. ledna 18:00
Avatar
Roman Kocián:

Přesně tak, náhodou nevíš jako to mají dělané e-commerce (např. OC, Presta, Megento)?

 
Nahoru Odpovědět 23. ledna 18:02
Avatar
msprg
Člen
Avatar
msprg:

tovar by sa mohol odcitat uz vtedy ked si zakaznik vlozi tovar do kosiku a ak zakaznik neurobi objednavku, ale odide zo stranky by sa tovar z kosiku vratil do skladu.... predpokladam ze obsah kosiku je rieseny pomocou cookies ktore sa stanu neplatnymi ked zakaznik zo stranky odide... ale ja by som este zaviedol nieco ako system ktory by napr kazdy den o polnoci, ktory by (preventivne) vsetkym zakaznikom vyprazdnik kosik ktory napr.: poslednu hodinu nenacitali ziadnu stranku v eshope..

upozornujem ze som toto navrhol ako moznost riesenia tohoto problemu a v tejto preblematike niesom nijak "vyuceny"

EDIT//pisal som to tak dlho ze ma uz par ludi predbehlo (aby ste nepovedali ze opakujem :-) )

Editováno 23. ledna 18:05
 
Nahoru Odpovědět 23. ledna 18:03
Avatar
Roman Kocián:

Jasně, tato situace by mohla být řešena na e-shopu s menším trafficem. Kdy si zboží koupí pár zákazníků za den. Co když se ale návštěvnost zvýší - bude omezena nabídka produktů a o které bude zájem. Asi jako nejlogičtější se mi zdá zboží odečist při vložení do košíku a pokud se objednávka nedokončí, přičíst ho zpět do skladu.

 
Nahoru Odpovědět 23. ledna 18:09
Avatar
Odpovídá na Roman Kocián
Martin Konečný (pavelco1998):

S e-shopy nemám zkušenost vůbec, napsal jsem to, jak si myslím, že by to bylo rozumné :D

 
Nahoru Odpovědět 23. ledna 18:17
Avatar
Roman Kocián:

Ještě mě napadlo udělat to tako:

Zboží se ze skladu odečtě v momentě když si jej uživatel přidá do košíku. Na eshopu pak bude hláška, že zboží není vyprodané ale je rezervované, ať se případní zájemci podívají za cca 15 minut. Po 15 minutách by se uživatelům automaticky mazala cookies, takže kdo by zapoměl objednat tak by zboží bylo zpět naskladněno.

Ještě se chci zeptat k těm e-commercím - nevíte jak to mají řešeny? Děkuji:)

 
Nahoru Odpovědět 23. ledna 18:26
Avatar
Richard
Člen
Avatar
Richard:

Jediné správné řešení a také jediné používané je odečítat zboží při dokončení objednávky.
To co tady padlo jsou buď implementační nesmysly, nebo nesmysly vůči zákazníkům (fakt bych na web nedal zákazníkovi hlášku ať počká, že nevim jestli to a to mám skladem :-D).
Zboží tedy odečítat po dokončení objednávky. Při vložení zboží do košíku si poznamenat stav skladu. pokud při kliku na button co potvrzuje objednávku je současný stav skladu 0 a při vložení do košíku (nebo jiných časech, jako například poslední reload košíku) nebyl, zobrazit potvrzovací hlášku o tom že zboží není na skladě. popřípadě (ideálně) neudržovat tu informaci a zobrazovat tu hlášku vždy když zákazník potvrzuje objednávku na zboží co není skladem.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 23. ledna 20:41
$action = $_GET['Life']; | Když dáš mínus, napiš proč!
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.