Screaming Magic Gnomes
From ICO wiki
Kodutöö aines "Võrgurakendused II: hajussüsteemide ehitamine" Aastal 2016.
Meeskond
Märt Häkkinen
Siim Osa
Taavi Kivimaa
Idee
Meie idee on luua juuksuri- ja kosmeetikasalongi broneerimissüsteem, kasutades C# keelt. Klientidel on võimalik valida välja protseduur, ning aeg ja teenindaja. Salongil on võimalik näha ja hallata broneeringuid.
XML
<?xml version="1.0" encoding="UTF-8"?>
<Salong nimi="Kristiine">
<Teenused Tyyp="Juuksehooldus">
<Teenus Tyyp="Mees" Id="1">
<Nimi>
<![CDATA[Peosoeng]]>
</Nimi>
<Hind Valuuta="Euro">
22
</Hind>
<Kestvus aeg="Minut">
60
</Kestvus>
</Teenus>
<Teenus Tyyp="Mees" Id="2">
<Nimi>
<![CDATA[Masinlõikus]]>
</Nimi>
<Hind Valuuta="Euro">
8
</Hind>
<Kestvus aeg="Minut">
45
</Kestvus>
</Teenus>
<Teenus Tyyp="Mees" Id="3">
<Nimi>
<![CDATA[Värvimine]]>
</Nimi>
<Hind Valuuta="Euro">
36
</Hind>
<Kestvus aeg="Minut">
90
</Kestvus>
</Teenus>
<Teenus Tyyp="Naine" Id="4">
<Nimi>
<![CDATA[Peosoeng]]>
</Nimi>
<Hind Valuuta="Euro">
25
</Hind>
<Kestvus aeg="Minut">
90
</Kestvus>
</Teenus>
<Teenus Tyyp="Naine" Id="5">
<Nimi>
<![CDATA[Värvimine]]>
</Nimi>
<Hind Valuuta="Euro">
36
</Hind>
<Kestvus aeg="Minut">
90
</Kestvus>
</Teenus>
</Teenused>
<Teenused Tyyp="Kosmeetik">
<Teenus Tyyp="Naine" Id="6">
<Nimi>
<![CDATA[Kollageen leht-mask]]>
</Nimi>
<Hind Valuuta="Euro">
35
</Hind>
<Kestvus aeg="Minut">
90
</Kestvus>
</Teenus>
</Teenused>
<Teenused Tyyp="Maniküür">
<Teenus Tyyp="Mees" Id="6">
<Nimi>
<![CDATA[Maniküür]]>
</Nimi>
<Hind Valuuta="Euro">
12
</Hind>
<Kestvus aeg="Minut">
30
</Kestvus>
</Teenus>
</Teenused>
<Reserveeringud>
<Reserveering Id="1" TeenuseId="2">
<KliendiId>
37
</KliendiId>
<TöötajaId>
1440
</TöötajaId>
<Aeg>
<Algus>
2016-04-17T14:00:00
</Algus>
<Lõpp>
2016-04-17T14:45:00
</Lõpp>
</Aeg>
<Makstud>
true
</Makstud>
</Reserveering>
<Reserveering Id="1" TeenuseId="6">
<KliendiId>
24
</KliendiId>
<TöötajaId>
200
</TöötajaId>
<Aeg>
<Algus>
2016-04-17T14:00:00
</Algus>
<Lõpp>
2002-04-17T15:00:00
</Lõpp>
</Aeg>
<Makstud>
false
</Makstud>
</Reserveering>
</Reserveeringud>
</Salong>
XSD
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Salong">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Teenused">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Teenus">
<xs:complexType>
<xs:sequence>
<xs:element name="Nimi" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="Hind" type="xs:string" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:unsignedByte">
<xs:attribute name="Valuuta" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Kestvus" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:unsignedByte">
<xs:attribute name="aeg" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Tyyp" type="xs:string" use="required" />
<xs:attribute name="Id" type="xs:unsignedByte" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Tyyp" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="Reserveeringud">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Reserveering">
<xs:complexType>
<xs:sequence>
<xs:element name="KliendiId" type="xs:unsignedByte" />
<xs:element name="TöötajaId" type="xs:unsignedShort" />
<xs:element name="Aeg">
<xs:complexType>
<xs:sequence>
<xs:element name="Algus" type="xs:dateTime" />
<xs:element name="Lõpp" type="xs:dateTime" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Makstud" type="xs:boolean" />
</xs:sequence>
<xs:attribute name="Id" type="xs:unsignedInt" use="required" />
<xs:attribute name="TeenuseId" type="xs:unsignedInt" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="nimi" type="xs:string" use="required" />
</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"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<title>Kristiine Salong</title>
</head>
<body>
<h1>Teenused</h1>
<h2>Meestele</h2>
<!--Kirjutame välja meeste ja naiste teenused, hinnad ja ajalise kestvuse eraldi tabelitesse!-->
<ul>
<Table>
<tr>
<th>Nimi</th>
<th>Kestvus</th>
<th>Hind</th>
</tr>
<xsl:for-each select="Salong/Teenused/Teenus">
<xsl:if test="@Tyyp='Mees'">
<tr>
<td>
<xsl:value-of select="./Nimi"/>
</td>
<td>
<xsl:value-of select="./Hind"/>
</td>
<td>
<xsl:value-of select="./Kestvus"/>
</td>
</tr>
</xsl:if>
</xsl:for-each>
</Table>
</ul>
<h2>Naistele</h2>
<ul>
<Table>
<tr>
<th>Nimi</th>
<th>Kestvus</th>
<th>Hind</th>
</tr>
<xsl:for-each select="Salong/Teenused/Teenus">
<xsl:if test="@Tyyp='Naine'">
<tr>
<td>
<xsl:value-of select="./Nimi"/>
</td>
<td>
<xsl:value-of select="./Hind"/>
</td>
<td>
<xsl:value-of select="./Kestvus"/>
</td>
</tr>
</xsl:if>
</xsl:for-each>
</Table>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
</?xml>