KK without K: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Kpaaro (talk | contribs)
No edit summary
Kpaaro (talk | contribs)
 
(19 intermediate revisions by 2 users not shown)
Line 2: Line 2:
* Kaur Pääro
* Kaur Pääro
* Kaspar Urban
* 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===
*[https://www.dropbox.com/s/osnrnpjfll15ogc/VR2.rar KlientRakendus ja API]
Tegemist on siis LanParty haldamis rakendusega, klient rakendus on realiseeritud WPF-is ja teenus on REST teenus, tehtud MVC4 WebAPIga.


==API dokumentatsioon==
==API dokumentatsioon==
Line 7: Line 16:
===Contest===
===Contest===


GET api/Contest
<li>GET api/Contest
  <b> GetContests()</b>  võimaldab pärida kõik võistlused(ehk Contests), väljastab listi Contest tüüpi objektitest.
  <li><b> GetContests()</b>  võimaldab pärida kõik võistlused(ehk Contests), väljastab listi Contest tüüpi objektitest.


GET api/Contest/id
<li>GET api/Contest/id
  <b>GetContests(id) </b> võimaldab pärida võistlsute seast ühte võistlust id alusel, väljastab Contest tüüpi objekti .
  <li><b>GetContests(id) </b> võimaldab pärida võistlsute seast ühte võistlust id alusel, väljastab Contest tüüpi objekti .


PUT api/Contest/5
<li>PUT api/Contest/5
  <b>PutContest(int id, Contest contest)</b> võimaldab uuendada ühte võistlust id alusel.
  <li><b>PutContest(int id, Contest contest)</b> võimaldab uuendada ühte võistlust id alusel.


POST api/Contest
<li>POST api/Contest
  <b>PostContest(Contest contest)</b> võimaldab lisada uut võitlust.
  <li><b>PostContest(Contest contest)</b> võimaldab lisada uut võitlust.
      
      
DELETE api/Contest/5
<li>DELETE api/Contest/5
  <b>DeleteContest(int id)</b> võimaldab kustutada id alusel kindlat võistlust.
  <li><b>DeleteContest(int id)</b> võimaldab kustutada id alusel kindlat võistlust.
          
          
          
          
post api/contest/5
<li>post api/contest/5
  <b>AddTeam(int id,TeamInContest teamInContest)</b> võimaldab lisada võistlusesse kindlat tiimi.  
  <li><b>AddTeam(int id,TeamInContest teamInContest)</b> võimaldab lisada võistlusesse kindlat tiimi.  
        
        


===GameGenre===
===GameGenre===


GET api/GameGenre
<li>GET api/GameGenre
  <b>GetGameGenres()</b> võimaldab pärida kõik GameGenred, väljastab Listi GameGenre tüüpi objektitest.  
  <li><b>GetGameGenres()</b> võimaldab pärida kõik GameGenred, väljastab Listi GameGenre tüüpi objektitest.  
      
      
GET api/GameGenre/5
<li>GET api/GameGenre/5
  <b>GameGenre GetGameGenre(int id)</b> võimaldab pärida kindla GameGenre tüüpi olemi, väljastab Gamegenre tüüpi objekti.  
  <li><b>GameGenre GetGameGenre(int id)</b> võimaldab pärida kindla GameGenre tüüpi olemi, väljastab Gamegenre tüüpi objekti.  
        
        
PUT api/GameGenre/5
<li>PUT api/GameGenre/5
<b>PutGameGenre(int id, GameGenre gamegenre)</b> võimaldab uuendada kindalt GameGenret id alusel.       
<li> <b>PutGameGenre(int id, GameGenre gamegenre)</b> võimaldab uuendada kindalt GameGenret id alusel.       


POST api/GameGenre
<li>POST api/GameGenre
  <b>PostGameGenre(GameGenre gamegenre) </b>võimaldab lisada kindla Gamegenre.
  <li><b>PostGameGenre(GameGenre gamegenre) </b>võimaldab lisada kindla Gamegenre.
              
              
DELETE api/GameGenre/5
DELETE api/GameGenre/5
Line 45: Line 54:
===Games===
===Games===
            
            
GET api/Games
<li>GET api/Games
  <b>GetGames()</b> võimaldab pärida kõik Mängud, Välajastab Listi kõikidest Games tüüpi objektitest.
  <li><b>GetGames()</b> võimaldab pärida kõik Mängud, Välajastab Listi kõikidest Games tüüpi objektitest.


GET api/Games/5
<li>GET api/Games/5
  <b> GetGame(int id)</b> võimaldab pärida kindlat  Mängu, väljast Games tööpi objekti.       
  <li><b> GetGame(int id)</b> võimaldab pärida kindlat  Mängu, väljast Games tööpi objekti.       


PUT api/Games/5
<li>PUT api/Games/5
  <b> PutGame(int id, Game game)</b> võimaldab uuendada kindlat Mängu id alusel.
  <li><b> PutGame(int id, Game game)</b> võimaldab uuendada kindlat Mängu id alusel.


POST api/Games
<li>POST api/Games
  <b>PostGame(Game game)</b> võimaldab lisada uue Mängu.  
  <li><b>PostGame(Game game)</b> võimaldab lisada uue Mängu.  
        
        
===Login===  
===Login===  


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


===Team===   
===Team===   
GET api/Default1
<li>GET api/Default1
  <b>GetTeams()</b> võimaldab pärida kõik Tiimid, väljatab listi Team tüüpi objektidesttest
  <li><b>GetTeams()</b> võimaldab pärida kõik Tiimid, väljatab listi Team tüüpi objektidesttest
        
        
GET api/Default1/5
GET api/Default1/5
  <b>GetTeam(int id)</b> võimaldab pärida kindlat Tiimi id alusel, väljatab Team tüüpi objekti
  <li><b>GetTeam(int id)</b> võimaldab pärida kindlat Tiimi id alusel, väljatab Team tüüpi objekti
        
        


PUT api/Team/5
<li>PUT api/Team/5
<b>PutTeam(int id, Team team)<b> võimaldab uuendada tiimi id alusel   
<li> <b>PutTeam(int id, Team team)<b> võimaldab uuendada tiimi id alusel   
        
        
POST api/team
<li>POST api/team
   <b>PostTeam(Team team)<b> võimaldab lisada uue tiimi.
   <li><b>PostTeam(Team team)<b> võimaldab lisada uue tiimi.
      
      
DELETE api/Team/5
<li>DELETE api/Team/5
  <b>DeleteTeam(int id)</b> võimaldab kustutada kindlat Tiimi id alusel.
  <b>DeleteTeam(int id)</b> võimaldab kustutada kindlat Tiimi id alusel.


===USER===
===USER===


GET api/User
<li>GET api/User
  <b>GetUsers()</b> võimaldab pärida kõik kasutjad, Väljastab Listi User tööpi objektidest.
  <li><b>GetUsers()</b> võimaldab pärida kõik kasutjad, Väljastab Listi User tööpi objektidest.


GET api/User/5 võimaldab pärida kindlat Kasutjat id alusel, Väljastab User tüüpi objekti.
<li>GET api/User/5  
  <b>public User GetUser(int id)</b>
  <li><b>User GetUser(int id)</b> võimaldab pärida kindlat Kasutjat id alusel, Väljastab User tüüpi objekti.       
       
<li>PUT api/User/5
PUT api/User/5
<li> <b>PutUser(int id, User user)</b>võimaldab uuendada kindlat kasutajat id alusel.
<b>PutUser(int id, User user)</b>võimaldab uuendada kindlat kasutajat id alusel.
      
      
POST api/User
<li>POST api/User
  <b>PostUser(User user)</b>võimaldab lisada uue Kasutja.
  <li><b>PostUser(User user)</b>võimaldab lisada uue Kasutja.
        
        
DELETE api/User/5
<li>DELETE api/User/5
  <b>DeleteUser(int id)</b> võimaldab kustutada kindlat kasutja id alusel.
  <li><b>DeleteUser(int id)</b> võimaldab kustutada kindlat kasutja id alusel.
 
POST api/user/id
<b>AssignRole(int id, string role)</b> lubab määrata kindlale kasutjale kindla rolli.
   
   
 


==XML==
==XML==
Line 251: Line 257:
</xsl:stylesheet>
</xsl:stylesheet>
</pre>
</pre>
==Retsensioonid==
<li>1.XML ülesande retsensioon Tiim AFFA II kohta [https://wiki.itcollege.ee/index.php/Talk:AFFA_II]
<li>2.XML ülesande retsensioon Tiim RM kohta [https://wiki.itcollege.ee/index.php/Talk:RM#XML_Retsensioon]
<li>3.Klientrakenduse ja Api retsensioon Tiim Ulgurmutid kohta [https://wiki.itcollege.ee/index.php/Talk:Ulgurmutid#Teenuse_ning_klientrakenduse_retsensioon]
<li>4.Klientrakenduse ja Api retsensioon Tiim Ulgurmutid kohta [https://wiki.itcollege.ee/index.php/Talk:V#Retsensioon_Tiim_V-le_KK_without_K_poolt_Teenuse_ja_Klientrakenduse_kohta_08.06.2013]
==Logi==
<li>Meeskonna moodustamine 15.03.2013
<li> XML failide Moodustmine 29.03.2013
<li> Äriloogika moodustamine 22 - 23.04.2013
<li> Repode loomine ja DI 26-27.04.2013
<li> Meeskond vabanes ASP.NET aine projektist(90+% valmis) 19.05.2013
<li> Teenuse tüübi valik 20-22.05.2013
<li> Teenuse koostamise algus MVCApi baasil
<li> Teenusesse repode lisamise lõpp 25.05.2013
<li> Non stop klientrakenduse arendamine ja API lihvimine AlGUS 26.05.2013
<li> Dokumentatsiooni lisamine API kohta wikisse 27.05.2013
<li> Non staaap  klientrakenduse arendamine ja API lihvimine LÕPP 28.05.2013
<li> Retsentsioon tiim AFFA II XML-i kohta 29.05.2013
<li> Retsensioon tiim RM XML ülesande kohta 04.06.2013
<li> Retsensioon tiim Ulgurmutid Teenuse ja Klientrakenduse ülesande kohta 04.06.2013
<li> Retsensioon tiim V Teenuse ja Klientrakenduse ülesande kohta 08.06.2013

Latest revision as of 00:04, 9 June 2013

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