Added reporting classes and implemented/ updated terminal commands

This commit versions the inital classes used for reporting. Some of the
manager classes have been adjusted so that they can also be used in the
reporting system since the queries are very similar. The terminal
commands and flow have been improved to further close in on the design
spec. Guests who make reservations now abide by the fixed rules
determined by the doc. For example Prepaid and 60 day reservations have
requirements on how far away a reservation needs to be at minimum. The
reservation creation process now takes this into account. The base rate
functionality has been hooked up and the queries have been verified to
work at least once. The same applies for CheckIn() and CheckOut()
functions.
This commit is contained in:
雲華
2022-04-15 19:11:03 -04:00
parent 14fb4b6050
commit 6fb0f5c466
10 changed files with 549 additions and 94 deletions

View File

@@ -37,7 +37,7 @@ namespace Ophelias.Managers
CREATE TABLE IF NOT EXISTS [reservations] (
[ID] INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
[RoomNum] INTEGER NULL UNIQUE,
[GuestID] INTEGER NOT NULL UNIQUE,
[GuestID] INTEGER NOT NULL,
[TransactionID] INTEGER NOT NULL UNIQUE,
[IsNoShow] BOOLEAN NOT NULL CHECK ([IsNoShow] IN (0,1)),
[Type] INTEGER NOT NULL CHECK ([Type] IN (0,1,2,3)),