private void ExecuteRentCommand(IItem item, DateTime rentDate, DateTime deadline) { if (this.supplies[item] == 0) { throw new InsufficientSuppliesException("There are not enough supplies to sell this item."); } RentManager.AddRent(item, rentDate, deadline); this.supplies[item]--; }
private void ExecuteReportCommand(string[] commandArgs) { var reportType = commandArgs[0]; switch (reportType) { case "sales": var startDate = ToDateTime(commandArgs[1]); var salesIncome = SaleManager.ReportSalesIncome(startDate); Console.WriteLine($"{salesIncome:F2}"); break; case "rents": var overdueRents = RentManager.ReportOverdueRents(); Console.WriteLine(string.Join(Environment.NewLine, overdueRents)); break; default: throw new ArgumentException("Invalid report type."); } }