Add placeholder pickup locations per stand
STAND_LOCATIONS map in server.js keyed by menu item name; every order now carries a 'where to find it' line (PLACEHOLDER — edit when the site map is final). Staff can override per order when marking ready.
This commit is contained in:
parent
c9f8df996e
commit
a4b56a8dc9
1 changed files with 23 additions and 1 deletions
|
|
@ -24,6 +24,28 @@ const STAFF_PASSCODE = process.env['ST'+'AFF_PASSCODE'] || '';
|
||||||
// Each menu item is its own stand; mixed orders consolidate at Kitchen 484.
|
// Each menu item is its own stand; mixed orders consolidate at Kitchen 484.
|
||||||
const DEFAULT_STAND = 'Kitchen 484';
|
const DEFAULT_STAND = 'Kitchen 484';
|
||||||
const DEFAULT_LOCATION = 'Center of camp, by the big solar dish';
|
const DEFAULT_LOCATION = 'Center of camp, by the big solar dish';
|
||||||
|
|
||||||
|
// PLACEHOLDER stand locations — edit these when the site map is final.
|
||||||
|
// Keyed by menu item name; orders for that item show this text wherever
|
||||||
|
// the app says where to pick up (success screen, orders view, staff board).
|
||||||
|
const STAND_LOCATIONS = {
|
||||||
|
'Coffee Station': 'PLACEHOLDER — east path, next to the water station',
|
||||||
|
'Sweets Cart': 'PLACEHOLDER — north gate, under the yellow canopy',
|
||||||
|
'Taco Stand': 'PLACEHOLDER — main lawn, food row #1',
|
||||||
|
'BBQ Pit': 'PLACEHOLDER — downwind corner behind the wood pile',
|
||||||
|
'Chicken Grill': 'PLACEHOLDER — main lawn, food row #2',
|
||||||
|
'Pasta Bar': 'PLACEHOLDER — west tent, near the stage',
|
||||||
|
'Drinks': 'PLACEHOLDER — center of camp, big cooler',
|
||||||
|
'Garden Burgers': 'PLACEHOLDER — main lawn, food row #2',
|
||||||
|
'Grill 484': 'PLACEHOLDER — center of camp, by the big solar dish',
|
||||||
|
'Ramen Tent': 'PLACEHOLDER — south tent, steam visible from path',
|
||||||
|
'Flatbread Oven': 'PLACEHOLDER — east tent, smell the bread',
|
||||||
|
'Dumpling Bar': 'PLACEHOLDER — west tent, next to Pasta Bar',
|
||||||
|
'Farewell Feast · BBQ': 'PLACEHOLDER — main lawn, long tables',
|
||||||
|
};
|
||||||
|
function locationFor(stand) {
|
||||||
|
return STAND_LOCATIONS[stand] || STAND_LOCATIONS[DEFAULT_STAND] || DEFAULT_LOCATION;
|
||||||
|
}
|
||||||
// --- order store ---------------------------------------------------------
|
// --- order store ---------------------------------------------------------
|
||||||
fs.mkdirSync(DATA_DIR, { recursive: true });
|
fs.mkdirSync(DATA_DIR, { recursive: true });
|
||||||
let orders = [];
|
let orders = [];
|
||||||
|
|
@ -132,7 +154,7 @@ async function handle(req, res) {
|
||||||
const ids = Object.keys(items);
|
const ids = Object.keys(items);
|
||||||
if (!ids.length) return json(res, 400, { error: 'cart is empty' });
|
if (!ids.length) return json(res, 400, { error: 'cart is empty' });
|
||||||
const stand = String(b.stand || DEFAULT_STAND).trim().slice(0, 40) || DEFAULT_STAND;
|
const stand = String(b.stand || DEFAULT_STAND).trim().slice(0, 40) || DEFAULT_STAND;
|
||||||
const standLocation = String(b.standLocation || DEFAULT_LOCATION).trim().slice(0, 80);
|
const standLocation = String(b.standLocation || locationFor(stand)).trim().slice(0, 80);
|
||||||
const order = {
|
const order = {
|
||||||
code: makeCode(),
|
code: makeCode(),
|
||||||
status: 'PREPARING',
|
status: 'PREPARING',
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue