Oprava stahování pizz pro Pizza day
This commit is contained in:
parent
e78f9cfd3a
commit
45bd84f96f
@ -284,6 +284,7 @@ function App() {
|
||||
<li>Oprava přesměrování při přihlášení přes Authelia</li>
|
||||
<li>Zobrazení jména uživatele místo loginu při přihlášení přes Authelia</li>
|
||||
<li>Funkční odhlášení přes Authelia</li>
|
||||
<li>Oprava stahování pizz z Pizza Chefie</li>
|
||||
</ul>
|
||||
</Alert>
|
||||
<h1 className='title'>Dnes je {data.date}</h1>
|
||||
|
@ -152,8 +152,7 @@ app.post("/api/addPizza", async (req, res) => {
|
||||
const pizzaSizeIndex = req.body.pizzaSizeIndex;
|
||||
let pizzy = await getPizzaList();
|
||||
if (!pizzy) {
|
||||
pizzy = await downloadPizzy();
|
||||
savePizzaList(pizzy);
|
||||
throw Error("Selhalo získání seznamu dostupných pizz.");
|
||||
}
|
||||
if (!pizzy[pizzaIndex]) {
|
||||
throw Error("Neplatný index pizzy: " + pizzaIndex);
|
||||
|
@ -4,6 +4,7 @@ import { generateQr } from "./qr";
|
||||
import { ClientData, PizzaDayState, UdalostEnum, Pizza, PizzaSize, Order, PizzaOrder, Locations, Restaurants, Food, Menu } from "../../types";
|
||||
import getStorage from "./storage";
|
||||
import { getMenuSladovnicka, getMenuTechTower, getMenuUMotliku } from "./restaurants";
|
||||
import { downloadPizzy } from "./chefie";
|
||||
|
||||
const storage = getStorage();
|
||||
|
||||
@ -29,11 +30,15 @@ export async function getData(): Promise<ClientData> {
|
||||
|
||||
/**
|
||||
* Vrátí seznam dostupných pizz pro dnešní den.
|
||||
* Stáhne je, pokud je pro dnešní den nemá.
|
||||
*/
|
||||
export async function getPizzaList(): Promise<Pizza[] | undefined> {
|
||||
await initIfNeeded();
|
||||
const today = formatDate(getToday());
|
||||
const clientData: ClientData = await storage.getData(today);
|
||||
let clientData: ClientData = await storage.getData(today);
|
||||
if (!clientData.pizzaList) {
|
||||
clientData = await savePizzaList(await downloadPizzy());
|
||||
}
|
||||
return Promise.resolve(clientData.pizzaList);
|
||||
}
|
||||
|
||||
@ -98,7 +103,9 @@ export async function createPizzaDay(creator: string): Promise<ClientData> {
|
||||
if (clientData.pizzaDay) {
|
||||
throw Error("Pizza day pro dnešní den již existuje");
|
||||
}
|
||||
const data: ClientData = { pizzaDay: { state: PizzaDayState.CREATED, creator, orders: [] }, ...clientData };
|
||||
// TODO berka rychlooprava, vyřešit lépe - stahovat jednou, na jediném místě!
|
||||
const pizzaList = await getPizzaList();
|
||||
const data: ClientData = { pizzaDay: { state: PizzaDayState.CREATED, creator, orders: [] }, pizzaList, ...clientData };
|
||||
await storage.setData(today, data);
|
||||
callNotifikace({ input: { udalost: UdalostEnum.ZAHAJENA_PIZZA, user: creator } })
|
||||
return data;
|
||||
|
Loading…
x
Reference in New Issue
Block a user