BRS#
|
Třída na převod uživatelských dotazů na dotazy pro databázi. More...
Public Member Functions | |
Logic (IQuery Query) | |
Konstruktor. More... | |
void | Init () |
Inicializace, mj. přidělení unikátního IP novému zákazníkovi. More... | |
void | Clear () |
Vymazání aktuálních dat. More... | |
bool | Find (out Queue< BusPrint > Buses, string CityFrom, string CityTo, string LeaveTime) |
Nalezení vyhovujících autobusů. More... | |
bool | Next (out Queue< BusPrint > Buses) |
Vypsání dalších autobusů. More... | |
bool | SetBus (uint BusId, out Queue< uint > FreeSeats, out string Plan, out BusPrint Bus, out uint NumberSeats) |
Nastaví aktuální autobus. More... | |
bool | ReserveAsk (out Queue< uint > Seats, uint SeatsCount) |
Dočasná rezervace. More... | |
bool | ReserveAsk (ref Queue< uint > Seats) |
Dočasná rezervace. More... | |
bool | ReserveForever (ref Queue< uint > Seats, out uint Id, out BusPrint Bus) |
Konečná rezervace. More... | |
bool | UnlockAll (uint UserId, out Queue< uint > Seats) |
Uvolnění sedadel. More... | |
bool | Unlock (ref Queue< uint > Seats) |
Uvolnění sedadel. More... | |
bool | Unlock (uint UserId, ref Queue< uint > Seats) |
Uvolnění sedadel. More... | |
uint | AddCity (string CityName) |
Přidání nového města. More... | |
bool | DelCity (string CityName) |
Smazání města. More... | |
bool | AddCityAlias (string CityAlias, string CityName) |
Přídání zkratky pro stávající město. More... | |
uint | AddBus (uint Line, string CityFrom, string CityTo, string LeaveTime, string Plan) |
Přidání nového autobusu. More... | |
bool | DelBus (uint BusId) |
Smazání autobusu. More... | |
uint | AddBusPlan (string Name, uint Seats, string File) |
Přidání nového plánu autobusu. More... | |
bool | DelBusPlan (string Name) |
Smazání plánu autobusu. More... | |
bool | Close (uint BusId, out Queue< uint > QReservedSeats, out string Plan, out BusPrint BusPrint, out uint Seats) |
Uzamknutí autobusu. More... | |
Error | GetLastError () |
Zjištění případné chyby v poslední funkci. More... | |
uint | ClearBus () |
Smazání starých autobusů. More... | |
uint | ClearCity () |
Smazání nepoužívaných měst. More... | |
uint | ClearPlan () |
Smazání nepoužívaných plánů autobusů. More... | |
void | City (string input, out List< KeyValuePair< string, string >> Cities) |
Vypsání existujících měst. More... | |
Třída na převod uživatelských dotazů na dotazy pro databázi.
Třída zajišťuje převod dotazu uživatele na dotazy pro databázi a případné nastavení chybové hodnoty pro všechny nepovolené vstupy.
Chybové kódy po každém příkazu si můžeme zjistit voláním GetLastError().
Pamatuje si předtím uživatelem zadané hodnoty a tím umožňuje používat jednodušší a snáze zapamatovatelné příkazy.
Logic.Logic | ( | IQuery | Query | ) |
uint Logic.AddBus | ( | uint | Line, |
string | CityFrom, | ||
string | CityTo, | ||
string | LeaveTime, | ||
string | Plan | ||
) |
Přidání nového autobusu.
Přidá nový autobus do databáze.
Line | číslo linky autobusu. |
CityFrom | název výchozího města. |
CityTo | název cílového města. |
LeaveTime | řetězec s časem odjezdu autobusu. |
Plan | název plánu/typu autobusu. |
uint Logic.AddBusPlan | ( | string | Name, |
uint | Seats, | ||
string | File | ||
) |
uint Logic.AddCity | ( | string | CityName | ) |
bool Logic.AddCityAlias | ( | string | CityAlias, |
string | CityName | ||
) |
void Logic.City | ( | string | input, |
out List< KeyValuePair< string, string >> | Cities | ||
) |
Vypsání existujících měst.
Vypíše existující města z databáze.
input | vstupní sekvence, podle které se hledají podobná města. |
Cities | seznam nalezených měst. Názvy měst mají druhý string prázdný, aliasy jsou v druhém stringu a v prvním je i opravdový název města. |
void Logic.Clear | ( | ) |
uint Logic.ClearBus | ( | ) |
uint Logic.ClearCity | ( | ) |
uint Logic.ClearPlan | ( | ) |
bool Logic.Close | ( | uint | BusId, |
out Queue< uint > | QReservedSeats, | ||
out string | Plan, | ||
out BusPrint | BusPrint, | ||
out uint | Seats | ||
) |
bool Logic.DelBus | ( | uint | BusId | ) |
bool Logic.DelBusPlan | ( | string | Name | ) |
bool Logic.DelCity | ( | string | CityName | ) |
bool Logic.Find | ( | out Queue< BusPrint > | Buses, |
string | CityFrom, | ||
string | CityTo, | ||
string | LeaveTime | ||
) |
Nalezení vyhovujících autobusů.
Buses | fronta nalezených autobusů k vypsání. |
CityFrom | řetězec s názvem výchozího města. |
CityTo | řetězec s názvem cílového města. |
LeaveTime | řetězec s časem, od kterého dál se má v databáti vyhledávat. |
Error Logic.GetLastError | ( | ) |
void Logic.Init | ( | ) |
bool Logic.Next | ( | out Queue< BusPrint > | Buses | ) |
bool Logic.ReserveAsk | ( | out Queue< uint > | Seats, |
uint | SeatsCount | ||
) |
Dočasná rezervace.
Zarezervuje zadaný počet sedadel jen na určitou dobu, poté budou automaticky uvolněna.
Seats | seznam sedadel, které se podařilo rezervovat. |
SeatsCount | počet sedadel k rezervaci. |
bool Logic.ReserveAsk | ( | ref Queue< uint > | Seats | ) |
Dočasná rezervace.
Zarezervuje zadaná sedadla jen na určitou dobu, poté budou automaticky uvolněna.
Seats | seznam sedadel k rezervaci. Sedadla, která se nepovedlo rezervovat, budou z tohoto seznamu odstraněna. |
bool Logic.ReserveForever | ( | ref Queue< uint > | Seats, |
out uint | Id, | ||
out BusPrint | Bus | ||
) |
Konečná rezervace.
Definitivně zarezervuje zadaná sedadla.
Seats | seznam sedadel k rezervaci. Sedadla, která se nepovedlo rezervovat, budou z tohoto seznamu odstraněna. |
Id | ID uživatele, který provedl rezervaci. |
Bus | data o autobusu, ve kterém byla provedene rezervace. |
bool Logic.SetBus | ( | uint | BusId, |
out Queue< uint > | FreeSeats, | ||
out string | Plan, | ||
out BusPrint | Bus, | ||
out uint | NumberSeats | ||
) |
Nastaví aktuální autobus.
bool Logic.Unlock | ( | ref Queue< uint > | Seats | ) |
bool Logic.Unlock | ( | uint | UserId, |
ref Queue< uint > | Seats | ||
) |
Uvolnění sedadel.
Provede uvolnění zadaných sedadel v aktuálním autobusu se zadaným ID uživatele.
UserId | ID uživatele, který chce zrušit svou rezervaci. |
Seats | seznam sedadel k uvolnění, po návratu uvolněná sedadla. |
bool Logic.UnlockAll | ( | uint | UserId, |
out Queue< uint > | Seats | ||
) |
Uvolnění sedadel.
Provede uvolnění zadaných sedadel v aktuálním autobusu s aktuálním ID uživatele. Užitečné zejména pro uvolnění dočasně rezervovaných sedadel při nepotvrzení rezervace.
UserId | ID uživatele, který chce zrušit svou rezervaci. |
Seats | seznam uvolněných sedadel. |