Nástřel přidávání pizzy

This commit is contained in:
2023-06-05 21:14:35 +02:00
parent 5fd4edee94
commit 2e80faa6b8
5 changed files with 48 additions and 12 deletions

View File

@@ -83,7 +83,7 @@ const downloadPizzy = async () => {
/**
* Vrátí pizzy z tempu, nebo čerstvě stažené, pokud v tempu nejsou.
*/
export const fetchPizzy = async () => {
export const fetchPizzy = async (): Promise<Pizza[]> => {
const tmpDir = os.tmpdir();
const date_ob = new Date();
const date = ("0" + date_ob.getDate()).slice(-2);

View File

@@ -47,7 +47,7 @@ app.get("/api/pizza", (req, res) => {
});
});
// /** Založí pizza day pro aktuální den, za předpokladu že dosud neexistuje. */
/** Založí pizza day pro aktuální den, za předpokladu že dosud neexistuje. */
app.post("/api/createPizzaDay", (req, res) => {
console.log("Založení pizza day", req) // TODO smazat
if (!req.body?.creator) {
@@ -58,7 +58,7 @@ app.post("/api/createPizzaDay", (req, res) => {
io.emit("message", data);
});
// /** Smaže pizza day pro aktuální den, za předpokladu že existuje. */
/** Smaže pizza day pro aktuální den, za předpokladu že existuje. */
app.post("/api/deletePizzaDay", (req, res) => {
if (!req.body?.login) {
throw Error("Nebyl předán login uživatele");
@@ -67,6 +67,34 @@ app.post("/api/deletePizzaDay", (req, res) => {
io.emit("message", getData());
});
app.post("/api/addPizza", (req, res) => {
if (!req.body?.login) {
throw Error("Nebyl předán login");
}
if (isNaN(req.body?.pizzaIndex)) {
throw Error("Nebyl předán index pizzy");
}
const pizzaIndex = req.body.pizzaIndex;
if (isNaN(req.body?.pizzaSizeIndex)) {
throw Error("Nebyl předán index velikosti pizzy");
}
const pizzaSizeIndex = req.body.pizzaSizeIndex;
fetchPizzy().then(pizzy => {
if (!pizzy[pizzaIndex]) {
throw Error("Neplatný index pizzy: " + pizzaIndex);
}
if (!pizzy[pizzaIndex].sizes[pizzaSizeIndex]) {
throw Error("Neplatný index velikosti pizzy: " + pizzaSizeIndex);
}
console.log("Vybraná pizza", pizzy[pizzaIndex], pizzy[pizzaIndex].sizes[pizzaSizeIndex]);
// TODO implementovat přidání objednávky - nutno zjistit co vlastně chceme ukládat
// pravděpodobně název, velikost, cenu
res.status(200).json({});
// TODO odeslat aktuální data socketem
// io.emit("message", data);
})
});
app.post("/api/updateChoice", (req, res) => {
console.log("Změna výběru", req.body);
if (!req.body.hasOwnProperty('name')) {