Meeskond "FoodWars": Difference between revisions
Line 306: | Line 306: | ||
* Küsimus oli ka kas lahendasime portsjoni asja mõistlikult või oleks mõni teine lähenemine parem olnud. | * Küsimus oli ka kas lahendasime portsjoni asja mõistlikult või oleks mõni teine lähenemine parem olnud. | ||
* Küsimus, kas XML fail on liiga üle pingutatud või sobiva keerukusega | * Küsimus, kas XML fail on liiga üle pingutatud või sobiva keerukusega | ||
=== 19.Veebruar === | |||
*Valmis XSLT fail. | |||
[[Category: Võrgurakendused II: hajussüsteemide ehitamine]] | [[Category: Võrgurakendused II: hajussüsteemide ehitamine]] | ||
[[Category: Veebirakenduste loomine ASP.NET abil]] | [[Category: Veebirakenduste loomine ASP.NET abil]] |
Revision as of 17:36, 19 February 2011
Idee
Meie tiimil on plaanis teha internetipõhine söökla menüü süsteem (aluseks IT Kolledži kohvik, aga suunitlus selline, et kõik kohvikud/sööklad saaksid teha endale kasutajakonto ja hakata rakendust kasutama), kust saaks jälgida menüüd, mis sööke saab süüa, mis veel järgi on, kasutajatel on ka võimalus sööke hinnata (stiilis "meeldib", "ei meeldi" nagu Facebook-is).
Kohvikupidaja Teele soovid uue elektroonse süsteemi kohta:
- elektroonilisest menüüst asju kustutada, isegi siis kui asja peaks olema teoreetiliselt alles, aga tegelikult on asi otsas.
- elektrikatkestuse korral jääb menüü püsima. Ta peab teadma hindu mistahes olukorras.
- menüül näidatakse automaatselt ka ISIC kaardi omanike soodushinnad
- süsteem toetab ka poole portsjoni müümist.
Linnar Viigi soovid/visioonid uue elektroonse süsteemi kohta:
- kõik oleks ka internetist kättesaadav, peale LCD ekraani, mis kajastab menüüd sööklas.
- aluseks facebook, kus siis söögid oleks nagu facebook-i alateemad.
- saab sööke hinnata, kommenteerida (täna oli väga maitsev praad).
- kasutajad saaks vaadata, mis menüüs on (ka järgmisel nädalal) ja mitu portsu veel alles on.
- kasutajad saaksid välja pakkuda menüüsid.
- erinevate söögikohtade kasutajad saaksid omavahel muljeid jagada.
- kuu aja aktiivsemad saavad prii lõuna.
- mingil ajal võib olla "happy hour" (enne sulgemist saab odavamalt).
- piiranguks on see, et toitu broneerida ei saa
Vaba tarkvara kasutamise võimalus
Antud projekti puhul oleks võimalik kasutada PostgreSQL andmebaasi (vt. lisaks http://en.wikipedia.org/wiki/PostgreSQL ) Microsoft SQL Server'i asemel. See võiks anda kasutajale võimaluse valida .NET ning Mono (vt. lisaks http://en.wikipedia.org/wiki/Mono_(software) ) platvormide vahel. Sel viisil oleks kliendil võimalik Microsoft'i platvormi kõrval valida tõenäoliselt soodsam vaba tarkvara platvorm. Andmebaasi lõplik valik pole hetkel veel otsustatud.
Meeskond
- Kristjan Stolin
- Ilmar Telga
- Rauno Rüga
- Lauri Kermas
XML Fail
XML
<?xml version="1.0" encoding="utf-8"?>
<Toidud>
<Toit>
<ToiduNimetus>Viineri kaste</ToiduNimetus>
<ToiduLiik>Praad</ToiduLiik>
<OlemasolevatYhikut>5</OlemasolevatYhikut>
<ToiduKogus>
<Portsjon>
<PortsjoniLiik>Poolportsjon</PortsjoniLiik>
<Myygiaeg>
<Aasta>2011</Aasta>
<Kuu>1</Kuu>
<Paev>9</Paev>
<Tund>15</Tund>
<Minut>07</Minut>
<Sekund>23</Sekund>
</Myygiaeg>
<ToiduHind>
<Eurohind>2.15</Eurohind>
<Soodustus>
<SoodustuseProtsent>5%</SoodustuseProtsent>
<SoodustuseLiik>ISIC kaart</SoodustuseLiik>
</Soodustus>
</ToiduHind>
</Portsjon>
<Portsjon>
<Myygiaeg>
<Aasta>0</Aasta>
<Kuu>0</Kuu>
<Paev>0</Paev>
<Tund>00</Tund>
<Minut>00</Minut>
<Sekund>00</Sekund>
</Myygiaeg>
<PortsjoniLiik>Täisportsjon</PortsjoniLiik>
<ToiduHind>
<Eurohind>2.80</Eurohind>
<Soodustus>
<SoodustuseProtsent>5%</SoodustuseProtsent>
<SoodustuseLiik>ISIC kaart</SoodustuseLiik>
</Soodustus>
</ToiduHind>
</Portsjon>
</ToiduKogus>
<Kommentaarid>
<Kommentaar>
<Saatja>
<SaatjaNimi>Kristjan</SaatjaNimi>
<SaatjaRoll>Tudeng</SaatjaRoll>
</Saatja>
<Sisu>Minu lemmik toit ! Kui algebra tund ei hakkaks, sööks veel 5 portsjonit.</Sisu>
</Kommentaar>
</Kommentaarid>
</Toit>
</Toidud>
XML Schema
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Toidud">
<xs:complexType>
<xs:sequence>
<xs:element name="Toit">
<xs:complexType>
<xs:sequence>
<xs:element name="ToiduNimetus" type="xs:string" />
<xs:element name="ToiduLiik" type="xs:string" />
<xs:element name="OlemasolevatYhikut" type="xs:unsignedByte" />
<xs:element name="ToiduKogus">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Portsjon">
<xs:complexType>
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element name="PortsjoniLiik" type="xs:string" />
<xs:element name="Myygiaeg">
<xs:complexType>
<xs:sequence>
<xs:element name="Aasta" type="xs:unsignedShort" />
<xs:element name="Kuu" type="xs:unsignedByte" />
<xs:element name="Paev" type="xs:unsignedByte" />
<xs:element name="Tund" type="xs:unsignedByte" />
<xs:element name="Minut" type="xs:unsignedByte" />
<xs:element name="Sekund" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ToiduHind">
<xs:complexType>
<xs:sequence>
<xs:element name="Eurohind" type="xs:decimal" />
<xs:element name="Soodustus">
<xs:complexType>
<xs:sequence>
<xs:element name="SoodustuseProtsent" type="xs:string" />
<xs:element name="SoodustuseLiik" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Kommentaarid">
<xs:complexType>
<xs:sequence>
<xs:element name="Kommentaar">
<xs:complexType>
<xs:sequence>
<xs:element name="Saatja">
<xs:complexType>
<xs:sequence>
<xs:element name="SaatjaNimi" type="xs:string" />
<xs:element name="SaatjaRoll" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sisu" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
XSLT
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>Kohvikus müüdavad toidud</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Toidu Nimetus</th>
<th>Toidu liik</th>
<th>Veel alles</th>
<th>Portsjon</th>
<th>Müügiaeg</th>
<th>Hind</th>
<th>Soodustus</th>
<th>Soodustuse liik</th>
<th>Kommentaar(id)</th>
</tr>
<xsl:for-each select="Toidud/Toit">
<tr>
<td><xsl:value-of select="ToiduNimetus"/></td>
<td><xsl:value-of select="ToiduLiik"/></td>
<td><xsl:value-of select="OlemasolevatYhikut"/></td>
<td>
<xsl:for-each select="ToiduKogus/Portsjon">
<table>
<tr>
<td>
<xsl:value-of select="PortsjoniLiik" />
</td>
</tr>
</table>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="ToiduKogus/Portsjon">
<table>
<tr>
<td>
<xsl:value-of select="Myygiaeg/Paev" />/<xsl:value-of select="Myygiaeg/Kuu" />/<xsl:value-of select="Myygiaeg/Aasta" />
<xsl:value-of select="Myygiaeg/Tund" />:<xsl:value-of select="Myygiaeg/Minut" />:<xsl:value-of select="Myygiaeg/Sekund" />
</td>
</tr>
</table>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="ToiduKogus/Portsjon">
<table>
<tr>
<td>
<xsl:value-of select="ToiduHind/Eurohind" />
</td>
</tr>
</table>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="ToiduKogus/Portsjon">
<table>
<tr>
<td>
<xsl:value-of select="ToiduHind/Soodustus/SoodustuseProtsent" />
</td>
</tr>
</table>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="ToiduKogus/Portsjon">
<table>
<tr>
<td>
<xsl:value-of select="ToiduHind/Soodustus/SoodustuseLiik" />
</td>
</tr>
</table>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="Kommentaarid/Kommentaar">
<table>
<tr>
<td>
<xsl:value-of select="Sisu" /> (<xsl:value-of select="Saatja/SaatjaRoll" /> <xsl:value-of select="Saatja/SaatjaNimi" />)
</td>
</tr>
</table>
</xsl:for-each>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
XSLT poolt loodud tulemus on järgnev (lisasin veel kaks toitu XML faili, siin wiki lehel on ruumi kokkuhoiuks vaid 1 toit toitude listis):
Veebiteenus
Klientrakendus I : CMS
Klientrakendus I : Veebirakendus
Meeskonna kokkuvõttev aruanne
Logi
7. Veebruar
- Võtsime õppejõu poolt pakutud ideest kohe kinni, sest me eelistame teha praktilist asja, mida saab kasutada ja mille kasutamist saame ka iga päev jälgida.
- Esimese asjana otsustasime välja uurida mida meie "kliendid" (süsteemi tellijad) meilt ootavad. (Soovid idee punkti all)
- Valminud on lihtne teenusest ja klientidest koosnev süsteemi testmudel.
9.Veebruar
- Esmane versioon XML ja XML Schemast olemas
- Tekkis küsimus kas XSLD faili tuleb käsitsi tekitada või automaatselt.
- Küsimus oli ka kas lahendasime portsjoni asja mõistlikult või oleks mõni teine lähenemine parem olnud.
- Küsimus, kas XML fail on liiga üle pingutatud või sobiva keerukusega
19.Veebruar
- Valmis XSLT fail.