SharpRestoVRII: Difference between revisions
| No edit summary | No edit summary | ||
| Line 192: | Line 192: | ||
| '''''POST api/bills''''' | '''''POST api/bills''''' | ||
| Arvete sisestamine. | Arvete sisestamine. | ||
| Body: | Body: | ||
| <source> | <source> | ||
| {   | {   | ||
|     “Id”: int, |     “Id”: int, | ||
| Line 206: | Line 206: | ||
| Väljund: | Väljund: | ||
| <source> | |||
| { | { | ||
|      success: <true|false> |      success: <true|false> | ||
| Line 211: | Line 212: | ||
|      result: {orderItem object} |      result: {orderItem object} | ||
| } | } | ||
| </source> | |||
| '''''GET api/bills'''''<br> | '''''GET api/bills'''''<br> | ||
| Line 220: | Line 222: | ||
| endDate (valikuline) | endDate (valikuline) | ||
| waiter (valikuline) | waiter (valikuline) | ||
| </source> | |||
| Väljund: | |||
| <source> | |||
| { | |||
|    [{bill1 object}, { bill2 object}] | |||
| } | |||
| </source> | </source> | ||
| '''''GET api/bills/{id}'''''<br> | '''''GET api/bills/{id}'''''<br> | ||
| Tagastab ühe arve id alusel. | Tagastab ühe arve id alusel. | ||
| Väljund: | |||
| <source> | |||
| { | |||
|    “Id”: int, | |||
|    “ItemList”: string, | |||
|    “Sum”: decimal, | |||
|    “Status”: varchar | |||
|    “Date”: datetime, | |||
|    “Waiter”: string | |||
| } | |||
| </source> | |||
| == Ajalogi == | == Ajalogi == | ||
| TBD | TBD | ||
Revision as of 18:07, 1 April 2018
Meeskond
- Andres Aava
- Henri Annilo
- Jaan Koolmeister
- Lauri Üksti
Lähtekood
TBD
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 menuitemid 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
}Väljund:
{
    "Success": <true|false>,
    "Message": <info|error>,
    "Data": {"id": <id>}
}PUT api/menu/{id}
Muudab olemasolevat menuItem’it
Body:
{ 
// changed MenuItem object
}Väljund:
{
    "Success": <true|false>,
    "Message": <info|error>,
    "Data": {"id": <id>}
}Tellimuste teenus
GET api/orders
Tagastab kõik tellimused, vaikimisi filter on otsustamisel
Parameetrid:
status (valikuline)
table (valikuline)
startDate (valikuline)
endDate (valikuline)Väljund:
{
    [{order1 object}, {order2 object}]
}GET api/orders/{id}
Tagastab valitud tellimuse
Väljund:
{
    Id: <id>,
    MenuItem: {menuItem object},
    Status: <new|ready|served|complete>
    Table: <table>
}POST api/orders
Loob uue tellimuse
Body: 
{
    menuItemId: <menuitem_id>,
    tableId: <table_id>,
    course: <?>,
    clientComment: <comment>  
}Väljund:
{
"Success": <true|false>,
"Message": <info|error>,
"Data": {"id": <id>}
}PUT api/orders/{id}
Muudab tellimust (üldine)
Body:
{
    menuItemId: <menuitem_id>,
    tableId: <table_id>,
    course: <?>,
    status: <status>,
    clientComment: <comment>  
}Väljund:
{
    "Success": <true|false>,
    "Message": <info|error>,
    "Data": {"id": <id>}
}PUT api/orders/setStatus/{id}
Muudab vaid tellimuse staatust
Body:
{status: <status>}Väljund:
{
    "Success": <true|false>,
    "Message": <info|error>,
    "Data": {"id": <id>}
}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