public IActionResult Orders() { var role = HttpContext.Session.GetString("role"); if (role == null || role.ToLower() == "клиент" || !IsAuthorizedInDb(HttpContext.Session.Id)) { return(RedirectToAction("Authorization", "Home")); } if (Request.Method == "GET") { var ords = _ordersContainer.GetOrders(null, from: DateTime.Today, to: DateTime.Today); ViewData["roleName"] = HttpContext.Session.GetString("roleName"); ViewData["login"] = HttpContext.Session.GetString("login"); return(View(ords as List <Order>)); } DateTime?start; DateTime?end; var parsed = DateTime.TryParseExact(Request.Form["start"], "dd.MM.yyyy", CultureInfo.CurrentCulture, DateTimeStyles.None, out var date); if (parsed) { start = date; } else { start = null; } parsed = DateTime.TryParseExact(Request.Form["end"], "dd.MM.yyyy", CultureInfo.CurrentCulture, DateTimeStyles.None, out date); if (parsed) { end = date; } else { end = null; } var orders = _ordersContainer.GetOrders(null, from: start, to: end); ViewData["roleName"] = HttpContext.Session.GetString("roleName"); ViewData["login"] = HttpContext.Session.GetString("login"); return(Json(orders)); //return View(orders as List<Order>); }
public void Execute() { Console.WriteLine("Неоплаченные услуги:"); Console.WriteLine(); PrintServices(_servicesContainer.GetOrders(Menu.CurrentUser, false)); Console.WriteLine(); Console.Write("Введите идентификатор услуги: "); var idService = Console.ReadLine(); var service = _servicesContainer.GetOrderById(idService); if (service == null) { Refresh("Неверный id услуги"); return; } if (service.IsPaid) { Refresh("Услуга уже оплачена"); return; } _clientOperations.PayService(Menu.CurrentUser, idService); Console.Clear(); Console.WriteLine("Услуга успешно оплачена"); Console.WriteLine(); Console.WriteLine(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); }
public void Execute() { Console.WriteLine("Заказанные услуги:"); Console.WriteLine(); PrintServices(_ordersContainer.GetOrders(Menu.CurrentUser, false)); // контекст Console.WriteLine(); Console.Write("Введите идентификатор заказа: "); var idOrder = Console.ReadLine(); var order = _ordersContainer.GetOrderById(idOrder); // контекст if (order == null) { Refresh("Неверный id заказа"); return; } if (order.IsPaid) { Refresh("Заказ уже оплачен"); return; } _userOperations.CancelService(Menu.CurrentUser, order.Id); Console.Clear(); Console.WriteLine("Услуга успешно отменена"); Console.WriteLine(); Console.WriteLine(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); }
public void Execute() { var services = _servicesContainer.GetOrders(null, false); foreach (var service in services) { Console.WriteLine($"Услуга {service.Service.Name} Стоимость {service.Cost} Клиент {service.User.Fio}"); } Console.WriteLine("Для продолжения нажмите любую клавишу"); Console.ReadKey(false); Console.Clear(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); }
public void Execute() { var services = _ordersContainer.GetOrders(paid: true, unpaid: false); foreach (var service in services) { var timeString = service.OrderDate.ToString("g", CultureInfo.CurrentCulture); Console.WriteLine($"Услуга {service.Service.Name} Стоимость {service.Cost} Дата {timeString}"); } Console.WriteLine("Для продолжения нажмите любую клавишу"); Console.ReadKey(false); Console.Clear(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); }
public void Execute() { Console.WriteLine("Введите период. Формат ДД.ММ.ГГГГ"); Console.Write("C "); var begin = Console.ReadLine(); Console.Write("По "); var end = Console.ReadLine(); Console.WriteLine(); Console.WriteLine("Выберите пользователя"); var users = _userContainer.GetUsers(); foreach (var user in users) { if (user.Role.Name.ToLower() == "Клиент".ToLower()) { Console.WriteLine($"ФИО {user.Fio} логин {user.Login}"); } } Console.WriteLine(); Console.Write("Введите логин = "); var log = Console.ReadLine(); var us = log == null ? null : _userContainer.GetUserByLogin(log); DateTime?beginDate; if (begin == "") { beginDate = null; } else { beginDate = DateTime.ParseExact(begin, "dd.MM.yyyy", CultureInfo.CurrentCulture); } DateTime?endDate; if (end == "") { endDate = null; } else { endDate = DateTime.ParseExact(end, "dd.MM.yyyy", CultureInfo.CurrentCulture); } var services = _ordersContainer.GetOrders(us, true, true, beginDate, endDate); foreach (var service in services) { var timeString = service.OrderDate.ToString("g", CultureInfo.CurrentCulture); if (service.IsPaid) { Console.WriteLine($"Услуга {service.Service.Name} Стоимость {service.Cost} Дата {timeString} Оплачена"); } else { Console.WriteLine($"Услуга {service.Service.Name} Стоимость {service.Cost} Дата {timeString} Не оплачена"); } } if (services.Count == 0) { Console.WriteLine("Заказов нет"); } Console.WriteLine("Для продолжения нажмите любую клавишу"); Console.ReadKey(false); Console.Clear(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); }
public void Execute() { Console.Write("Начальная дата (Enter для пропуска): "); var startDateStr = Console.ReadLine(); DateTime?startDate; if (string.IsNullOrEmpty(startDateStr)) { startDate = null; } else { startDate = DateTime.ParseExact(startDateStr, "dd.MM.yyyy", CultureInfo.CurrentCulture); } Console.Write("Конечная дата (Enter для пропуска): "); var endDateStr = Console.ReadLine(); DateTime?endDate; if (string.IsNullOrEmpty(endDateStr)) { endDate = null; } else { endDate = DateTime.ParseExact(startDateStr, "dd.MM.yyyy", CultureInfo.CurrentCulture); } var ordes = _ordersContainer.GetOrders(null, from: startDate, to: endDate); if (ordes.Count == 0) { Console.WriteLine(); Console.WriteLine("Нет заказов за указанный период"); Console.WriteLine(); Console.WriteLine("Для продолжения нажмите любую клавишу"); Console.ReadKey(false); Console.Clear(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); return; } foreach (var line in ordes.GroupBy(o => o.User) .Select(group => new { User = group.Key, Count = group.Count() }) .OrderBy(x => x.User.Login)) { Console.WriteLine($"{line.User.Fio} {line.User.Login} сделал {line.Count} заказов за указанный период"); } Console.WriteLine("Для продолжения нажмите любую клавишу"); Console.ReadKey(false); Console.Clear(); _clientMenu.Print(); _clientMenu.SetCommand(_clientMenu.ReadCommand()); _clientMenu.Run(); }