VŠB – Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky
Informační systém pro rezervaci pokojů hotelu SPORT
Programátorská příručka systému Příloha bakalářské práce
2006
Radka Bystroňová
Obsah 1.
Specifikace aplikace
2
2.
Struktura aplikace (adresáře, soubory, třídy)
3
2.1 2.2 2.3 2.4 2.5 2.6 2.7 3.
Adresáře .................................................................................................................................. 3 Skripty WWW stránek ............................................................................................................ 3 Soubory ................................................................................................................................... 4 Speciální třídy aplikace........................................................................................................... 4 Doplňkové komponenty.......................................................................................................... 4 Databáze.................................................................................................................................. 5 Vývojové prostředí.................................................................................................................. 5
Obsahu souborů web.config
6
1
1. Specifikace aplikace Z principu fungování internetové technologie WWW stránek je zřejmé, že IS hotelu Sport bude pracovat v architektuře Client-Server. Server je zde chápán, jako počítač či skupina počítačů, na kterých běží celý systém a provádějí se zde databázové a funkční operace. Pro potřeby provozu tohoto IS je možné použít jakýkoliv HTTP server splňující níže uvedené požadavky. Klientem je pak počítač, který se serverem komunikuje prostřednictvím internetu či intranetu a jediným jeho úkolem je komunikace s uživatelem pomocí klientského software (internetového prohlížeče). Pro implementaci a vývoj celé aplikace jsem zvolila platformu Microsoft .NET 2.0, konkrétně v prostředí pro tvorbu webových aplikací ASP.NET 2.0. Platforma Microsoft .NET Framework je nová technologie od Microsoftu pro vývoj aplikací, jak pro desktopové či mobilní zařízení, tak i pro web. Mimo své technické možnosti dokáže platforma také nabídnou širokou škálu programovacích jazyků: • C# • C++.NET • VB.NET • J# Tato aplikace byla implementována konkrétně v programovacím jazyce C#. Jako vývojové prostředí jsem zvolila Microsoft Visual Studio 2005, což je komplexní vývojové prostředí aplikace obsahující nejen výkonný editor zdrojových kódů, ale také nabízející rozšířené funkce, jako je ladění, krokování, správa projektů, atd. Dalším prvkem určujícím aplikační prostředí systému je SŘBD. Vazba systému na tuto část by měla být co nejmenší, aby byla zaručena co největší přenositelnost výsledného IS. Z tohoto důvodu zahrnuje návrh i implementace tzv. SQL layer. Jde o množinu tříd, ke kterým se při implementaci přistupuje jednotně, ale každá z nich provádí požadované funkce odlišně, v závislosti na použitém SŘBD. Protože se jedná o internetový či intranetový informační systém, je možné jeho klientskou část provozovat na kterémkoli operačním systému, který obsahuje internetový prohlížeč, a to zadáním internetové adresy http://bys030.aspdotnet.sk. Minimálním požadavkem tedy je internetový prohlížeč Internet Explorer, Opera, Mozilla, Netscape, ... Typickým problémem je zde kompatibilita jednotlivých prohlížečů. Tento IS je vyvíjen za podpory vývojového prostředí Visual Studio, které disponuje nástroji pro zajištění a udržení kompatibility a standardů webových stránek (XHTML, HTML, CSS, …). Nicméně i tak dochází k problémům s interpretací dat, a to zejména mezi prohlížeči různých výrobců. Při vývoji jakéhokoliv IS je tedy nutné dbát na to, jakým způsobem jsou výsledné WWW stránky zobrazeny v různých prohlížečích, které mohou uživatelé používat.
2
2. Struktura aplikace (adresáře, soubory, třídy) 2.1 Adresáře Admin – adresář obsahující stránky a jejich třídy přístupné pouze pro uživatelé s rolí admin All – adresář obsahující stránky a jejich třídy přístupné pouze pro uživatelé s rolí admin, user nebo chief User – adresář obsahující stránky a jejich třídy přístupné pouze pro uživatelé s rolí user Chief – adresář obsahující stránky a jejich třídy přístupné pouze pro uživatelé s roli chief nebo admin App_Code – adresář pro uložení společných tříd aplikace, které je možné využívat ze všech tříd celé aplikace App_Data – adresář pro uložení databáze aplikace App_GlobalResources – adresář pro uložení globalizace stránek, konkrétně pro menu v češtině a v angličtině App_LocalResources – adresář pro uložení lokalizace stránek, konkrétně lokalizace v češtině a v angličtině Modules – adresář pro uložení vizualizací jednotlivých komponent Images – adresář pro uložení obrázku
2.2 Skripty WWW stránek Accommodation.aspx – stránka zobrazující seznam ubytování Acommodation_archive.aspx – stránka zobrazující seznam starých ubytování Accommodation_new.aspx – stránka která umožňuje zobrazit detail, editaci nebo zvoleni období nového ubytování bez rezervace Accommodation_new_with.aspx – stránka která umožňuje zvolení rezervace pro ubytování hosta Accommodation_new_without.aspx – stránka která umožňuje zadání údajů o ubytování a vytvoření ubytování Add.aspx – stránka, ke které má přístup pouze administrátor a slouží k přidáni nového uživatele, vloženi jeho osobních údajů a specifikace jeho role All_users.aspx – stránka, ke které má přístup pouze administrátor a slouží k zobrazení seznamu všech uživatelů Bill.aspx – stránka která zobrazí detail účtu Bill_archive.aspx – stránka zobrazující seznam všech vystavených účtů Companies.aspx – stránka zobrazující seznam firem v databázi Companies_new.aspx – stránka, která umožňuje zobrazit detail, editaci nebo vytvoření nové firmy Default.aspx – úvodní stránka aplikace Extras.aspx – stránka zobrazující seznam příplatku a slev v databázi Estras_new.aspx - stránka která umožňuje zobrazit detail, editaci příplatku a slev, nebo vytvoření nového příplatku a slevy, ale k editaci a vytvoření nového příplatku a slevy má přístup pouze uživatel s rolí admin Foods.aspx – stránka zobrazující seznam stravy v databázi Foods_new.aspx - stránka která umožňuje zobrazit detail a editaci stravy, nebo vytvoření nové stravy, ale k editaci a vytvoření nové stravy má přístup pouze uživatel s rolí admin Gains.aspx – stránka která zobrazí formulář pro zvolení období pro přehled tržeb Guests.aspx – stránka zobrazující seznam hostů v databázi
3
Guests_new.aspx – stránka, která umožňuje zobrazit detail, editaci nebo vytvoření nového hosta PasswordChange.aspx – umožňuje změnit heslo uživateli který je právě přihlášen Payment_methods.aspx – stránka, která zobrazí seznam způsobu platby Payment_methods_new.aspx - umožňuje zobrazit detail, editaci nebo vytvoření nového způsobu platby, ale k editaci a vytvoření nového způsobu platby má přístup pouze uživatel s rolí admin Print_Bill.aspx – zobrazí účet pro tisk Print_Extras.aspx – zobrazí seznam příplatku a slev pro tisk Print_Foods.aspx – zobrazí seznam stravy pro tisk Print_Payment_methods.aspx – zobrazí seznam způsobů plateb pro tisk Print_Rooms.aspx – zobrazí seznam pokojů pro tisk Reservations.aspx – stránka zobrazující seznam rezervací Reservations_archive.aspx – stránka zobrazující seznam rezervací v archívu (stornované, staré a ubytované rezervace) Reservations_new.aspx – stránka která umožňuje zobrazit detail, editaci nebo zvoleni období nové rezervace Reservations_new2.aspx – stránka která zobrazí 2. krok při rezervaci, tj. výběr pokoje a hosta, zadání poznámky a uložení zadané rezervace do databáze Rooms.aspx – stránka zobrazující seznam pokojů v databázi Rooms_new.aspx – stránka, která umožňuje zobrazit detail, editaci nebo vytvoření nového pokoje User_detail.aspx – stránka která zobrazí údaje přihlášeného uživatele User_new.aspx – stránka, ke které má přístup pouze administrátor a slouží k zobrazení detailu o vybraném uživateli nebo k editaci údajů vybraného uživatele ViewGains.aspx – stránka která zobrazí přehled tržeb za zvolené období
2.3 Soubory MasterPage.master – definice základního vzhledu všech www stránek aplikace, který je aplikován automaticky na většinu generované stránky aplikace web.config – specifikace přístupových práv k jednotlivým částem systému podle uživatelských rolí a další nastavení tykající se práv, omezení a přístupů Web.sitemap – struktura nabídek a přístupových práv k jednotlivým stránkám Global.asax – obsahuje implementace metod souvisejících se spuštěním či ukončením celé aplikace style.css – soubor s definicemi kaskádových stylu pro výsledné html stránky
2.4 Speciální třídy aplikace DatePicker.cs – implementace funkcí pro moduly DateAndTimePicker.ascx a DatePickerModules.ascx pro část Date TimePicker.cs – implementace funkcí pro modul DateAndTimePicker.ascx pro část Time Utils.cs – třída nabízející základní funkce pro aplikaci, např. připojení k databázi
2.5 Doplňkové komponenty DateAndTimePicker.ascx – modul pro uživatelský přívětivý výběr data času DatePickerModules.ascx – modul pro uživatelský přívětivý výběr data LocationSelector.ascx – modul umožňující výběr států hosta, firmy atd.
4
2.6 Databáze ASPNETDB.MDF – databáze aplikace
2.7 Vývojové prostředí Na následujícím obrázku je zobrazeno vývojové prostředí MS Visual Studio. Tento obrázek poskytuje stručný náhled na strukturu projektu a jeho jednotlivých částí (pravá část).
5
3. Obsahu souborů web.config Tento soubor obsahuje specifikaci práv a přístupů k jednotlivým funkcím aplikace a nastavení parametrů důležitých pro běh celé aplikace. Tento soubor je strukturován jako XML soubor.
<system.web> <siteMap defaultProvider="AspNetXmlSiteMapProvider" enabled="true"> <providers>
6
<system.web> <deny users="*"/> <system.web> <deny users="*"/> <system.web> <deny users="*"/> <system.web> <deny users="*"/>
7