/
aprogrammer
/
blazor-workshop
Обзор
Документация
Войти
/
aprogrammer
/
blazor-workshop
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/BlazingPizza.Client/OrderState.cs
55 строк
1 KB
Ed Charbeneau
Nullable (#365)
29 ноя 2023, 23:47
Не верифицирован
29 ноя 2023, 23:47
bb345a1
Код
Авторство
О чём код?
namespace BlazingPizza.Client; public class OrderState { public bool ShowingConfigureDialog { get; private set; } public Pizza? ConfiguringPizza { get; private set; } public Order Order { get; private set; } = new Order(); public void ShowConfigurePizzaDialog(PizzaSpecial special) { ConfiguringPizza = new Pizza() { Special = special, SpecialId = special.Id, Size = Pizza.DefaultSize, Toppings = new List<PizzaTopping>(), }; ShowingConfigureDialog = true; } public void CancelConfigurePizzaDialog() { ConfiguringPizza = null; ShowingConfigureDialog = false; } public void ConfirmConfigurePizzaDialog() { if (ConfiguringPizza is not null) { Order.Pizzas.Add(ConfiguringPizza); ConfiguringPizza = null; } ShowingConfigureDialog = false; } public void RemoveConfiguredPizza(Pizza pizza) { Order.Pizzas.Remove(pizza); } public void ResetOrder() { Order = new Order(); } public void ReplaceOrder(Order order) { Order = order; } }