Meeskond "H2": Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mtoompuu (talk | contribs)
Mtoompuu (talk | contribs)
Line 432: Line 432:
===24. aprill===
===24. aprill===
Allikfail: http://www.p2ike.com/CSharp/KohvikudVeebiteenus.rar
Allikfail: http://www.p2ike.com/CSharp/KohvikudVeebiteenus.rar
Meetod 'k6igiKohvikuteMenyyd' kuvab sellise xml struktuuri: http://www.p2ike.com/CSharp/k6igiKohvikuteMenyyd.xml
Meetod 'k6igiKohvikuteMenyyd' kuvab sellise xml struktuuri: http://www.p2ike.com/CSharp/k6igiKohvikuteMenyyd.xml
Toidud ja joogid sorteeritakse liikide kaupa.
Toidud ja joogid sorteeritakse liikide kaupa.

Revision as of 18:10, 2 May 2011

Kohviku menüüsüsteem

Projekt

Kohvikute (esialgu ainult IT-Kohviku) menüüsüsteem, mis on jälgitav mobiilseadmetelt. Lisaväärtusena võimaldab anda pakutavale hinnanguid, otsuse langetamise hõlbustamiseks kommentaar:(see viimane funktsioon kipub vist "veebirakenduseks" muutuma)
Sihtplatvormid: Windows Mobile, iOS, Android(kui leiame vabatahtlikud testijad)

Taustinfo

Praegune IT-Kohviku menüü on käsitsi täidetav valge tahvel. Projekti eesmärgiks on parendada IT-Kohviku menüüsüsteemi ja teha see veebi kaudu kättesaadavaks, nii, et menüüsse saab lisada ka karniiri valiku. Standardmenüü puhul saab menüüs olla ka illustreeriv foto. Hetkemenüü ning hinnad ja lahtioleku ajad on samuti jälgitavad võrguühendust eviva mobiilseadme ekraanilt, hõlbustades sellega valikute tegemist.

Liikmed

  • Mailis Toompuu
  • Henri Kroosmann
  • Heiki Tamm

Sisu

XML Data

<?xml version="1.0" encoding="utf-8"?>
<menu>
  <product>
    <name>name1</name>
    <type>
      <id>0</id>
      <name>name1</name>
    </type>
    <extras>
      <item>item1</item>
      <item>item2</item>
      <item>item3</item>
    </extras>
    <price>
      <int>0</int>
      <frac>0</frac>
      <discount>discount1</discount>
    </price>
    <vote>
      <pos>0</pos>
      <neg>0</neg>
    </vote>
    <screenshot>screenshot1</screenshot>
  </product>
  <product>
    <name>name2</name>
    <type>
      <id>255</id>
      <name>name2</name>
    </type>
    <extras>
      <item>item4</item>
      <item>item5</item>
      <item>item6</item>
    </extras>
    <price>
      <int>255</int>
      <frac>255</frac>
      <discount>discount2</discount>
    </price>
    <vote>
      <pos>255</pos>
      <neg>255</neg>
    </vote>
    <screenshot>screenshot2</screenshot>
  </product>
  <product>
    <name>name3</name>
    <type>
      <id>1</id>
      <name>name3</name>
    </type>
    <extras>
      <item>item7</item>
      <item>item8</item>
      <item>item9</item>
    </extras>
    <price>
      <int>1</int>
      <frac>1</frac>
      <discount>discount3</discount>
    </price>
    <vote>
      <pos>1</pos>
      <neg>1</neg>
    </vote>
    <screenshot>screenshot3</screenshot>
  </product>
</menu>

XML Schema

Ülevaade Schema'st.

Ning sellele vastav kood.

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="menu">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" name="product">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="name" type="xs:string" />
              <xs:element name="type">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="id" type="xs:unsignedByte" />
                    <xs:element name="name" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="extras">
                <xs:complexType>
                  <xs:sequence minOccurs="0">
                    <xs:element maxOccurs="unbounded" name="item" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="price">
                <xs:complexType>
                  <xs:sequence minOccurs="0">
                    <xs:element name="int" type="xs:unsignedByte" />
                    <xs:element name="frac" type="xs:unsignedByte" />
                    <xs:element minOccurs="0" name="discount" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="vote">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="pos" type="xs:unsignedByte" />
                    <xs:element name="neg" type="xs:unsignedByte" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="screenshot" type="xs:string" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

XML Style

<?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>
      <head>
        <style type="text/css">
          html,body{margin:0;padding:0;font-family:Helvetica,Arial,sans-serif;font-size:14px;line-height:19px;color:#2c2c2c;}
          h1{margin:0;padding:25px 0 0;font-size:22px;line-height:25px;text-align:center;}
          h2{margin:0;padding:5px;font-size:16px;line-height:21px}
          span.discount{padding:0 0 0 5px;color:red;}
          table{margin:20px auto;padding:0;}
          th,td{padding:5px;border:1px solid #2c2c2c;vertical-align:top;text-align:left}
          th{font-weight:bold;background-color:#eee;}
          ul{margin:0;padding:0;list-style-type:none;}
        </style>
      </head>
      <body>
        <h1>Menüü</h1>
        <table width="800">
          <col width="200"/>
          <col width="100"/>
          <col width="*"/>
          <col witdh="*"/>
          <col width="*"/>
          <col width="150"/>
          <tr>
            <th>Nimetus</th>
            <th>Lisandid</th>
            <th>Tüüp</th>
            <th>Hind</th>
            <th>Hinne / Hindajaid</th>
            <th>Pilt</th>
          </tr>

          <xsl:for-each select="menu/product">
            <xsl:sort select="type/id"/>
            <xsl:sort select="name"/>
            <tr>
              <th>
                <xsl:value-of select="name"/>
              </th>

              <xsl:choose>
                <xsl:when test="extras/node()">
                  <td>
                    <ul>
                      <xsl:for-each select="extras/item">
                        <li>
                          <xsl:value-of select="."/>
                        </li>
                      </xsl:for-each>
                    </ul>
                  </td>
                </xsl:when>
                <xsl:otherwise>
                  <td>-</td>
                </xsl:otherwise>
              </xsl:choose>

              <td>
                <xsl:value-of select="type/name"/>
              </td>

              <xsl:choose>
                <xsl:when test="price/node()">
                  <td>
                    €<xsl:value-of select="price/int"/>.<xsl:value-of select="price/frac"/>
                    <xsl:if test="price/discount/text()">
                      <span class="discount">
                        (-<xsl:value-of select="price/discount"/>%)
                      </span>
                    </xsl:if>
                  </td>
                </xsl:when>
                <xsl:otherwise>
                  <td>-</td>
                </xsl:otherwise>
              </xsl:choose>

              <xsl:variable name="p" select="vote/pos"/>
              <xsl:variable name="n" select="vote/neg"/>
              <td>
                <xsl:value-of select="$p - $n"/> / <xsl:value-of select="$p + $n"/>
              </td>

              <xsl:choose>
                <xsl:when test="screenshot/text()">
                  <td>
                    <img src="{screenshot}" alt=""/>
                  </td>
                </xsl:when>
                <xsl:otherwise>
                  <td>
                    <img src="screenshots/default.png" alt="No image"/>
                  </td>
                </xsl:otherwise>
              </xsl:choose>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Sisu ja stiilifaili koostöö http://henri.kroosmann.ee/kool/xml/index.xml

VEEBITEENUSED

8. aprill

Otsustame teha teenused kõikide kohvikute menüüde kohta.

11.-12. aprill

Henri koostab tabelite loogika

13. aprill

Mailis otsustab veebiteenused teha asmx-is [webmethod]-itega

14. aprill

Mailis hakkab veebiteenuseid tegema

17. aprill

Veebiteenused on valmis:

  • AnnaJoogiliikideNimekiri
  • AnnaJoogitabelirida_joogiIDjargi
  • AnnaJookideNimekiri
  • AnnaK6igiKohvikuteAndmeteNimekiri
  • AnnaKohvikuMenyyIDed_kohvikuNimeJargi
  • AnnaKohvikuMenyyRida_kohvikuNimeJargi
  • AnnaKohvikuMenyydeNimekiri_kohvikuNimeJargi
  • AnnaMenyyLiikideNimekiri
  • AnnaMenyydeNimekiri
  • AnnaPromillideNimekiri
  • AnnaToiduliikideNimekiri
  • AnnaToitudeNimekiri
  • AnnaToitutabelirida_toiduIDjargi
  • AnnaYheKohvikuAndmed_kohvikuNimeJargi
  • KustutaJookMenyyst
  • KustutaMenyy
  • KustutaKohvik
  • KustutaToitMenyyst
  • KysiYheKohvikuYheMenyyToitudeIDeed_menyyIDjargi
  • LisaJoogiLiik
  • LisaMenyyLiik
  • LisaPromill
  • LisaToiduLiik
  • SecurityAuthenticateUser
  • TOITJOOKmenyysRida_menyyIDjargi
  • annaArvustusedJoogileMenyys
  • annaArvustusedKohvikule
  • annaArvustusedToiduleMenyys
  • annaJoogiID_nimeJargi
  • annaJoogiKIRJELDUS_IDjargi
  • annaJoogiKOMM_IDjargi
  • annaJoogiLiigiID_joogiIDjargi
  • annaJoogiLiigiID_nimeJargi
  • annaJoogiLiigiNIMI_IDjargi
  • annaJoogiLiigiNIMI_joogiIDjargi
  • annaJoogiNIMI_IDjargi
  • annaKasOnTaimeT_IDjargi
  • annaKasutajaNIMI_Guidjargi
  • annaKohvikuID_nimeJargi
  • annaKohvikuLahtiolekuAjad_kohvikuIDjargi
  • annaKohvikuNIMI_IDjargi
  • annaKohvikuTeated
  • annaLinnaID_LinnaNimeJargi
  • annaLinnaNIMI_LinnaIDjargi
  • annaLinnad_maakonnaNIMEjargi
  • annaMaakonnaID_nimeJargi
  • annaMenyyLiigiID_nimeJargi
  • annaMenyyLiigiNIMI_IDjargi
  • annaPromill_IDjargi
  • annaPromilliID_promilliNrJargi
  • annaPromilliNR_joogiIDjargi
  • annaToiduID_nimeJargi
  • annaToiduKIRJELDUS_IDjargi
  • annaToiduKOMMENTAAR_IDjargi
  • annaToiduLiigiID_nimeJargi
  • annaToiduLiigiNIMETUS_toiduIDjargi
  • annaToiduLiigiNIMI_IDjargi
  • annaToiduNIMI_IDjargi
  • annaYheKohvikuMenyyd_kohvikuNIMEjargi
  • autendiKasutajaParooliJargi
  • k6igiKohvikuteMenyyd
  • lisaArvamusJoogiKohta
  • lisaArvamusKohvikuKohta
  • lisaArvamusToiduKohta
  • lisaJookMenyysse
  • lisaToitMenyysse
  • lisaUusJook
  • lisaUusKohvik
  • lisaUusLahtiolekuAeg
  • lisaUusMenyy
  • lisaUusTeadaanne
  • lisaUusToit
  • nadalapaevaID_paevaNimetuseJargi
  • nadalapaevaNIMETUS_paevaIDjargi
  • Registreeru
  • LogiSisseTavakasutajana
  • LogiSisseKohvikuna

24. aprill

Allikfail: http://www.p2ike.com/CSharp/KohvikudVeebiteenus.rar

Meetod 'k6igiKohvikuteMenyyd' kuvab sellise xml struktuuri: http://www.p2ike.com/CSharp/k6igiKohvikuteMenyyd.xml Toidud ja joogid sorteeritakse liikide kaupa.

Allikfail

http://www.p2ike.com/CSharp/KohvikudVeebiteenus.rar

Meetod *k6igiKohvikuteMenyyd kuvab sellise xml struktuuri:

Toidud ja joogid sorteeritakse liikide kaupa. http://www.p2ike.com/CSharp/k6igiKohvikuteMenyyd.xml

Allikfail

http://www.p2ike.com/CSharp/KohvikudVeebiteenus.rar

Meetod *k6igiKohvikuteMenyyd kuvab sellise xml struktuuri:

Toidud ja joogid sorteeritakse liikide kaupa. http://www.p2ike.com/CSharp/k6igiKohvikuteMenyyd.xml

ANDMEMUDEL

Andmebaasiskeem.
Visuaalne ülevaade tabelitest andmebaasis.