SharpRestoVRII

From ICO wiki
Revision as of 21:00, 28 May 2018 by Luksti (talk | contribs) (→‎API)
Jump to navigationJump to search

Meeskond

  • Andres Aava (lahkunud liige)
  • Henri Annilo
  • Jaan Koolmeister
  • Lauri Üksti

Esitused

Lähtekood: CSharpResto

Retsensioonid:

Tehnoloogia

Server: ASP.NET Core 2.0
Klient: WPF
DB: SQL Server (Azure)

Ülevaade

Tegemist on SharpResto jätkuprojektiga.

Eesmärk on luua restoranihalduse teenus

  • kasutaja saab pärida, lisada ja muuta menüü komponente
  • kasutaja saab pärida, lisada ja muuta esitatud tellimusi
  • kasutaja saab pärida statistikat tellimuste kohta
  • eri teenuste ligipääs on piiratav kasutaja- ning grupipõhiselt
  • staatiline informatsioon hoitakse serveri vahemälus

API

Menüü teenus
GET api/menu
Tagastab kõik menüü artiklid menüü vaate jaoks
Parameetrid:

id (valikuline)

Väljund:

{
"MenuItem":
[{
	"Id": 3,
	"Name": "Pelmeenid",
	"Description": "Venepärased isetehtud pelmeenid",
	"Available": 1,
	"Spice": 1,
	"ItemType": [{
    	    "id": 4,
    	    "Type": "Starter"
	}],
	"ItemPrices": [{
    	    "Id": 8,
    	    "Price": 6.5,
    	    "Active": 1,
    	    "StartDate": "2018-01-05 14:03:07",
    	    "EndDate": null
	}],
	"ItemIngredients": [{
    	    "id": 2,
    	    "Name": "Jahu"
	},
	{
    	    "id": 5,
    	    "Name": "Hakkliha"
	}]
},
{ //menuitem 2 },
{ //menuitem 3 }
]}

POST api/menu/
Loob uue menuItem’i
Body:

{ 
//new MenuItem object
}

Tagastab 201 või 400

PUT api/menu/{id}
Muudab olemasolevat menuItem’it
Body:

{ 
// changed MenuItem object
}

Tagastab 200, 400 või 404

Tellimuste teenus
GET api/orders
Tagastab kõik tellimused
Parameetrid:

id (valikuline)

Väljund:

{
    [{order1 object}, {order2 object}]
}

POST api/orders
Loob uue tellimuse
Body:

{
    <uus order objekt>  
}

Tagastab 201 või 400

PUT api/orders/{id}
Muudab tellimust (üldine)
Body:

{
    <muudetud order objekt>  
}

Tagastab 200, 400, või 404 </source>

PUT api/orders/setStatus/{id}
Muudab vaid tellimuse staatust
Body:

{status: <status>}

Tagastab 200, 400 või 404

Arvete teenus
Lõpetatud/serveeritud tellimuste salvestamine arveteks.
Hilisem arvete küsimine.

POST api/bills Arvete sisestamine.

Body:

{ 
   “Id”: int,
   “ItemList”: string,
   “Sum”: decimal,
   “Status”: varchar
   “Date”: datetime,
   “Waiter”: string
}

Väljund:

{
    success: <true|false>
    message: <info>
    result: {orderItem object}
}

GET api/bills
Parameetrid:

status (valikuline)
table (valikuline)
startDate (valikuline)
endDate (valikuline)
waiter (valikuline)

Väljund:

{
   [{bill1 object}, { bill2 object}]
}

GET api/bills/{id}
Tagastab ühe arve id alusel.

Väljund:

{
   “Id”: int,
   “ItemList”: string,
   “Sum”: decimal,
   “Status”: varchar
   “Date”: datetime,
   “Waiter”: string
}

Ajalogi

TBD