From a3270b9b5ef58dad686059f1abbb683a7cdc80b8 Mon Sep 17 00:00:00 2001 From: jboinembalome Date: Fri, 27 Nov 2020 09:54:09 +0100 Subject: [PATCH] Debut des MAJ des urls --- openapi.yaml | 4 +++- parameters/_index.yaml | 10 ++++++++-- parameters/query/asc.yaml | 4 ++-- parameters/query/dateDebut.yaml | 8 ++++++++ parameters/query/dateFin.yaml | 8 ++++++++ parameters/query/fonctions.yaml | 15 --------------- parameters/query/idBUs.yaml | 1 + parameters/query/idBu.yaml | 1 + parameters/query/numPage.yaml | 4 ++-- parameters/query/parPage.yaml | 5 ++++- parameters/query/roles.yaml | 9 +++++++++ parameters/query/texte.yaml | 4 +++- parameters/query/tri.yaml | 4 +++- paths/collaborateur/collaborateurcount.yaml | 17 +++++++++++++++++ paths/collaborateur/collaborateurs.yaml | 17 ++++++++++++----- paths/demandedelegation/demandesDelegation.yaml | 2 +- paths/referents/referents.yaml | 2 +- responses/_index.yaml | 6 ++++++ .../collaborateur/getcountcollaborateur.yaml | 7 +++++++ responses/erreur/internalServerError.yaml | 5 +++++ responses/erreur/unauthorized.yaml | 5 +++++ schemas/collaborateur/businessunit.yaml | 2 +- schemas/ep/engagement.yaml | 2 +- 23 files changed, 108 insertions(+), 34 deletions(-) create mode 100644 parameters/query/dateDebut.yaml create mode 100644 parameters/query/dateFin.yaml delete mode 100644 parameters/query/fonctions.yaml create mode 100644 parameters/query/roles.yaml create mode 100644 paths/collaborateur/collaborateurcount.yaml create mode 100644 responses/collaborateur/getcountcollaborateur.yaml create mode 100644 responses/erreur/internalServerError.yaml create mode 100644 responses/erreur/unauthorized.yaml diff --git a/openapi.yaml b/openapi.yaml index 5cbc816..eab03b5 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -13,8 +13,10 @@ servers: paths: #Collaborateur - /collaborateurs: + /collaborateur: $ref: ./paths/collaborateur/collaborateurs.yaml + /collaborateur/count: + $ref: ./paths/collaborateur/collaborateurcount.yaml /collaborateurs/{idCollaborateur}: $ref: ./paths/collaborateur/collaborateurById.yaml /collaborateurs/mail/{mail}: diff --git a/parameters/_index.yaml b/parameters/_index.yaml index 118accb..47ba79d 100644 --- a/parameters/_index.yaml +++ b/parameters/_index.yaml @@ -51,14 +51,20 @@ actionEP: asc: $ref: ./query/asc.yaml +dateDebut: + $ref: ./query/dateDebut.yaml + +dateFin: + $ref: ./query/dateFin.yaml + etatsEngagements: $ref: ./query/etatsEngagement.yaml etatsDemande: $ref: ./query/etatsDemande.yaml -fonctions: - $ref: ./query/fonctions.yaml +roles: + $ref: ./query/roles.yaml idAgence: $ref: ./query/idAgence.yaml diff --git a/parameters/query/asc.yaml b/parameters/query/asc.yaml index b56cce9..a2cfa78 100644 --- a/parameters/query/asc.yaml +++ b/parameters/query/asc.yaml @@ -3,5 +3,5 @@ name: asc schema: type: boolean default: true -description: Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) -required: true \ No newline at end of file +description: Indique si les données sont récupérées dans l'ordre croissant ou non +required: false \ No newline at end of file diff --git a/parameters/query/dateDebut.yaml b/parameters/query/dateDebut.yaml new file mode 100644 index 0000000..2b443d5 --- /dev/null +++ b/parameters/query/dateDebut.yaml @@ -0,0 +1,8 @@ +in: query +name: dateDebut +schema: + type: string + format: date-time + default: null +description: Date à partir de laquelle les données sont récupérées, selon la date d'arrivée du collaborateur +required: false \ No newline at end of file diff --git a/parameters/query/dateFin.yaml b/parameters/query/dateFin.yaml new file mode 100644 index 0000000..8fabc79 --- /dev/null +++ b/parameters/query/dateFin.yaml @@ -0,0 +1,8 @@ +in: query +name: dateFin +schema: + type: string + format: date-time + default: null +description: Date jusqu'à laquelle les données sont récupérées, selon la date d'arrivée du collaborateur +required: false \ No newline at end of file diff --git a/parameters/query/fonctions.yaml b/parameters/query/fonctions.yaml deleted file mode 100644 index 2f70f3e..0000000 --- a/parameters/query/fonctions.yaml +++ /dev/null @@ -1,15 +0,0 @@ -in: query -name: fonctions -schema: - type: array - items: - type: string - enum: - - assistants - - cp - - commerciaux - - deliveries - - referent - - techlead -required: false -description: Liste des fonctions des collaborateurs que l'on veut récupérer \ No newline at end of file diff --git a/parameters/query/idBUs.yaml b/parameters/query/idBUs.yaml index 488e7fd..800c7e7 100644 --- a/parameters/query/idBUs.yaml +++ b/parameters/query/idBUs.yaml @@ -5,5 +5,6 @@ schema: items: type: integer format: int64 + default: null required: false description: liste des ids des BU auxquelles les données sont rattachées \ No newline at end of file diff --git a/parameters/query/idBu.yaml b/parameters/query/idBu.yaml index 508919a..46a5d8c 100644 --- a/parameters/query/idBu.yaml +++ b/parameters/query/idBu.yaml @@ -3,4 +3,5 @@ name: idBU schema: type: integer format: int64 + minimum: 1 description: id de la business unit à laquelle sont rattachées les données à récupérer \ No newline at end of file diff --git a/parameters/query/numPage.yaml b/parameters/query/numPage.yaml index 086a066..50014cd 100644 --- a/parameters/query/numPage.yaml +++ b/parameters/query/numPage.yaml @@ -3,5 +3,5 @@ name: numPage schema: type: integer default : 1 -description: Numéro de la page du tableau qui affiche les données -required: true \ No newline at end of file +description: Numéro de la page du tableau à afficher +required: false \ No newline at end of file diff --git a/parameters/query/parPage.yaml b/parameters/query/parPage.yaml index 2e39b9c..96882a1 100644 --- a/parameters/query/parPage.yaml +++ b/parameters/query/parPage.yaml @@ -2,5 +2,8 @@ in: query name: parPAge schema: type: integer + default : 15 + minimum: 5 + maximum: 100 description: Nombre d'éléments affiché sur chaque page du tableau -required: true \ No newline at end of file +required: false \ No newline at end of file diff --git a/parameters/query/roles.yaml b/parameters/query/roles.yaml new file mode 100644 index 0000000..85b3838 --- /dev/null +++ b/parameters/query/roles.yaml @@ -0,0 +1,9 @@ +in: query +name: roles +schema: + type: array + items: + type: string + default: null +description: Liste des rôles auquels appartiennent les collaborateurs (e.g [”CP”, ”Commerciaux”,”RA”]) +required: false diff --git a/parameters/query/texte.yaml b/parameters/query/texte.yaml index 803fb5d..0dde80d 100644 --- a/parameters/query/texte.yaml +++ b/parameters/query/texte.yaml @@ -2,4 +2,6 @@ in: query name: texte schema: type: string -description: Texte permettant d'identifier l'objet rechercher \ No newline at end of file + default: null +description: Texte permettant de filtrer les données +required: false \ No newline at end of file diff --git a/parameters/query/tri.yaml b/parameters/query/tri.yaml index eb5034a..4994560 100644 --- a/parameters/query/tri.yaml +++ b/parameters/query/tri.yaml @@ -2,4 +2,6 @@ in: query name: tri schema: type: string -description: Colonne du tableau sur lequel le tri s'effectue \ No newline at end of file + default: null +description: Colonne du tableau sur lequel le tri devra être effectué +required: false \ No newline at end of file diff --git a/paths/collaborateur/collaborateurcount.yaml b/paths/collaborateur/collaborateurcount.yaml new file mode 100644 index 0000000..b05841c --- /dev/null +++ b/paths/collaborateur/collaborateurcount.yaml @@ -0,0 +1,17 @@ +get: + tags: + - collaborateurs + operationId: getCollaborateurCount + description: Récupérer le nombre total de collaborateurs + responses: + '200': + $ref: ../../responses/collaborateur/getcountcollaborateur.yaml + + '401': + $ref: ../../responses/erreur/unauthorized.yaml + + '403': + $ref: ../../responses/erreur/forbidden.yaml + + '500': + $ref: ../../responses/erreur/internalServerError.yaml \ No newline at end of file diff --git a/paths/collaborateur/collaborateurs.yaml b/paths/collaborateur/collaborateurs.yaml index e709eaa..68b61a9 100644 --- a/paths/collaborateur/collaborateurs.yaml +++ b/paths/collaborateur/collaborateurs.yaml @@ -2,20 +2,27 @@ get: tags: - collaborateurs operationId: getCollaborateurs - description: Récupérer la liste des collaborateurs + description: Récupérer une liste de collaborateurs parameters: + - $ref: ../../parameters/query/roles.yaml + - $ref: ../../parameters/query/idBUs.yaml - $ref: ../../parameters/query/asc.yaml - - $ref: ../../parameters/query/fonctions.yaml - - $ref: ../../parameters/query/idAgence.yaml - - $ref: ../../parameters/query/idBU.yaml - $ref: ../../parameters/query/numPage.yaml - $ref: ../../parameters/query/parPage.yaml - $ref: ../../parameters/query/texte.yaml - $ref: ../../parameters/query/tri.yaml + - $ref: ../../parameters/query/dateDebut.yaml + - $ref: ../../parameters/query/dateFin.yaml responses: '200': $ref: ../../responses/collaborateur/getListeCollaborateurs.yaml + '401': + $ref: ../../responses/erreur/unauthorized.yaml + '403': - $ref: ../../responses/erreur/forbidden.yaml \ No newline at end of file + $ref: ../../responses/erreur/forbidden.yaml + + '500': + $ref: ../../responses/erreur/internalServerError.yaml \ No newline at end of file diff --git a/paths/demandedelegation/demandesDelegation.yaml b/paths/demandedelegation/demandesDelegation.yaml index 5dbdb55..43cc8ca 100644 --- a/paths/demandedelegation/demandesDelegation.yaml +++ b/paths/demandedelegation/demandesDelegation.yaml @@ -5,7 +5,7 @@ get: description: Récupération de la liste des demandes de délégation parameters: - $ref: ../../parameters/query/asc.yaml - - $ref: ../../parameters/query/fonctions.yaml + - $ref: ../../parameters/query/roles.yaml - $ref: ../../parameters/path/idCollaborateur.yaml - $ref: ../../parameters/query/numPage.yaml - $ref: ../../parameters/query/parPage.yaml diff --git a/paths/referents/referents.yaml b/paths/referents/referents.yaml index 8ca83f0..50cb296 100644 --- a/paths/referents/referents.yaml +++ b/paths/referents/referents.yaml @@ -5,7 +5,7 @@ get: description: Récupérer la liste de tous les referents parameters: - $ref: ../../parameters/query/asc.yaml - - $ref: ../../parameters/query/fonctions.yaml + - $ref: ../../parameters/query/roles.yaml - $ref: ../../parameters/query/idAgence.yaml - $ref: ../../parameters/query/idBU.yaml - $ref: ../../parameters/query/numPage.yaml diff --git a/responses/_index.yaml b/responses/_index.yaml index 9951c7d..28fa8f8 100644 --- a/responses/_index.yaml +++ b/responses/_index.yaml @@ -5,6 +5,12 @@ NotFoundResponse: ForbiddenResponse: $ref: ./erreur/forbidden.yaml +InternalServerErrorResponse: + $ref: ./erreur/internalServerError.yaml + +Unauthorized: + $ref: ./erreur/unauthorized.yaml + #Collaborateur GetCollaborateurResponse: diff --git a/responses/collaborateur/getcountcollaborateur.yaml b/responses/collaborateur/getcountcollaborateur.yaml new file mode 100644 index 0000000..307808a --- /dev/null +++ b/responses/collaborateur/getcountcollaborateur.yaml @@ -0,0 +1,7 @@ +description: OK +content: + application/json: + schema: + type: integer + format: int64 + description: Nombre total de collaborateurs \ No newline at end of file diff --git a/responses/erreur/internalServerError.yaml b/responses/erreur/internalServerError.yaml new file mode 100644 index 0000000..7ae61e0 --- /dev/null +++ b/responses/erreur/internalServerError.yaml @@ -0,0 +1,5 @@ +description: Une erreur est survenue sur le serveur +content: + application/json: + schema: + $ref: ../../schemas/erreur/erreur.yaml \ No newline at end of file diff --git a/responses/erreur/unauthorized.yaml b/responses/erreur/unauthorized.yaml new file mode 100644 index 0000000..40fa1cd --- /dev/null +++ b/responses/erreur/unauthorized.yaml @@ -0,0 +1,5 @@ +description: L'utilisateur souhaitant accéder à la ressource n'est pas authentifié +content: + application/json: + schema: + $ref: ../../schemas/erreur/erreur.yaml \ No newline at end of file diff --git a/schemas/collaborateur/businessunit.yaml b/schemas/collaborateur/businessunit.yaml index 9d77c27..c691ccc 100644 --- a/schemas/collaborateur/businessunit.yaml +++ b/schemas/collaborateur/businessunit.yaml @@ -4,7 +4,7 @@ properties: id: type: integer format: int64 - description: Id de l'agence + description: Id de la business unit nom: type: string description: Nom de la business unit diff --git a/schemas/ep/engagement.yaml b/schemas/ep/engagement.yaml index b64788a..769e8cb 100644 --- a/schemas/ep/engagement.yaml +++ b/schemas/ep/engagement.yaml @@ -17,7 +17,7 @@ properties: dateLimite: type: string format: date-time - description: Date limite pour respecter l'engament + description: Date limite pour respecter l'engagement etatEngagement: $ref: ../enum/etatEngagement.yaml raisonNonRealisable: