From b85f987088e91b89f3557148e2b1613bf12f77f0 Mon Sep 17 00:00:00 2001 From: HardiReady Date: Sun, 25 Mar 2018 21:06:57 +0200 Subject: [PATCH] add get promotions to apib --- .../{overview => army-management}/army.apib | 0 api/apib/army-management/awardings.apib | 20 +++++++++------ api/apib/army-management/promotions.apib | 25 +++++++++++++++++++ api/apib/data_structures/_promotion.apib | 13 ++++++++++ api/apib/data_structures/index.apib | 2 ++ api/apib/dev-doc.apib | 10 +++++--- api/routes/request.js | 2 +- 7 files changed, 60 insertions(+), 12 deletions(-) rename api/apib/{overview => army-management}/army.apib (100%) create mode 100644 api/apib/army-management/promotions.apib create mode 100644 api/apib/data_structures/_promotion.apib diff --git a/api/apib/overview/army.apib b/api/apib/army-management/army.apib similarity index 100% rename from api/apib/overview/army.apib rename to api/apib/army-management/army.apib diff --git a/api/apib/army-management/awardings.apib b/api/apib/army-management/awardings.apib index 825767e..f469a5d 100644 --- a/api/apib/army-management/awardings.apib +++ b/api/apib/army-management/awardings.apib @@ -1,18 +1,24 @@ -### GET Awardings [GET /awardings{?userId,confirmed}] +### GET Awardings [GET /awardings{?userId,inProgress,fractFilter}] List all awardings + Parameters + userId (string, optional) - specific army member Id to show the awardings for + specific army member Id to show the awardings for - + confirmed (number, optional) - Field to filter by request awarding state + + inProgress (boolean, optional) + true to filter by awarding state 'in progress' + + + Default: false + + + fractFilter (enum[string], optional) + Field to filter by fraction + Members - + 0 - not decided - + 1 - confirmed - + 2 - rejected + + `BLUFOR` + + `OPFOR` + + `GLOBAL` + + Response 200 diff --git a/api/apib/army-management/promotions.apib b/api/apib/army-management/promotions.apib new file mode 100644 index 0000000..09dea0f --- /dev/null +++ b/api/apib/army-management/promotions.apib @@ -0,0 +1,25 @@ +### GET Promotions [GET /promotion{?squadId,inProgress,fractFilter}] + +List all promotion requests + ++ Parameters + + squadId (string, optional) + specific squad Id to show the promotion requests for + + + inProgress (boolean, optional) + true to filter by promotion state 'in progress' + + + Default: false + + + fractFilter (enum[string], optional) + Field to filter by fraction + + + Members + + `BLUFOR` + + `OPFOR` + + `GLOBAL` + + ++ Response 200 + + + Attributes (array[Promotion]) diff --git a/api/apib/data_structures/_promotion.apib b/api/apib/data_structures/_promotion.apib new file mode 100644 index 0000000..0e45c7e --- /dev/null +++ b/api/apib/data_structures/_promotion.apib @@ -0,0 +1,13 @@ +# Promotion (object) +Representation of a promotion request for a army member + +## Properties ++ _id: `5as7d05dcb90ce4da68c4f5f` (string, required) - unique id of the promotion request ++ confirmed: 0 (number, required) - number representing status of the promotion (0 - in progress, 1 - approved, 2 - rejected) ++ newRankLvl: 14 - new rank level that is requested in this promotion ++ oldRankLvl: 10 - old rank level of the user ++ proposer: (Proposer, required) - app user who requested the promotion ++ timestamp: `2018-03-25T18:54:21.609Z` (string, required) - creation timestamp ++ updatedAt: `2018-03-25T18:54:21.609Z` (string, required) - version timestamp ++ userId (User, required) - populated user instance of user the promotion is requested for ++ __v: 0 (number, required) - version number of promotion instance diff --git a/api/apib/data_structures/index.apib b/api/apib/data_structures/index.apib index 2934047..9f2c0ca 100644 --- a/api/apib/data_structures/index.apib +++ b/api/apib/data_structures/index.apib @@ -10,6 +10,8 @@ :[Gists](_decoration.apib) +:[Gists](_promotion.apib) + :[Gists](_squad.apib) :[Gists](_user.apib) diff --git a/api/apib/dev-doc.apib b/api/apib/dev-doc.apib index aeac9a4..dcb048a 100644 --- a/api/apib/dev-doc.apib +++ b/api/apib/dev-doc.apib @@ -18,6 +18,10 @@ FORMAT: 1A # Group Account +# Group Army Overview + +:[Gists](army-management/army.apib) + # Group Awardings :[Gists](army-management/awardings.apib) @@ -30,16 +34,14 @@ FORMAT: 1A # Group Logs -# Group Overview - -:[Gists](overview/army.apib) - # Group Players # Group Ranks # Group Requests +:[Gists](army-management/promotions.apib) + # Group Squads # Group Users diff --git a/api/routes/request.js b/api/routes/request.js index 0dfdfc4..17916b6 100644 --- a/api/routes/request.js +++ b/api/routes/request.js @@ -58,7 +58,7 @@ request.route('/award') request.route('/promotion') .get((req, res, next) => { - // TODO: add SQL authentication + // TODO: add SQL authentication? const squadFilter = req.query.squadId; const fractFilter = req.query.fractFilter; const progressFilter = req.query.inProgress;