import * as React from 'react'; import {useEffect, useState} from 'react'; import Box from '@mui/material/Box'; import Button from '@mui/material/Button'; import Dialog from '@mui/material/Dialog'; import DialogActions from '@mui/material/DialogActions'; import DialogContent from '@mui/material/DialogContent'; import DialogContentText from '@mui/material/DialogContentText'; import DialogTitle from '@mui/material/DialogTitle'; import Stack from "@mui/material/Stack"; import Typography from "@mui/material/Typography"; import {ButtonGroup} from "@mui/material"; import {requests} from "../../requests"; import {useAlert} from "../../hooks/useAlert"; import {api} from "../../lib/clients/api"; function renderButtons(row, my, handleChange) { if (my) { if (row.status === "NEW") { return ( ); } else { return null; } } else { return ( ) } } export default function OrderModal({row, handleClose, open, handleChange, my}) { const [receipt, setReceipt] = useState([]); const [instructions, setInstructions] = useState(); const {createError} = useAlert(); useEffect(() => { if (!row) { return; } api().get(requests.bar.receipts + row.cocktail.id) .then((r) => setReceipt(r.data)) .catch(() => createError("Ошибка получения рецепта")) api().get(requests.cocktails.instructions + row.cocktail.id) .then((r) => setInstructions(r.data)) .catch(() => createError("Ошибка получения инструкции")) // eslint-disable-next-line }, [row]); if (!row) { return null; } return ( {"Заказ №" + row.id} {row.cocktail.name} {"для: " + row.visitor.name + " " + row.visitor.lastName} {row.cocktail.name} Ингредиенты: {receipt.map((r) => { return ({`${r.ingredient.name} - ${r.measure}`}) })} {instructions && ( <> Инструкция: {instructions} ) } {row.cocktail.video && ()} {renderButtons(row, my, handleChange)} ); }