SharpRestoVRII: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Hannilo (talk | contribs)
Hannilo (talk | contribs)
Line 78: Line 78:
<source>
<source>
{
{
“Success”: true,
    "Success": <true|false>,
“Message”: null,
    "Message": <info|error>,
“Data”: null
    "Data": {"id": <id>}
}
}
</source>
</source>
Line 95: Line 95:
<source>
<source>
{
{
“Success”: true,
    "Success": <true|false>,
“Message”: null,
    "Message": <info|error>,
“Data”: null
    "Data": {"id": <id>}
}
}
</source>
</source>
Line 144: Line 144:
<source>
<source>
{
{
    success: <true|false>
"Success": <true|false>,
    message: <info>
"Message": <info|error>,
    result: {orderItem object}
"Data": {"id": <id>}
}
}
</source>
</source>
Line 165: Line 165:
<source>
<source>
{
{
     success: <true|false>
     "Success": <true|false>,
     message: <info>
     "Message": <info|error>,
     result: {orderItem object}
     "Data": {"id": <id>}
}
}
</source>
</source>
Line 180: Line 180:
<source>
<source>
{
{
     success: <true|false>
     "Success": <true|false>,
     message: <info>
     "Message": <info|error>,
     result: {orderItem object}
     "Data": {"id": <id>}
}
}
</source>
</source>

Revision as of 17:39, 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.
GET api/bills
Parameetrid:

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

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

Ajalogi

TBD