feat: sledování objednávek přes Wolt
CI / Generate TypeScript types (push) Successful in 13s
CI / Server unit tests (push) Successful in 25s
CI / Build server (push) Successful in 28s
CI / Build client (push) Successful in 41s
CI / Playwright E2E tests (push) Successful in 1m47s
CI / Build and push Docker image (push) Successful in 53s
CI / Notify (push) Successful in 2s
CI / Generate TypeScript types (push) Successful in 13s
CI / Server unit tests (push) Successful in 25s
CI / Build server (push) Successful in 28s
CI / Build client (push) Successful in 41s
CI / Playwright E2E tests (push) Successful in 1m47s
CI / Build and push Docker image (push) Successful in 53s
CI / Notify (push) Successful in 2s
Vedle Bolt Food jde nově sledovat i objednávka z Woltu — stačí u objednané skupiny vložit odkaz z track.wolt.com. Logika sledování je zobecněná do registru rozvozových služeb (trackingProviders.ts): každá služba umí vytáhnout kód ze sdílecího odkazu a dotázat se svého API, scheduler i stepper jsou společné. - pole skupiny bolt* přejmenována na tracking* + nové trackingProvider - endpoint /groups/setBoltTracking → /groups/setTracking - Wolt: čas doručení z delivery_eta v časové zóně objednávky, 404 ukončí sledování, stav kurýra odvozen z is_delivering/is_delivering_other_order - DEV simulace zůstává jen pro Bolt Food
This commit is contained in:
@@ -694,7 +694,7 @@ NotificationSettings:
|
||||
description: Čas, ve který má být uživatel upozorněn na nezvolený oběd (HH:MM). Prázdné = vypnuto.
|
||||
type: string
|
||||
boltDeliveredPush:
|
||||
description: Zapnuté push upozornění na doručení skupinové objednávky sledované přes Bolt Food.
|
||||
description: Zapnuté push upozornění na doručení sledované skupinové objednávky (Bolt Food i Wolt). Název klíče zůstal kvůli zpětné kompatibilitě uloženého nastavení uživatelů.
|
||||
type: boolean
|
||||
GotifyServer:
|
||||
type: object
|
||||
@@ -871,6 +871,16 @@ Store:
|
||||
description: Volitelná URL na nabídku podniku (např. Bolt Food/Wolt/Foodora)
|
||||
type: string
|
||||
|
||||
TrackingProvider:
|
||||
description: Rozvozová služba, přes kterou lze sledovat stav objednávky
|
||||
type: string
|
||||
enum:
|
||||
- bolt
|
||||
- wolt
|
||||
x-enum-varnames:
|
||||
- BOLT
|
||||
- WOLT
|
||||
|
||||
GroupState:
|
||||
description: Stav skupiny objednávky
|
||||
type: string
|
||||
@@ -956,14 +966,16 @@ OrderGroup:
|
||||
qrGenerated:
|
||||
description: Příznak, zda byly pro skupinu vygenerovány QR kódy (blokuje opakované generování)
|
||||
type: boolean
|
||||
boltTrackingToken:
|
||||
description: Token sdíleného sledování objednávky Bolt Food (poslední segment share URL). Pokud je vyplněn, server automaticky aktualizuje deliveryAt.
|
||||
trackingProvider:
|
||||
$ref: "#/TrackingProvider"
|
||||
trackingCode:
|
||||
description: Kód sledování objednávky (poslední segment share URL — u Bolt Food 64-hex token, u Wolt tracking code). Pokud je vyplněn, server automaticky aktualizuje deliveryAt.
|
||||
type: string
|
||||
boltOrderState:
|
||||
description: Poslední známý stav objednávky z Bolt API (raw order_state, např. waiting_preparation, waiting_delivery, delivered). Zůstává vyplněn i po ukončení sledování.
|
||||
trackingOrderState:
|
||||
description: Poslední známý stav objednávky ze sledovací služby (raw hodnota — Bolt order_state, např. waiting_preparation; Wolt status, např. production). Zůstává vyplněn i po ukončení sledování.
|
||||
type: string
|
||||
boltCourierState:
|
||||
description: Poslední známý stav kurýra z Bolt API (raw courier.state, např. arrived_to_provider, picked_up). Zpřesňuje krok "Na cestě" ve stepperu.
|
||||
trackingCourierState:
|
||||
description: Poslední známý stav kurýra ze sledovací služby (Bolt raw courier.state, např. arrived_to_provider; Wolt odvozené "assigned"/"delivering"). Zpřesňuje krok "Na cestě" ve stepperu.
|
||||
type: string
|
||||
|
||||
# --- NEVYŘÍZENÉ QR KÓDY ---
|
||||
|
||||
Reference in New Issue
Block a user