fix: potvrzovací dialog pro Pizza day akce (#44)
Some checks failed
ci/woodpecker/push/workflow Pipeline failed
Some checks failed
ci/woodpecker/push/workflow Pipeline failed
This commit is contained in:
@@ -385,6 +385,42 @@ function App() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const handleCreatePizzaDay = async () => {
|
||||||
|
if (!window.confirm('Opravdu chcete založit Pizza day?')) return;
|
||||||
|
setLoadingPizzaDay(true);
|
||||||
|
await createPizzaDay().then(() => setLoadingPizzaDay(false));
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleDeletePizzaDay = async () => {
|
||||||
|
if (!window.confirm('Opravdu chcete smazat Pizza day? Budou smazány i všechny dosud zadané objednávky.')) return;
|
||||||
|
await deletePizzaDay();
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleLockPizzaDay = async () => {
|
||||||
|
if (!window.confirm('Opravdu chcete uzamknout objednávky? Po uzamčení nebude možné přidávat ani odebírat objednávky.')) return;
|
||||||
|
await lockPizzaDay();
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleUnlockPizzaDay = async () => {
|
||||||
|
if (!window.confirm('Opravdu chcete odemknout objednávky? Uživatelé budou moci opět upravovat své objednávky.')) return;
|
||||||
|
await unlockPizzaDay();
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleFinishOrder = async () => {
|
||||||
|
if (!window.confirm('Opravdu chcete označit objednávky jako objednané? Objednávky zůstanou zamčeny.')) return;
|
||||||
|
await finishOrder();
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleReturnToLocked = async () => {
|
||||||
|
if (!window.confirm('Opravdu chcete vrátit stav zpět do "uzamčeno" (před objednáním)?')) return;
|
||||||
|
await lockPizzaDay();
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleFinishDelivery = async () => {
|
||||||
|
if (!window.confirm(`Opravdu chcete označit pizzy jako doručené?${settings?.bankAccount && settings?.holderName ? ' Uživatelům bude vygenerován QR kód pro platbu.' : ''}`)) return;
|
||||||
|
await finishDelivery({ body: { bankAccount: settings?.bankAccount, bankAccountHolder: settings?.holderName } });
|
||||||
|
}
|
||||||
|
|
||||||
const pizzaSuggestions = useMemo(() => {
|
const pizzaSuggestions = useMemo(() => {
|
||||||
if (!data?.pizzaList) {
|
if (!data?.pizzaList) {
|
||||||
return [];
|
return [];
|
||||||
@@ -708,10 +744,7 @@ function App() {
|
|||||||
</span>
|
</span>
|
||||||
:
|
:
|
||||||
<div>
|
<div>
|
||||||
<Button onClick={async () => {
|
<Button onClick={handleCreatePizzaDay}>Založit Pizza day</Button>
|
||||||
setLoadingPizzaDay(true);
|
|
||||||
await createPizzaDay().then(() => setLoadingPizzaDay(false));
|
|
||||||
}}>Založit Pizza day</Button>
|
|
||||||
<Button variant="outline-primary" onClick={doJdemeObed}>Jdeme na oběd!</Button>
|
<Button variant="outline-primary" onClick={doJdemeObed}>Jdeme na oběd!</Button>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
@@ -730,12 +763,8 @@ function App() {
|
|||||||
{
|
{
|
||||||
data.pizzaDay.creator === auth.login &&
|
data.pizzaDay.creator === auth.login &&
|
||||||
<div className="mb-4">
|
<div className="mb-4">
|
||||||
<Button variant="danger" title="Smaže kompletně pizza day, včetně dosud zadaných objednávek." onClick={async () => {
|
<Button variant="danger" title="Smaže kompletně pizza day, včetně dosud zadaných objednávek." onClick={handleDeletePizzaDay}>Smazat Pizza day</Button>
|
||||||
await deletePizzaDay();
|
<Button title={noOrders ? "Nelze uzamknout - neexistuje žádná objednávka" : "Zamezí přidávat/odebírat objednávky. Použij před samotným objednáním, aby již nemohlo docházet ke změnám."} disabled={noOrders} onClick={handleLockPizzaDay}>Uzamknout</Button>
|
||||||
}}>Smazat Pizza day</Button>
|
|
||||||
<Button title={noOrders ? "Nelze uzamknout - neexistuje žádná objednávka" : "Zamezí přidávat/odebírat objednávky. Použij před samotným objednáním, aby již nemohlo docházet ke změnám."} disabled={noOrders} onClick={async () => {
|
|
||||||
await lockPizzaDay();
|
|
||||||
}}>Uzamknout</Button>
|
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
</>
|
</>
|
||||||
@@ -746,12 +775,8 @@ function App() {
|
|||||||
<p>Objednávky jsou uzamčeny uživatelem <strong>{data.pizzaDay.creator}</strong></p>
|
<p>Objednávky jsou uzamčeny uživatelem <strong>{data.pizzaDay.creator}</strong></p>
|
||||||
{data.pizzaDay.creator === auth.login &&
|
{data.pizzaDay.creator === auth.login &&
|
||||||
<div className="mb-4">
|
<div className="mb-4">
|
||||||
<Button variant="secondary" title="Umožní znovu editovat objednávky." onClick={async () => {
|
<Button variant="secondary" title="Umožní znovu editovat objednávky." onClick={handleUnlockPizzaDay}>Odemknout</Button>
|
||||||
await unlockPizzaDay();
|
<Button title={noOrders ? "Nelze objednat - neexistuje žádná objednávka" : "Použij po objednání. Objednávky zůstanou zamčeny."} disabled={noOrders} onClick={handleFinishOrder}>Objednáno</Button>
|
||||||
}}>Odemknout</Button>
|
|
||||||
<Button title={noOrders ? "Nelze objednat - neexistuje žádná objednávka" : "Použij po objednání. Objednávky zůstanou zamčeny."} disabled={noOrders} onClick={async () => {
|
|
||||||
await finishOrder();
|
|
||||||
}}>Objednáno</Button>
|
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
</>
|
</>
|
||||||
@@ -762,12 +787,8 @@ function App() {
|
|||||||
<p>Pizzy byly objednány uživatelem <strong>{data.pizzaDay.creator}</strong></p>
|
<p>Pizzy byly objednány uživatelem <strong>{data.pizzaDay.creator}</strong></p>
|
||||||
{data.pizzaDay.creator === auth.login &&
|
{data.pizzaDay.creator === auth.login &&
|
||||||
<div className="mb-4">
|
<div className="mb-4">
|
||||||
<Button variant="secondary" title="Vrátí stav do předchozího kroku (před objednáním)." onClick={async () => {
|
<Button variant="secondary" title="Vrátí stav do předchozího kroku (před objednáním)." onClick={handleReturnToLocked}>Vrátit do "uzamčeno"</Button>
|
||||||
await lockPizzaDay();
|
<Button title="Nastaví stav na 'Doručeno' - koncový stav." onClick={handleFinishDelivery}>Doručeno</Button>
|
||||||
}}>Vrátit do "uzamčeno"</Button>
|
|
||||||
<Button title="Nastaví stav na 'Doručeno' - koncový stav." onClick={async () => {
|
|
||||||
await finishDelivery({ body: { bankAccount: settings?.bankAccount, bankAccountHolder: settings?.holderName } });
|
|
||||||
}}>Doručeno</Button>
|
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
</>
|
</>
|
||||||
|
|||||||
Reference in New Issue
Block a user