KK without K

From ICO wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Tiimi liikmed

  • Kaur Pääro
  • Kaspar Urban

Teenus ja klientrakendus

Selleks et kasutada klient rakendust tuleb, kõigepealt allalaadida rakendus ja VS-si käivitada, vahel tuleb ka käivitada WebApi projekt eraldi.

Teenuse osa on MvcApplication3. Rakenduse osa on LanWPF.

Kirjeldus

Tegemist on siis LanParty haldamis rakendusega, klient rakendus on realiseeritud WPF-is ja teenus on REST teenus, tehtud MVC4 WebAPIga.

API dokumentatsioon

Contest

  • GET api/Contest
  • GetContests() võimaldab pärida kõik võistlused(ehk Contests), väljastab listi Contest tüüpi objektitest.
  • GET api/Contest/id
  • GetContests(id) võimaldab pärida võistlsute seast ühte võistlust id alusel, väljastab Contest tüüpi objekti .
  • PUT api/Contest/5
  • PutContest(int id, Contest contest) võimaldab uuendada ühte võistlust id alusel.
  • POST api/Contest
  • PostContest(Contest contest) võimaldab lisada uut võitlust.
  • DELETE api/Contest/5
  • DeleteContest(int id) võimaldab kustutada id alusel kindlat võistlust.
  • post api/contest/5
  • AddTeam(int id,TeamInContest teamInContest) võimaldab lisada võistlusesse kindlat tiimi.

    GameGenre

  • GET api/GameGenre
  • GetGameGenres() võimaldab pärida kõik GameGenred, väljastab Listi GameGenre tüüpi objektitest.
  • GET api/GameGenre/5
  • GameGenre GetGameGenre(int id) võimaldab pärida kindla GameGenre tüüpi olemi, väljastab Gamegenre tüüpi objekti.
  • PUT api/GameGenre/5
  • PutGameGenre(int id, GameGenre gamegenre) võimaldab uuendada kindalt GameGenret id alusel.
  • POST api/GameGenre
  • PostGameGenre(GameGenre gamegenre) võimaldab lisada kindla Gamegenre. DELETE api/GameGenre/5 DeleteGameGenre(int id) võimaldab kustutada kindla GameGenre id alusel.

    Games

  • GET api/Games
  • GetGames() võimaldab pärida kõik Mängud, Välajastab Listi kõikidest Games tüüpi objektitest.
  • GET api/Games/5
  • GetGame(int id) võimaldab pärida kindlat Mängu, väljast Games tööpi objekti.
  • PUT api/Games/5
  • PutGame(int id, Game game) võimaldab uuendada kindlat Mängu id alusel.
  • POST api/Games
  • PostGame(Game game) võimaldab lisada uue Mängu.

    Login

    POST api/Login

  • PostLogin(LoginVM model)võimaldab sisse logida LoginVM mudeli alusel, LoginVM koosneb UserName ja Password väljast,Välajastab User tüüpi objekti.
  • PUT api/user/id
  • AssignRole(int id, string role) lubab määrata kindlale kasutjale kindla rolli.
  • PUT api/user/id
  • GetAllRoles lubab pärida kõik rollid.

    Team

  • GET api/Default1
  • GetTeams() võimaldab pärida kõik Tiimid, väljatab listi Team tüüpi objektidesttest GET api/Default1/5
  • GetTeam(int id) võimaldab pärida kindlat Tiimi id alusel, väljatab Team tüüpi objekti
  • PUT api/Team/5
  • PutTeam(int id, Team team) võimaldab uuendada tiimi id alusel
  • POST api/team
  • PostTeam(Team team) võimaldab lisada uue tiimi.
  • DELETE api/Team/5 DeleteTeam(int id) võimaldab kustutada kindlat Tiimi id alusel.

    USER

  • GET api/User
  • GetUsers() võimaldab pärida kõik kasutjad, Väljastab Listi User tööpi objektidest.
  • GET api/User/5
  • User GetUser(int id) võimaldab pärida kindlat Kasutjat id alusel, Väljastab User tüüpi objekti.
  • PUT api/User/5
  • PutUser(int id, User user)võimaldab uuendada kindlat kasutajat id alusel.
  • POST api/User
  • PostUser(User user)võimaldab lisada uue Kasutja.
  • DELETE api/User/5
  • DeleteUser(int id) võimaldab kustutada kindlat kasutja id alusel.

    XML

    XML failis hoitakse individuaalsete toidukavade andmeid.

    XML

    <?xml version="1.0" encoding="utf-8"?>
    <!-- Kuu sisse on m2rgitud kuu id, nimi ning aastaarv. -->
    <Kuu id="1" nimi="jaanuar" aasta ="2013">
      <!-- N2dala sisse on m2rgitud id j2rgi mitmendat n2dalat inimene toidukava kasutab. -->
      <nadal id= "1">
        <!-- N2dalap2eva sisse on m2rgitud p2eva nimi, id ja kuup2ev.-->
        <nadalaPaev nimi="esmaspaev" id="1" kuupaev ="07.01.2013">
          <!-- Toidukorra sisse on m2rgitud toidukorra nimetus ning id -->
          <toiduKord nimetus="hommikusook" id ="1">
            <!-- Toiduaine sisse on m2rgitud kogus, yhik ning nimi -->
            <toiduAined nimetus="Õun" kogus ="1" Uhik ="tk"/>
            <toiduAined nimetus="Kaerahelbepuder" kogus ="100" Uhik ="g" />
            <toiduAined nimetus="Piim" kogus ="250" Uhik ="ml" />
            <toiduAined nimetus="Sai" kogus ="1" Uhik ="viil" />
          </toiduKord>
          <toiduKord nimetus="lounasook" id="2">
            <toiduAined nimetus="Sealiha" kogus ="100" Uhik ="g" ></toiduAined>
            <toiduAined nimetus="Kartul" kogus ="100" Uhik ="g" ></toiduAined>
            <toiduAined nimetus="Kurgisalat" kogus ="50" Uhik ="g" ></toiduAined>
            <toiduAined nimetus="Õlu" kogus ="500" Uhik ="ml" ></toiduAined>
          </toiduKord>
          <toiduKord nimetus="ohtusook" id="3">
              <toiduAined nimetus="Caesari salat" kogus ="100" Uhik ="g" ></toiduAined>
              <toiduAined nimetus="Leib" kogus ="2" Uhik ="viil" ></toiduAined>
              <toiduAined nimetus="Caesari kaste" kogus ="30" Uhik ="g" ></toiduAined>
              <toiduAined nimetus="Punane vein" kogus ="300" Uhik ="ml" ></toiduAined>
           </toiduKord>
        </nadalaPaev>
        <nadalaPaev nimi="teisipaev" kuupaev ="08.01.2013" id="2">
            <toiduKord nimetus="hommikusook" id="4">
              <toiduAined nimetus="Banaan" kogus ="1" Uhik ="tk" ></toiduAined>
              <toiduAined nimetus="Maisihelbed" kogus ="100" Uhik ="g" ></toiduAined>
              <toiduAined nimetus="Piim" kogus ="250" Uhik ="ml" ></toiduAined>
            </toiduKord>
            <toiduKord nimetus="lounasook" id="5">
              <toiduAined nimetus="Kanafilee" kogus ="100" Uhik ="g" ></toiduAined>
              <toiduAined nimetus="Riis" kogus ="100" Uhik ="g" ></toiduAined>
              <toiduAined nimetus="Terav Chili kaste" kogus ="50" Uhik ="g" ></toiduAined>
              <toiduAined nimetus="Keefir" kogus ="500" Uhik ="ml" ></toiduAined>
            </toiduKord>
            <toiduKord nimetus="ohtusook" id="6">
               <toiduAined nimetus="Pelmeenid" kogus ="170" Uhik ="g" ></toiduAined>
               <toiduAined nimetus="Leib" kogus ="2" Uhik ="viil" ></toiduAined>
               <toiduAined nimetus="Hapukoor" kogus ="100" Uhik ="g" ></toiduAined>
               <toiduAined nimetus="Viin" kogus ="8" Uhik ="cl" ></toiduAined>
             </toiduKord>
          </nadalaPaev>
        </nadal>
    </Kuu>
    

    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="Kuu">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="nadal">
              <xs:complexType>
                <xs:sequence>
                  <xs:element maxOccurs="unbounded" name="nadalaPaev">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="toiduKord">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element maxOccurs="unbounded" name="toiduAined">
                                <xs:complexType>
                                  <xs:attribute name="nimetus" type="xs:string" use="required" />
                                  <xs:attribute name="kogus" type="xs:unsignedShort" use="required" />
                                  <xs:attribute name="Uhik" type="xs:string" use="required" />
                                </xs:complexType>
                              </xs:element>
                            </xs:sequence>
                            <xs:attribute name="nimetus" type="xs:string" use="required" />
                            <xs:attribute name="id" type="xs:unsignedByte" use="required" />
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                      <xs:attribute name="nimi" type="xs:string" use="required" />
                      <xs:attribute name="id" type="xs:unsignedByte" use="required" />
                      <xs:attribute name="kuupaev" type="xs:string" use="required" />
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:attribute name="id" type="xs:unsignedByte" use="required" />
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="id" type="xs:unsignedByte" use="required" />
          <xs:attribute name="nimi" type="xs:string" use="required" />
          <xs:attribute name="aasta" type="xs:unsignedShort" use="required" />
        </xs:complexType>
      </xs:element>
    </xs:schema>
    

    XSLT

    Allolev kood kuvab kõikide nädalapäevade toidukava.

    <?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>
          <body>
            Kõik p2evad
            <ul>
              <xsl:for-each select="/Kuu/nadal/nadalaPaev">
                <li>
                  <xsl:value-of select="@nimi"/>
                  <xsl:text> </xsl:text>
                  <xsl:value-of select="@kuupaev"/>
                  <ul>
                    <xsl:for-each select="toiduKord">
                      <li>
                        <xsl:value-of select="@nimetus"/>
                      </li>
                      <ul>
                        
                        <xsl:for-each  select="toiduAined">
                          <li>
                            <xsl:value-of select="@nimetus"/>
                            <xsl:text> </xsl:text>
                            <xsl:value-of select="@kogus"/>
                            <xsl:text> </xsl:text>
                            <xsl:value-of select="@Uhik"/>
                            </li>
                        </xsl:for-each>
                        
                      </ul>
                    </xsl:for-each>
                  </ul>
                </li>
              </xsl:for-each>
            </ul>
          </body>
        </html>
      </xsl:template>
    </xsl:stylesheet>
    

    Retsensioonid

  • 1.XML ülesande retsensioon Tiim AFFA II kohta [1]
  • 2.XML ülesande retsensioon Tiim RM kohta [2]
  • 3.Klientrakenduse ja Api retsensioon Tiim Ulgurmutid kohta [3]
  • 4.Klientrakenduse ja Api retsensioon Tiim Ulgurmutid kohta [4]

    Logi

  • Meeskonna moodustamine 15.03.2013
  • XML failide Moodustmine 29.03.2013
  • Äriloogika moodustamine 22 - 23.04.2013
  • Repode loomine ja DI 26-27.04.2013
  • Meeskond vabanes ASP.NET aine projektist(90+% valmis) 19.05.2013
  • Teenuse tüübi valik 20-22.05.2013
  • Teenuse koostamise algus MVCApi baasil
  • Teenusesse repode lisamise lõpp 25.05.2013
  • Non stop klientrakenduse arendamine ja API lihvimine AlGUS 26.05.2013
  • Dokumentatsiooni lisamine API kohta wikisse 27.05.2013
  • Non staaap klientrakenduse arendamine ja API lihvimine LÕPP 28.05.2013
  • Retsentsioon tiim AFFA II XML-i kohta 29.05.2013
  • Retsensioon tiim RM XML ülesande kohta 04.06.2013
  • Retsensioon tiim Ulgurmutid Teenuse ja Klientrakenduse ülesande kohta 04.06.2013
  • Retsensioon tiim V Teenuse ja Klientrakenduse ülesande kohta 08.06.2013