From 67bc0d5f20ab405071da23924f00e0661eb5d32b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yana=C3=ABl=20GRETTE?= Date: Wed, 9 Dec 2020 13:42:57 +0100 Subject: [PATCH] =?UTF-8?q?Mise=20=C3=A0=20jour=20des=20API=20sans=20code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- EPAServeur/Controllers/CollaborateursApi.cs | 480 +++++---- .../Controllers/DemandesDelegationApi.cs | 113 ++- EPAServeur/Controllers/DemandesEPIApi.cs | 379 +++++--- .../Controllers/DemandesFormationApi.cs | 277 +++--- EPAServeur/Controllers/EngagementsApi.cs | 292 +++--- EPAServeur/Controllers/EpApi.cs | 848 ++++++++++++---- EPAServeur/Controllers/FormationsApi.cs | 910 +++++++----------- EPAServeur/Controllers/NotesApi.cs | 555 +++++------ .../ParticipationsFormationsApi.cs | 157 +-- EPAServeur/Controllers/ReferentsApi.cs | 242 ----- EPAServeur/Controllers/ReferentsEPApi.cs | 132 +++ EPAServeur/Services/CollaborateurService.cs | 1 + 12 files changed, 2335 insertions(+), 2051 deletions(-) delete mode 100644 EPAServeur/Controllers/ReferentsApi.cs create mode 100644 EPAServeur/Controllers/ReferentsEPApi.cs diff --git a/EPAServeur/Controllers/CollaborateursApi.cs b/EPAServeur/Controllers/CollaborateursApi.cs index 2eedae1..249e93b 100644 --- a/EPAServeur/Controllers/CollaborateursApi.cs +++ b/EPAServeur/Controllers/CollaborateursApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.1 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -18,14 +18,6 @@ using IO.Swagger.Attributes; using IO.Swagger.Security; using Microsoft.AspNetCore.Authorization; using IO.Swagger.DTO; -using EPAServeur.IServices; -using Microsoft.Extensions.Logging; -using EPAServeur.Exceptions; -using IO.Swagger.ClientCollaborateur; -using Microsoft.AspNetCore.Server.Kestrel.Core; -using System.Threading.Tasks; -using Microsoft.AspNetCore.Authentication.JwtBearer; -using EPAServeur.Security; namespace IO.Swagger.Controllers { @@ -34,271 +26,331 @@ namespace IO.Swagger.Controllers /// [ApiController] public class CollaborateursApiController : ControllerBase - { - private readonly ICollaborateurService collaborateurService; - private readonly ILogger logger; - private readonly IAuthorizationService authorizationService; - public CollaborateursApiController(ICollaborateurService _collaborateurService, ILogger _logger, IAuthorizationService _authorizationService) - { - collaborateurService = _collaborateurService; - logger = _logger; - authorizationService = _authorizationService; - } + { /// /// /// - /// Récupérer un collaboratuer par son id - /// id collaborateur + /// Récupérer un collaborateur par son id. + /// Id du collaborateur /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/collaborateurs/{idCollaborateur}")] - [Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme, Roles = "RH,Assistante,Commercial,Collaborateur")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetCollaborateurById")] [SwaggerResponse(statusCode: 200, type: typeof(CollaborateurDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetCollaborateurById([FromRoute][Required]Guid? idCollaborateur) - { + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetCollaborateurById([FromRoute][Required]Guid? idCollaborateur) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(CollaborateurDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération du collaborateur d'ID {idCollaborateur}", idCollaborateur); - CollaborateurDTO collaborateurDTO = null; - try - { - collaborateurDTO = await collaborateurService.GetCollaborateurByIdAsync(idCollaborateur); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service Collaborateur pour récupérer le collaborateur par son id {idCollaborateur}", idCollaborateur); - } - catch (CollaborateurNotFoundException) - { - logger.LogError("Le collaborateur {id} est introuvable", idCollaborateur); - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Le collaborateur n'existe pas", - }; - return NotFound(erreurDTO); - } - catch(Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération du collaborateur {idCollaborateur}", idCollaborateur); - } - logger.LogInformation("Collaborateur {id} trouvée", idCollaborateur); - - // Si l'utilisateur connecté est un collaborateur, on vérifie si il est autorisé à accéder au détail du collaborateur - if (User.IsInRole("Collaborateur")) - { - if (!(await authorizationService.AuthorizeAsync(User, collaborateurDTO, "SameMailRequirement")).Succeeded) - { - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 403, - Message = "Accès interdit", - }; - return StatusCode(403, erreurDTO); - } - - } - - - return Ok(collaborateurDTO); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(CollaborateurDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer un collaborateur par son mail - /// mail de l'utilisateur connecté (mail obtenu via le token Keycloak) + /// Récupérer un collaborateur par son mail. + /// Mail de l'utilisateur connecté (mail obtenu via le token Keycloak) /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/collaborateurs/mail/{mail}")] - //[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme, Roles = "RH,Assistante,Commercial")] + [Route("/api/collaborateurs/{mail}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetCollaborateurByMail")] [SwaggerResponse(statusCode: 200, type: typeof(CollaborateurDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetCollaborateurByMail([FromRoute][Required]string mail) - { + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetCollaborateurByMail([FromRoute][Required]string mail) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(CollaborateurDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération d'un collaborateur par le mail {mail}", mail); - CollaborateurDTO collaborateurDTO = null; - try - { - collaborateurDTO = await collaborateurService.GetCollaborateurByMailAsync(mail); - } - catch (CollaborateurNotFoundException) - { - logger.LogError("Le collaborateur {mail} est introuvable", mail); - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Aucun collaborateur n'est lié au mail " + mail, - }; - return NotFound(erreurDTO); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service Collaborateur pour récupérer le collaborateur par son mail {mail}", mail); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération du collaborateur {mail}", mail); - } - logger.LogInformation("Collaborateur {mail} trouvée", mail); - return Ok(collaborateurDTO); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(CollaborateurDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des collaborateurs - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Liste des fonctions des collaborateurs que l'on veut récupérer - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// id de la business unit à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer une liste de collaborateurs. + /// Liste des rôles auquels appartiennent les collaborateurs (e.g [”CP”, ”Commerciaux”,”RA”]) + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/collaborateurs")] - [Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme, Roles = "RH,Assistante,Commercial")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetCollaborateurs")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetCollaborateurs([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]List fonctions, [FromQuery]long? idAgence, [FromQuery]long? idBU, [FromQuery]string texte, [FromQuery]string tri) - { + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetCollaborateurs([FromQuery]List roles, [FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération de la liste des collaborateurs"); - IEnumerable collaborateurs = null; - try - { - collaborateurs = await collaborateurService.GetCollaborateursAsync(asc, numPage, parPAge, fonctions, idAgence, idBU, texte, tri); - } - catch(ApiException) - { - logger.LogError("Une erreur est survenue lors de la discussion avec le service Collaborateur pour récupérer la liste des collaborateurs"); - } - catch(Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des collaborateurs"); - } - logger.LogInformation("Liste des collaborateurs récupérée"); - return Ok(collaborateurs); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n}, {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n} ]"; + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des collaborateurs dont le référent à la charge - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id referent - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des collaborateurs d’un référent. + /// Id d'un référent + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/collaborateurs/referent/{idReferent}")] - //[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme, Roles = "RH,Assistante,Commercial")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetCollaborateursByReferent")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetCollaborateursByReferent([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idReferent, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) - { + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetCollaborateursByReferent([FromRoute][Required]Guid? idReferent, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n}, {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer le nombre total de collaborateurs d’un référent. + /// Id d'un référent + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/collaborateurs/referent/{idReferent}/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetCollaborateursByReferentCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetCollaborateursByReferentCount([FromRoute][Required]Guid? idReferent, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer le nombre total de collaborateurs. + /// Liste des rôles auquels appartiennent les collaborateurs (e.g [”CP”, ”Commerciaux”,”RA”]) + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/collaborateurs/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetCollaborateursCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetCollaborateursCount([FromQuery]List roles, [FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération de la liste des collaborateurs du référent {idReferent}",idReferent); - IEnumerable collaborateurs = null; - try - { - collaborateurs = await collaborateurService.GetCollaborateursByReferentAsync(idReferent, asc, numPage, parPAge, texte, tri); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service collaborateur lors de la récupération de la liste des collaborateurs du référent {idReferent}", idReferent); - } - catch (ReferentNotFoundException) - { - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Le référent n'existe pas", - }; - return NotFound(erreurDTO); - } - catch (Exception) - { - logger.LogError("Uner erreur inconnue est survenue lors de la récupération des collaborateurs du référent {idReferent}", idReferent); - } - logger.LogInformation("Liste des collaborateurs du référent {idReferent} récupérée", idReferent); - return Ok(collaborateurs); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer un profil collaborateur par mail - /// mail de l'utilisateur connecté (mail obtenu via le token Keycloak) + /// Récupérer la liste des référents des précédents EP du collaborateur. + /// Id du collaborateur /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/collaborateurs/profil/{mail}/")] - //[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme, Roles = "RH,Assistante,Commercial")] + [Route("/api/collaborateurs/{idCollaborateur}/ep/referents")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetProfilCollaborateurByMail")] - [SwaggerResponse(statusCode: 200, type: typeof(ProfilDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetProfilCollaborateurByMailAsync([FromRoute][Required]string mail) - { + [SwaggerOperation("GetReferentsPrecedentEPCollaborateur")] + [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetReferentsPrecedentEPCollaborateur([FromRoute][Required]Guid? idCollaborateur) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération du profil par la mail {mail}", mail); - ProfilDTO collaborateurDTO = null; - try - { - collaborateurDTO = await collaborateurService.GetProfilByMailAsync(mail); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service collaborateur lors de la récupération du profil par le mail {mail}", mail); - } - catch (CollaborateurNotFoundException) - { - logger.LogError("Aucun collaborateur n'est lié au mail {mail}", mail); - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Aucun collaborateur n'est lié au mail " + mail, - }; - return NotFound(erreurDTO); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération du profil d'un collaborateur par le mail {mail}", mail); - } - logger.LogInformation("Profil du mail {mail} récupéré", mail); - return Ok(collaborateurDTO); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n}, {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } } } diff --git a/EPAServeur/Controllers/DemandesDelegationApi.cs b/EPAServeur/Controllers/DemandesDelegationApi.cs index 2e771dd..54b0a22 100644 --- a/EPAServeur/Controllers/DemandesDelegationApi.cs +++ b/EPAServeur/Controllers/DemandesDelegationApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -30,67 +30,41 @@ namespace IO.Swagger.Controllers /// /// /// - /// Faire une demande de délégation à une autre personne - /// id collaborateur - /// id EP - /// Demande de délégation envoyée avec succès - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/demandesdelegation/ep/{idEP}/{idCollaborateur}")] - [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("FaireDemandeDelegation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult FaireDemandeDelegation([FromRoute][Required]Guid? idCollaborateur, [FromRoute][Required]long? idEP) - { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); - - //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(403, default(ErreurDTO)); - - //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(404, default(ErreurDTO)); - - throw new NotImplementedException(); - } - - /// - /// - /// - /// Récupération de la liste des demandes de délégation - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id collaborateur - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Liste des fonctions des collaborateurs que l'on veut récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des demandes de délégation d’un référent. + /// Id d'un référent /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/demandesdelegation/{idCollaborateur}")] + [Route("/api/demandesdelegation/referent/{idReferent}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetDemandesDelegation")] + [SwaggerOperation("GetDemandesDelegationReferent")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetDemandesDelegation([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idCollaborateur, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]List fonctions, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandesDelegationReferent([FromRoute][Required]Guid? idReferent) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"reponse\" : true,\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 1,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"reponse\" : true,\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 1,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; + exampleJson = "[ {\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -101,23 +75,33 @@ namespace IO.Swagger.Controllers /// /// /// - /// Faire une demande de délégation à une autre personne + /// Répondre à une demande de délégation. /// - /// id demande delegation - /// Réponse demande de délagation envoyée avec succès - /// Acces interdit - /// Ressource n'a pas été trouvée + /// Id d'une demande delegation + /// Demande de délégation mise à jour avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/demandesdelegation/{idDemandeDelegation}/repondre")] + [Route("/api/demandesdelegation/{idDemandeDelegation}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("RepondreDemandeDelegation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult RepondreDemandeDelegation([FromBody]CreationDemandeDelegationDTO body, [FromRoute][Required]long? idDemandeDelegation) + [SwaggerOperation("UpdateDemandeDelegation")] + [SwaggerResponse(statusCode: 200, type: typeof(DemandeDelegationDTO), description: "Demande de délégation mise à jour avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateDemandeDelegation([FromBody]DemandeDelegationDTO body, [FromRoute][Required]long? idDemandeDelegation) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + // return StatusCode(200, default(DemandeDelegationDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); @@ -125,7 +109,18 @@ namespace IO.Swagger.Controllers //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeDelegationDTO); //TODO: Change the data returned + return new ObjectResult(example); } } } diff --git a/EPAServeur/Controllers/DemandesEPIApi.cs b/EPAServeur/Controllers/DemandesEPIApi.cs index 3b42b6d..57f6786 100644 --- a/EPAServeur/Controllers/DemandesEPIApi.cs +++ b/EPAServeur/Controllers/DemandesEPIApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -30,110 +30,164 @@ namespace IO.Swagger.Controllers /// /// /// - /// Annuler la demande d'EPI - /// id demande EPI - /// demande d'EPI annulée - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/demandesepi/{idDemandeEPI}/annuler")] + /// Effectuer la création d’une demande d’EPI par l'assistant ou bien un responsable d'agence. + /// + /// Demande d'EPI créée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPost] + [Route("/api/demandesepi/demande/assistant")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("AnnulerDemandeEPI")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult AnnulerDemandeEPI([FromRoute][Required]long? idDemandeEPI) + [SwaggerOperation("AddDemandeEpiAssistant")] + [SwaggerResponse(statusCode: 201, type: typeof(DemandeEPIDTO), description: "Demande d'EPI créée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult AddDemandeEpiAssistant([FromBody]DemandeEPIDTO body) { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(201, default(DemandeEPIDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(404, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeEPIDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Lancer la procedure pour un entretien professionnel intermediaire, une demande d'EPI validée est créé par la même occasion - /// id collaborateur - /// id referent - /// Demande d'EPI créée avec l'EPI correspondant - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/demandesepi/referent/{idReferent}/demande/{idCollaborateur}")] + /// Effectuer la création d’une demande d’EPI par le collaborateur. + /// + /// Demande d'EPI créée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPost] + [Route("/api/demandesepi/demande/collaborateur")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("CreateEPI")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult CreateEPI([FromRoute][Required]Guid? idCollaborateur, [FromRoute][Required]Guid? idReferent) + [SwaggerOperation("AddDemandeEpiCollaborateur")] + [SwaggerResponse(statusCode: 201, type: typeof(DemandeEPIDTO), description: "Demande d'EPI créée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult AddDemandeEpiCollaborateur([FromBody]DemandeEPIDTO body) { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(201, default(DemandeEPIDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(404, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeEPIDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Demande d'EPI par un collaborateur - /// id collaborateur - /// demande d'EPI effectuée - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/demandesepi/collaborateur/{idCollaborateur}/demande")] + /// Effectuer la création d’une demande d’EPI par le référent. + /// + /// Demande d'EPI créée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPost] + [Route("/api/demandesepi/demande/referent")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("DemandeEPI")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult DemandeEPI([FromRoute][Required]Guid? idCollaborateur) + [SwaggerOperation("AddDemandeEpiReferent")] + [SwaggerResponse(statusCode: 201, type: typeof(DemandeEPIDTO), description: "Demande d'EPI créée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult AddDemandeEpiReferent([FromBody]DemandeEPIDTO body) { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(201, default(DemandeEPIDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(404, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeEPIDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Demande d'EPI et par l'assistant et création automatique de l'EPI - /// id collaborateur - /// Demande d'EPI créée avec l'EPI correspondant - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/demandesepi/demandeassistante/{idCollaborateur}")] + /// Annuler une demande d’EPI. + /// Id d'une demande d'EPI + /// Demande annulée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpDelete] + [Route("/api/demandesepi/{idDemandeEPI}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("DemandeEPIAssistante")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult DemandeEPIAssistante([FromRoute][Required]Guid? idCollaborateur) + [SwaggerOperation("DeleteDemandeEPI")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult DeleteDemandeEPI([FromRoute][Required]long? idDemandeEPI) { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + //TODO: Uncomment the next line to return response 204 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(204); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); @@ -141,43 +195,51 @@ namespace IO.Swagger.Controllers //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + throw new NotImplementedException(); } /// /// /// - /// Récupération de la liste des demandes EPI d'un collaborateur - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id collaborateur - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Liste des fonctions des collaborateurs que l'on veut récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des demandes d’EPI d’un collaborateur. + /// Id du collaborateur + /// Liste des états des demandes à afficher /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/demandesepi/collaborateur/{idCollaborateur}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetDemandeEPICollaborateur")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetDemandeEPICollaborateur([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idCollaborateur, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]List fonctions, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandeEPICollaborateur([FromRoute][Required]Guid? idCollaborateur, [FromQuery]List etatsDemande) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"reponse\" : true,\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etat\" : 6\n}, {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"reponse\" : true,\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etat\" : 6\n} ]"; + exampleJson = "[ {\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -188,72 +250,88 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupération de l'EPI en cours d'un collaborateur - /// id collaborateur + /// Récupérer le nombre total de demandes d’EPI d’un collaborateur. + /// Id du collaborateur + /// Liste des états des demandes à afficher /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/demandesepi/collaborateur/{idCollaborateur}/enCours")] + [Route("/api/demandesepi/collaborateur/{idCollaborateur}/count")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetDemandeEPIEnCours")] - [SwaggerResponse(statusCode: 200, type: typeof(DemandeEPIDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetDemandeEPIEnCours([FromRoute][Required]Guid? idCollaborateur) + [SwaggerOperation("GetDemandeEPICollaborateurCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandeEPICollaborateurCount([FromRoute][Required]Guid? idCollaborateur, [FromQuery]List etatsDemande) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(DemandeEPIDTO)); + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "{\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"reponse\" : true,\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etat\" : 6\n}"; + exampleJson = "0"; var example = exampleJson != null - ? JsonConvert.DeserializeObject(exampleJson) - : default(DemandeEPIDTO); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupération de la liste des demandes EPI d'un referent - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id referent - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Liste des fonctions des collaborateurs que l'on veut récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des demandes d’EPI qu’un référent a reçu. + /// Id d'un référent + /// Liste des états des demandes à afficher /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/demandesepi/referent/{idReferent}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetDemandeEPIReferent")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetDemandeEPIReferent([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idReferent, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]List fonctions, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandeEPIReferent([FromRoute][Required]Guid? idReferent, [FromQuery]List etatsDemande) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"reponse\" : true,\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etat\" : 6\n}, {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"reponse\" : true,\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etat\" : 6\n} ]"; + exampleJson = "[ {\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -264,23 +342,79 @@ namespace IO.Swagger.Controllers /// /// /// - /// Répondre à une demande EPI en attente + /// Récupérer le nombre total de demandes d’EPI qu’un référent a reçu. + /// Id d'un référent + /// Liste des états des demandes à afficher + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/demandesepi/referent/{idReferent}/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetDemandeEPIReferentCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandeEPIReferentCount([FromRoute][Required]Guid? idReferent, [FromQuery]List etatsDemande) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Répondre à une demande d’EPI. /// - /// id demande EPI - /// Réponse à la demande d'EPI envoyée - /// Acces interdit - /// Ressource n'a pas été trouvée + /// Id d'une demande d'EPI + /// Demande mise à jour + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/demandesepi/{idDemandeEPI}/repondre")] + [Route("/api/demandesepi/{idDemandeEPI}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("RepondreDemandeEPI")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult RepondreDemandeEPI([FromBody]DemandeEPIDTO body, [FromRoute][Required]long? idDemandeEPI) + [SwaggerOperation("UpdateDemandeEPI")] + [SwaggerResponse(statusCode: 200, type: typeof(DemandeEPIDTO), description: "Demande mise à jour")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateDemandeEPI([FromBody]DemandeEPIDTO body, [FromRoute][Required]long? idDemandeEPI) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + // return StatusCode(200, default(DemandeEPIDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); @@ -288,7 +422,18 @@ namespace IO.Swagger.Controllers //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeEPIDTO); //TODO: Change the data returned + return new ObjectResult(example); } } } diff --git a/EPAServeur/Controllers/DemandesFormationApi.cs b/EPAServeur/Controllers/DemandesFormationApi.cs index d1e1ca7..8c9cd22 100644 --- a/EPAServeur/Controllers/DemandesFormationApi.cs +++ b/EPAServeur/Controllers/DemandesFormationApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -30,128 +30,128 @@ namespace IO.Swagger.Controllers /// /// /// - /// Créer une demande de formation pour un collaborateur + /// Créer demande de formation pour un collaborateur. /// /// Demande formation créée - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPost] - [Route("/api/demandeformation")] + [Route("/api/demandesformation")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("CreerDemandeFormation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult CreerDemandeFormation([FromBody]CreationDemandeFormationDTO body) + [SwaggerOperation("AddDemandeFormation")] + [SwaggerResponse(statusCode: 201, type: typeof(DemandeFormationDTO), description: "Demande formation créée")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult AddDemandeFormation([FromBody]DemandeFormationDTO body) { //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(201); + // return StatusCode(201, default(DemandeFormationDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - throw new NotImplementedException(); - } - - /// - /// - /// - /// Récupérer la liste des demandes de formations - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Thème des demandes de formation à récupérer - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - [HttpGet] - [Route("/api/demandeformation")] - [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetDemandesFormation")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetDemandesFormation([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]string texte, [FromQuery]int? theme, [FromQuery]string tri) - { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); - //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(403, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; + exampleJson = "{\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n}"; var example = exampleJson != null - ? JsonConvert.DeserializeObject>(exampleJson) - : default(List); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeFormationDTO); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des demandes de formations en attente d'une réponse - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Thème des demandes de formation à récupérer - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - [HttpGet] - [Route("/api/demandeformation/enattente")] + /// Supprimer une demande de formation. + /// Id d'une demande de formation + /// Demande de formation supprimée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpDelete] + [Route("/api/demandesformation/{idDemandeFormation}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetDemandesFormationEnAttente")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetDemandesFormationEnAttente([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]string texte, [FromQuery]int? theme, [FromQuery]string tri) + [SwaggerOperation("DeleteDemandeFormation")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult DeleteDemandeFormation([FromRoute][Required]long? idDemandeFormation) { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 204 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(204); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - string exampleJson = null; - exampleJson = "[ {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; - - var example = exampleJson != null - ? JsonConvert.DeserializeObject>(exampleJson) - : default(List); //TODO: Change the data returned - return new ObjectResult(example); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); } /// /// /// - /// Récupérer la liste des demandes de formations ayant reçu une réponse - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Thème des demandes de formation à récupérer - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des demandes de formation. + /// Liste des états des demandes à afficher + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/demandeformation/repondus")] + [Route("/api/demandesformation")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetDemandesFormationRepondues")] + [SwaggerOperation("GetDemandesFormation")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetDemandesFormationRepondues([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]string texte, [FromQuery]int? theme, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandesFormation([FromQuery]List etatsDemande, [FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; + exampleJson = "[ {\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n}, {\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -162,88 +162,139 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupérer la liste des origines des demandes de formation + /// Récupérer le nombre total de demandes de formation. + /// Liste des états des demandes à afficher + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/originesdemandesformation")] + [Route("/api/demandesformation/count")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetOriginesDemandesFormation")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetOriginesDemandesFormation() + [SwaggerOperation("GetDemandesFormationCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetDemandesFormationCount([FromQuery]List etatsDemande, [FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"libelle\" : \"libelle\",\n \"id\" : 0\n}, {\n \"libelle\" : \"libelle\",\n \"id\" : 0\n} ]"; + exampleJson = "0"; var example = exampleJson != null - ? JsonConvert.DeserializeObject>(exampleJson) - : default(List); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des thèmes des demandes de formation + /// Récupérer la liste des origines des demandes de formation. /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/themes")] + [Route("/api/originesdemandeformation")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetThemes")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetThemes() + [SwaggerOperation("GetOriginesDemandeFormation")] + [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetOriginesDemandeFormation() { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n}, {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n} ]"; + exampleJson = "[ {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n}, {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n} ]"; var example = exampleJson != null - ? JsonConvert.DeserializeObject>(exampleJson) - : default(List); //TODO: Change the data returned + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Répondre a une demande de formation et la mettre à jour + /// Répondre à une demande de formation. /// - /// id demande formation + /// Id d'une demande de formation /// demande formation mise à jour - /// Demande formation créée - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/demandeformation/{idDemandeFormation}/repondre")] + [Route("/api/demandesformation/{idDemandeFormation}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("RepondreDemandeFormation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult RepondreDemandeFormation([FromBody]DemandeFormationDTO body, [FromRoute][Required]long? idDemandeFormation) + [SwaggerOperation("UpdateDemandeFormation")] + [SwaggerResponse(statusCode: 200, type: typeof(DemandeFormationDTO), description: "demande formation mise à jour")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateDemandeFormation([FromBody]DemandeFormationDTO body, [FromRoute][Required]long? idDemandeFormation) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + // return StatusCode(200, default(DemandeFormationDTO)); - //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(201); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DemandeFormationDTO); //TODO: Change the data returned + return new ObjectResult(example); } } } diff --git a/EPAServeur/Controllers/EngagementsApi.cs b/EPAServeur/Controllers/EngagementsApi.cs index 30814e3..44a9e21 100644 --- a/EPAServeur/Controllers/EngagementsApi.cs +++ b/EPAServeur/Controllers/EngagementsApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -18,11 +18,6 @@ using IO.Swagger.Attributes; using IO.Swagger.Security; using Microsoft.AspNetCore.Authorization; using IO.Swagger.DTO; -using EPAServeur.IServices; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using EPAServeur.Exceptions; -using Microsoft.EntityFrameworkCore; namespace IO.Swagger.Controllers { @@ -31,199 +26,148 @@ namespace IO.Swagger.Controllers /// [ApiController] public class EngagementsApiController : ControllerBase - { - private readonly IEngagementService engagementService; - private readonly ILogger logger; - - - public EngagementsApiController(IEngagementService _engagementService, ILogger _logger) - { - engagementService = _engagementService; - logger = _logger; - } + { /// /// /// - /// Récupérer la liste des engagements - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des engagements. + /// Etats de l'engagement + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/engagements")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetEngagements")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetEngagements([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]string texte, [FromQuery]string tri) - { - logger.LogInformation("Récupération de la liste des engagements."); - - IEnumerable engagements = null; - - try - { - engagements = await engagementService.GetEngagementsAsync(asc, numPage, parPAge, idAgence, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des engagements est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des engagements."); - } - - logger.LogInformation("Liste des engagements récupérée."); - - return Ok(engagements); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEngagements([FromQuery]List etatsEngagement, [FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n}, {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des engagements en attente - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer le nombre total d’engagements. + /// Etats de l'engagement + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/engagements/enattente")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/engagements/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetEngagementsEnAttente")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetEngagementsEnAttente([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]string texte, [FromQuery]string tri) - { - logger.LogInformation("Récupération de la liste des engagements en attente."); - - IEnumerable engagements = null; - - try - { - engagements = await engagementService.GetEngagementsEnAttenteAsync(asc, numPage, parPAge, idAgence, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des engagements en attente est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des engagements en attente."); - } - - logger.LogInformation("Liste des engagements en attente récupérée."); - - return Ok(engagements); + [SwaggerOperation("GetEngagementsCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEngagementsCount([FromQuery]List etatsEngagement, [FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des engagements ayant reçu une réponse - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - [HttpGet] - [Route("/api/engagements/repondus")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetEngagementsRepondus")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetEngagementsRepondus([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]string texte, [FromQuery]string tri) - { - logger.LogInformation("Récupération de la liste des engagements répondus."); - - IEnumerable engagements = null; - - try - { - engagements = await engagementService.GetEngagementsRepondusAsync(asc, numPage, parPAge, idAgence, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des engagements répondus est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des engagements répondus."); - } - - logger.LogInformation("Liste des engagements répondus récupérée."); - - return Ok(engagements); - } - - /// - /// - /// - /// Donnez une réponse à un engagement + /// Répondre à un engagement. /// - /// id engagement - /// Engagement mise à jour - /// Acces interdit + /// Id d'un engagement + /// Engagement modifié avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/engagements/{idEngagement}/repondre")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/engagements/{idEngagement}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("RepondreEngagement")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task RepondreEngagement([FromBody]EngagementDTO body, [FromRoute][Required]long? idEngagement) - { - logger.LogInformation("Tentative de mise à jour de l'engagement {idEngagement}.", idEngagement); - - EngagementDTO engagement = null; - - try - { - engagement = await engagementService.RepondreEngagementAsync(body, idEngagement); - } - catch (EngagementInvalidException ex) - { - logger.LogWarning("Des données sont manquants, l'engagement {idEngagement} ne peut pas être mise à jour.", idEngagement); - ErreurDTO erreur = new ErreurDTO() - { - Code = "400", - Message = ex.Message - }; - return BadRequest(erreur); - } - catch (EngagementIncompatibleIdException) - { - logger.LogError("L'id de l'engagement à mettre à jour {body.Id} et l'id de l'engagement avec les nouvelles informations {idEngagement} sont différents.", body.Id, idEngagement); - } - catch (DbUpdateConcurrencyException) - { - logger.LogError("L'engagement {idEngagement} n'a pas pu être mise à jour car il est pris par une autre ressource.", idEngagement); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur est survenue dans la base de données lors de la mise à jour de l'engagement {idEngagement}.", idEngagement); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la mise à jour de l'engagement {idEngagement}.", idEngagement); - } - - logger.LogInformation("Mise à jour de l'engagement {idEngagement} réussie."); - - return Ok(engagement); + [SwaggerOperation("UpdateEngagement")] + [SwaggerResponse(statusCode: 200, type: typeof(EngagementDTO), description: "Engagement modifié avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateEngagement([FromBody]EngagementDTO body, [FromRoute][Required]long? idEngagement) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(EngagementDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(EngagementDTO); //TODO: Change the data returned + return new ObjectResult(example); } } } diff --git a/EPAServeur/Controllers/EpApi.cs b/EPAServeur/Controllers/EpApi.cs index 8fe2055..396335c 100644 --- a/EPAServeur/Controllers/EpApi.cs +++ b/EPAServeur/Controllers/EpApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -30,33 +30,166 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupérer la liste de tous les EP collaborateurs - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// id de la business unit à laquelle sont rattachées les données à récupérer - /// Statut de l'EP - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Annuler/Supprimer un EP d’un collaborateur. + /// Id d'un EP + /// EP supprimé avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpDelete] + [Route("/api/ep/{idEP}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("DeleteEP")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult DeleteEP([FromRoute][Required]long? idEP) + { + //TODO: Uncomment the next line to return response 204 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(204); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); + } + + /// + /// + /// + /// Supprimer les EP d’un collaborateur. + /// Id du collaborateur + /// EP supprimés avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpDelete] + [Route("/api/ep/{idCollaborateur}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("DeleteEPCollaborateur")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult DeleteEPCollaborateur([FromRoute][Required]Guid? idCollaborateur) + { + //TODO: Uncomment the next line to return response 204 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(204); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); + } + + /// + /// + /// + /// Récupérer un EP par son id. + /// Id d'un EP + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/ep/{idEP}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetEPById")] + [SwaggerResponse(statusCode: 200, type: typeof(EpDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPById([FromRoute][Required]long? idEP) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(EpDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"dateSignatureReferent\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateSaisie\" : \"2000-01-23T04:56:07.000+00:00\",\n \"documents\" : [ {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n }, {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n } ],\n \"commentairesAssistant\" : [ {\n \"id\" : 1,\n \"idAssistante\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"id\" : 1,\n \"idAssistante\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"commentaire\" : \"commentaire\"\n } ],\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"demandesFormation\" : [ {\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n }, {\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n } ],\n \"type\" : \"EPS\",\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"engagements\" : [ {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n }, {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n } ],\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"participants\" : [ {\n \"idParticipant\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"id\" : 1,\n \"estPermanente\" : true,\n \"participant\" : \"participant\"\n }, {\n \"idParticipant\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"id\" : 1,\n \"estPermanente\" : true,\n \"participant\" : \"participant\"\n } ],\n \"dateSignatureCollaborateur\" : \"2000-01-23T04:56:07.000+00:00\",\n \"objectifs\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"augmentationSalaire\" : {\n \"augmentationPrimeMission\" : 9.36931,\n \"id\" : 5,\n \"augmentation\" : 9.965781,\n \"message\" : \"message\"\n },\n \"propositionsEntretien\" : [ {\n \"typeEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"dateEntretien\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6\n }, {\n \"typeEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"dateEntretien\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6\n } ],\n \"obligatoire\" : true,\n \"demandesDelegation\" : [ {\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n }, {\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n } ],\n \"cv\" : \"cv\",\n \"demandeEPI\" : {\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"objectifsPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n } ],\n \"statut\" : \"Cree\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(EpDTO); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer la liste des EP en cours. + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep")] + [Route("/api/ep/encours")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetEP")] + [SwaggerOperation("GetEPEnCours")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetEP([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]long? idBU, [FromQuery]int? statutEP, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPEnCours([FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n} ]"; + exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -67,37 +200,41 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupérer la liste des EP d'un collaborateur - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id collaborateur - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Statut de l'EP - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer les informations des EP en cours auxquels le collaborateur est participant. + /// Id du collaborateur /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/collaborateur/{idCollaborateur}")] + [Route("/api/ep/participation/{idCollaborateur}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetEPByCollaborateur")] + [SwaggerOperation("GetEPEnCoursCollaborateurParticipant")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetEPByCollaborateur([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idCollaborateur, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]int? statutEP, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPEnCoursCollaborateurParticipant([FromRoute][Required]Guid? idCollaborateur) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n} ]"; + exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -108,71 +245,141 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupérer un EP par son id - /// id EP + /// Récupérer le nombre total d’informations des EP en cours auxquels le collaborateur est participant. + /// Id du collaborateur /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/{idEP}")] + [Route("/api/ep/participation/{idCollaborateur}/count")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetEPById")] - [SwaggerResponse(statusCode: 200, type: typeof(EpDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetEPById([FromRoute][Required]long? idEP) + [SwaggerOperation("GetEPEnCoursCollaborateurParticipantCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPEnCoursCollaborateurParticipantCount([FromRoute][Required]Guid? idCollaborateur) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(EpDTO)); + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "{\n \"augmentationSalaire\" : {\n \"id\" : 4,\n \"augmentation\" : 7.386282,\n \"message\" : \"message\",\n \"primeMission\" : 1.2315135\n },\n \"dateSaisie\" : \"2000-01-23T04:56:07.000+00:00\",\n \"documents\" : [ {\n \"id\" : 1,\n \"type\" : \"type\",\n \"saisies\" : [ {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n }, {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n } ]\n }, {\n \"id\" : 1,\n \"type\" : \"type\",\n \"saisies\" : [ {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n }, {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n } ]\n } ],\n \"propositionsEntretien\" : [ {\n \"typeEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n },\n \"dateEntretien\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 1\n }, {\n \"typeEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n },\n \"dateEntretien\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 1\n } ],\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"demandesFormation\" : [ {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n }, {\n \"reponse\" : true,\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"theme\" : {\n \"id\" : 9,\n \"demandesFormation\" : [ null, null ],\n \"nom\" : \"nom\"\n },\n \"id\" : 7,\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n } ],\n \"type\" : \"type\",\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"objectifPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 2,\n \"atteint\" : true,\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 2,\n \"atteint\" : true,\n \"commentaire\" : \"commentaire\"\n } ],\n \"demandesDelegation\" : [ {\n \"reponse\" : true,\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 1,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n }, {\n \"reponse\" : true,\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 1,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n } ],\n \"cv\" : \"cv\",\n \"commentaireCommercial\" : \"commentaireCommercial\",\n \"objectif\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"engagements\" : [ {\n \"realisable\" : true,\n \"realise\" : true,\n \"action\" : \"action\",\n \"id\" : 2,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n }, {\n \"realisable\" : true,\n \"realise\" : true,\n \"action\" : \"action\",\n \"id\" : 2,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n } ],\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"commentaireAssistant\" : \"commentaireAssistant\",\n \"statut\" : 6,\n \"participants\" : [ {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"id\" : 3,\n \"collaborateur\" : \"collaborateur\"\n }, {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"id\" : 3,\n \"collaborateur\" : \"collaborateur\"\n } ]\n}"; + exampleJson = "0"; var example = exampleJson != null - ? JsonConvert.DeserializeObject(exampleJson) - : default(EpDTO); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer le nombre total d’EP en cours. + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/ep/encours/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetEPEnCoursCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPEnCoursCount([FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupérer la liste de tous les EP fait passer par le référent - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id referent - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des prochains EP d’un référent. + /// Id d'un référent + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Récupérer la liste des EP obligatoires + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/referent/{idReferent}")] + [Route("/api/ep/encours/referent/{idReferent}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetEPByReferent")] + [SwaggerOperation("GetEPEnCoursReferent")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetEPByReferent([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idReferent, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPEnCoursReferent([FromRoute][Required]Guid? idReferent, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]bool? epObligatoire, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n} ]"; + exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -183,68 +390,186 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupérer la liste de tous les prochaines EP collaborateurs - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// id de la business unit à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer le nombre total de prochains EP d’un référent. + /// Id d'un référent + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Récupérer la liste des EP obligatoires + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/enCours")] + [Route("/api/ep/encours/referent/{idReferent}/count")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetEPEnCours")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetEPEnCours([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]long? idBU, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerOperation("GetEPEnCoursReferentCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPEnCoursReferentCount([FromRoute][Required]Guid? idReferent, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]bool? epObligatoire, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n} ]"; + exampleJson = "0"; var example = exampleJson != null - ? JsonConvert.DeserializeObject>(exampleJson) - : default(List); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupérer la liste de tous les EP collaborateur signés - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// id de la business unit à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer l’EP à saisir d’un collaborateur. + /// Id du collaborateur /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/ep/saisie/collaborateur/{idCollaborateur}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetEPSaisieCollaborateur")] + [SwaggerResponse(statusCode: 200, type: typeof(EpSaisieDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSaisieCollaborateur([FromRoute][Required]Guid? idCollaborateur) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(EpSaisieDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"objectifs\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"augmentationSalaire\" : {\n \"augmentationPrimeMission\" : 9.36931,\n \"id\" : 5,\n \"augmentation\" : 9.965781,\n \"message\" : \"message\"\n },\n \"cv\" : \"cv\",\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"documents\" : [ {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n }, {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n } ],\n \"choixEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"obligatoire\" : true,\n \"engagements\" : [ {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n }, {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n } ],\n \"id\" : 0,\n \"type\" : \"EPS\",\n \"objectifsPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n } ]\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(EpSaisieDTO); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer l’EP à saisir d’un référent. + /// Id d'un EP + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/ep/saisie/referent/{idEP}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetEPSaisieReferent")] + [SwaggerResponse(statusCode: 200, type: typeof(EpSaisieDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSaisieReferent([FromRoute][Required]long? idEP) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(EpSaisieDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"objectifs\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"augmentationSalaire\" : {\n \"augmentationPrimeMission\" : 9.36931,\n \"id\" : 5,\n \"augmentation\" : 9.965781,\n \"message\" : \"message\"\n },\n \"cv\" : \"cv\",\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"documents\" : [ {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n }, {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n } ],\n \"choixEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"obligatoire\" : true,\n \"engagements\" : [ {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n }, {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n } ],\n \"id\" : 0,\n \"type\" : \"EPS\",\n \"objectifsPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n } ]\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(EpSaisieDTO); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer la liste des EP signés. + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/ep/signes")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetEPSignes")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetEPSignes([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]long? idAgence, [FromQuery]long? idBU, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSignes([FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n} ]"; + exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -255,71 +580,140 @@ namespace IO.Swagger.Controllers /// /// /// - /// Récupérer les détails sur quand aura lieu le prochain EP du collaborateur - /// id collaborateur + /// Récupérer la liste des EP signés d’un collaborateur. + /// Id du collaborateur /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/collaborateur/{idCollaborateur}/prochain")] + [Route("/api/ep/signes/collaborateur/{idCollaborateur}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetProchainEPCollaborateur")] - [SwaggerResponse(statusCode: 200, type: typeof(ProchainEPDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetProchainEPCollaborateur([FromRoute][Required]Guid? idCollaborateur) + [SwaggerOperation("GetEPSignesCollaborateur")] + [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSignesCollaborateur([FromRoute][Required]Guid? idCollaborateur) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(ProchainEPDTO)); + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "{\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6\n}"; + exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null - ? JsonConvert.DeserializeObject(exampleJson) - : default(ProchainEPDTO); //TODO: Change the data returned + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupérer la liste de tous les prochaines EP que fera passer le référent - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id referent - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer le nombre total d’EP signés. + /// liste des ids des BU auxquelles les données sont rattachées + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/referent/{idReferent}/prochains")] + [Route("/api/ep/signes/count")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetProchainsEPByReferent")] + [SwaggerOperation("GetEPSignesCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSignesCount([FromQuery]List idBUs, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Récupérer la liste des EP signés qu’un référent à fait passer. + /// Id d'un référent + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/ep/signes/referent/{idReferent}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("GetEPSignesReferent")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetProchainsEPByReferent([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idReferent, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSignesReferent([FromRoute][Required]Guid? idReferent, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : 6,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"referent\" : {\n \"mailApside\" : \"\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\",\n \"collaborateurs\" : [ null, null ]\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"statut\" : 1\n} ]"; + exampleJson = "[ {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}, {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) @@ -330,22 +724,37 @@ namespace IO.Swagger.Controllers /// /// /// - /// Faire un rappel de signature EP - /// id EP - /// Notification de rappel envoyé - /// Acces interdit - /// Ressource n'a pas été trouvée + /// Récupérer le nombre total d’EP signés qu’un référent à fait passer. + /// Id d'un référent + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/{idEP}/rappelSignature")] + [Route("/api/ep/signes/referent/{idReferent}/count")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("RappelSignature")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult RappelSignature([FromRoute][Required]long? idEP) + [SwaggerOperation("GetEPSignesReferentCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEPSignesReferentCount([FromRoute][Required]Guid? idReferent, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) { - //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(201); + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); @@ -353,92 +762,201 @@ namespace IO.Swagger.Controllers //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Récupérer le prochain EP du collaborateur dans le but de le saisir - /// id collaborateur + /// Récupérer le prochain EP du collaborateur. + /// Id du collaborateur /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/ep/collaborateur/{idCollaborateur}/prochain/saisir")] + [Route("/api/ep/encours/collaborateur/{idCollaborateur}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("SaisieProchainEP")] - [SwaggerResponse(statusCode: 200, type: typeof(EpSaisieDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult SaisieProchainEP([FromRoute][Required]Guid? idCollaborateur) + [SwaggerOperation("GetProchainEPCollaborateur")] + [SwaggerResponse(statusCode: 200, type: typeof(EpInformationDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetProchainEPCollaborateur([FromRoute][Required]Guid? idCollaborateur) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(EpSaisieDTO)); + // return StatusCode(200, default(EpInformationDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "{\n \"cv\" : \"cv\",\n \"documents\" : [ {\n \"id\" : 1,\n \"type\" : \"type\",\n \"saisies\" : [ {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n }, {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n } ]\n }, {\n \"id\" : 1,\n \"type\" : \"type\",\n \"saisies\" : [ {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n }, {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n } ]\n } ],\n \"choixEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n },\n \"obligatoire\" : true,\n \"objectif\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"type\" : \"type\",\n \"objectifPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 2,\n \"atteint\" : true,\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 2,\n \"atteint\" : true,\n \"commentaire\" : \"commentaire\"\n } ]\n}"; + exampleJson = "{\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n}"; var example = exampleJson != null - ? JsonConvert.DeserializeObject(exampleJson) - : default(EpSaisieDTO); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(EpInformationDTO); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Mettre à jour l'EP déjà saisie + /// Effectuer un rappel de signature. + /// Id d'un EP + /// Ok + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/ep/{idEP}/rappelsignature")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("RappelSignature")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult RappelSignature([FromRoute][Required]long? idEP) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); + } + + /// + /// + /// + /// Mettre à jour les informations d’un EP. /// - /// id EP - /// EP mise à jour avec succès - /// Acces interdit + /// Id d'un EP + /// Informations de l’EP modifiées avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/ep/{idEP}/updateep")] + [Route("/api/ep/{idEP}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("UpdateEP")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] + [SwaggerResponse(statusCode: 200, type: typeof(EpDTO), description: "Informations de l’EP modifiées avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] public virtual IActionResult UpdateEP([FromBody]EpDTO body, [FromRoute][Required]long? idEP) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + // return StatusCode(200, default(EpDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"dateSignatureReferent\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateSaisie\" : \"2000-01-23T04:56:07.000+00:00\",\n \"documents\" : [ {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n }, {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n } ],\n \"commentairesAssistant\" : [ {\n \"id\" : 1,\n \"idAssistante\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"id\" : 1,\n \"idAssistante\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"commentaire\" : \"commentaire\"\n } ],\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"demandesFormation\" : [ {\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n }, {\n \"commentaireRefus\" : \"commentaireRefus\",\n \"libelle\" : \"libelle\",\n \"description\" : \"description\",\n \"dateDerniereReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 2,\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 7\n },\n \"ep\" : {\n \"obligatoire\" : true,\n \"dateDisponibilite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 9,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"formation\" : {\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n },\n \"demandeRH\" : false,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatDemande\" : \"EnAttente\"\n } ],\n \"type\" : \"EPS\",\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n },\n \"engagements\" : [ {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n }, {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n } ],\n \"id\" : 0,\n \"datePrevisionnelle\" : \"2000-01-23T04:56:07.000+00:00\",\n \"participants\" : [ {\n \"idParticipant\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"id\" : 1,\n \"estPermanente\" : true,\n \"participant\" : \"participant\"\n }, {\n \"idParticipant\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"id\" : 1,\n \"estPermanente\" : true,\n \"participant\" : \"participant\"\n } ],\n \"dateSignatureCollaborateur\" : \"2000-01-23T04:56:07.000+00:00\",\n \"objectifs\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"augmentationSalaire\" : {\n \"augmentationPrimeMission\" : 9.36931,\n \"id\" : 5,\n \"augmentation\" : 9.965781,\n \"message\" : \"message\"\n },\n \"propositionsEntretien\" : [ {\n \"typeEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"dateEntretien\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6\n }, {\n \"typeEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"dateEntretien\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6\n } ],\n \"obligatoire\" : true,\n \"demandesDelegation\" : [ {\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n }, {\n \"raisonDemande\" : \"raisonDemande\",\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 6,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n } ],\n \"cv\" : \"cv\",\n \"demandeEPI\" : {\n \"raisonRefus\" : \"raisonRefus\",\n \"dateReponse\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 8,\n \"dateDemande\" : \"2000-01-23T04:56:07.000+00:00\"\n },\n \"objectifsPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n } ],\n \"statut\" : \"Cree\"\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(EpDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// /// /// - /// Poursuivre le processus de l'EP ou bien seulement sauvegarder les modifications + /// Sauvegarder une saisie EP. /// - /// id EP - /// EP mise à jour avec succès - /// Acces interdit + /// Id d'un EP + /// EP sauvegardé avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/ep/{idEP}/updatesaisie")] + [Route("/api/ep/saisie/{idEP}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("UpdateSaisieEP")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult UpdateSaisieEP([FromBody]EpSaisieDTO body, [FromRoute][Required]long? idEP) + [SwaggerOperation("UpdateEPSaisie")] + [SwaggerResponse(statusCode: 200, type: typeof(EpSaisieDTO), description: "EP sauvegardé avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateEPSaisie([FromBody]EpSaisieDTO body, [FromRoute][Required]long? idEP) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); + // return StatusCode(200, default(EpSaisieDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - throw new NotImplementedException(); + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"objectifs\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5\n } ],\n \"augmentationSalaire\" : {\n \"augmentationPrimeMission\" : 9.36931,\n \"id\" : 5,\n \"augmentation\" : 9.965781,\n \"message\" : \"message\"\n },\n \"cv\" : \"cv\",\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"documents\" : [ {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n }, {\n \"typeDocument\" : \"EPS\",\n \"id\" : 9,\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n } ],\n \"choixEntretien\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"obligatoire\" : true,\n \"engagements\" : [ {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n }, {\n \"action\" : \"action\",\n \"id\" : 4,\n \"dispositif\" : \"dispositif\",\n \"modalite\" : \"modalite\",\n \"dateLimite\" : \"2000-01-23T04:56:07.000+00:00\",\n \"etatEngagement\" : \"EnAttente\",\n \"raisonNonRealisable\" : \"raisonNonRealisable\"\n } ],\n \"id\" : 0,\n \"type\" : \"EPS\",\n \"objectifsPrecedent\" : [ {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n }, {\n \"libelle\" : \"libelle\",\n \"id\" : 5,\n \"statutObjectif\" : \"Atteint\",\n \"commentaire\" : \"commentaire\"\n } ]\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(EpSaisieDTO); //TODO: Change the data returned + return new ObjectResult(example); } } } diff --git a/EPAServeur/Controllers/FormationsApi.cs b/EPAServeur/Controllers/FormationsApi.cs index bdb5999..38166bb 100644 --- a/EPAServeur/Controllers/FormationsApi.cs +++ b/EPAServeur/Controllers/FormationsApi.cs @@ -3,678 +3,454 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 - * + * OpenAPI spec version: 1.3.6 + * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ using System; using System.Collections.Generic; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; +using Swashbuckle.AspNetCore.SwaggerGen; using Newtonsoft.Json; using System.ComponentModel.DataAnnotations; using IO.Swagger.Attributes; +using IO.Swagger.Security; +using Microsoft.AspNetCore.Authorization; using IO.Swagger.DTO; -using EPAServeur.IServices; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using EPAServeur.Exceptions; -using Microsoft.EntityFrameworkCore; namespace IO.Swagger.Controllers -{ +{ /// - /// + /// /// [ApiController] public class FormationsApiController : ControllerBase - { - private readonly IFormationService formationService; - private readonly ILogger logger; - - public FormationsApiController(IFormationService _formationService, ILogger _logger) - { - formationService = _formationService; - logger = _logger; - } - + { /// - /// + /// /// - /// Ajouter une nouvelle formation + /// Créer une nouvelle formation. /// /// Formation créée avec succès - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPost] [Route("/api/formations")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("AjouterFormation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task AjouterFormation([FromBody] FormationDTO body) - { - logger.LogInformation("Ajout d'une nouvelle formation."); - - FormationDTO nouvelleFormation = null; - - try - { - nouvelleFormation = await formationService.AddFormationAsync(body); - } - catch (FormationInvalidException) - { - logger.LogWarning("Des données sont manquants, la nouvelle formation ne peut pas être ajoutée."); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur est survenue dans la base de données durant l'ajout de la nouvelle formation."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de l'ajout de la formation note."); - } - - logger.LogInformation("Nouvelle formation ajoutée."); - - return Created("", nouvelleFormation); + [SwaggerOperation("AddFormation")] + [SwaggerResponse(statusCode: 201, type: typeof(FormationDTO), description: "Formation créée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult AddFormation([FromBody]FormationDTO body) + { + //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(201, default(FormationDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(FormationDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Supprimer une formation - /// id formation + /// Supprimer une formation par son id. + /// Id d'une formation /// Formation supprimée avec succès - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpDelete] - [Route("/api/formations/{idFormation}/supprimer")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/formations/{idFormation}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("DeleteFormation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task DeleteFormation([FromRoute][Required] long? idFormation) - { - try - { - logger.LogInformation("Suppresion de la formation {idFormation}.", idFormation); - - FormationDTO formation = await formationService.DeleteFormationByIdAsync(idFormation); - } - catch (FormationIncompatibleIdException) - { - logger.LogError("Impossible de supprimer la formation car l'id de la formation passé en paramètre est null."); - } - catch (FormationNotFoundException) - { - logger.LogError("Impossible de supprimer la formation d'id {idFormation} car elle n'existe pas.", idFormation); - - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune formation trouvée" - }; - - return NotFound(erreur); - } - catch (DbUpdateConcurrencyException) - { - logger.LogWarning("La formation {idFormation} n'a pas pu être supprimée car elle est prise par une autre ressource.", idFormation); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur a eu lieu, la formation {idFormation} n'a pas pu être supprimée.", idFormation); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la suppression de la formation {idFormation}.", idFormation); - } - - logger.LogInformation("Formation {idFormation} supprimée avec succès.", idFormation); - - return NoContent(); - } + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult DeleteFormation([FromRoute][Required]long? idFormation) + { + //TODO: Uncomment the next line to return response 204 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(204); - /// - /// - /// - /// Récupérer les formations annulées - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/formations/annulees")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetFormationAnnulees")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetFormationAnnulees([FromQuery][Required()] bool? asc, [FromQuery][Required()] int? numPage, [FromQuery][Required()] int? parPAge, [FromQuery] int? idAgence, [FromQuery] string texte, [FromQuery] string tri) - { - logger.LogInformation("Récupération de la liste des formations annulées."); - - IEnumerable formations = null; - - try - { - formations = await formationService.GetFormationAnnuleesAsync(asc, numPage, parPAge, idAgence, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des formations annulées est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des formations annulées."); - } - - if (formations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune formation annulée" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des formations annulées récupérée."); - - return Ok(formations); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); } /// - /// + /// /// - /// Récupérer une formation par son id - /// id formation + /// Récupérer une formation par son id. + /// Id d'une formation /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/formations/{idFormation}")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetFormationById")] [SwaggerResponse(statusCode: 200, type: typeof(FormationDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetFormationById([FromRoute][Required] long? idFormation) - { - logger.LogInformation("Récupération de la formation {idFormation}.", idFormation); - - FormationDTO formationDTO = null; - - try - { - formationDTO = await formationService.GetFormationByIdAsync(idFormation); - } - catch (ArgumentNullException) - { - logger.LogError("L'argument passé dans la requête pour récupérer une formation est invalide."); - } - catch (FormationNotFoundException) - { - logger.LogError("Aucune formation ne correspond à l'id {idFormation} recherchée.", idFormation); - - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "La formation n'existe pas", - }; - - return NotFound(erreurDTO); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la formation {idFormation}.", idFormation); - } - - logger.LogInformation("Formation {idFormation} récupérée.", idFormation); - - return Ok(formationDTO); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetFormationById([FromRoute][Required]long? idFormation) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(FormationDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"heure\" : 1,\n \"participations\" : [ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n }, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n } ],\n \"organisme\" : \"organisme\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"type\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n },\n \"intitule\" : \"intitule\",\n \"mode\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n },\n \"jour\" : 1,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"estRealisee\" : true,\n \"id\" : 3,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idAgence\" : 7,\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(FormationDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Récupérer les formations réalisées - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau + /// Récupérer la liste des formations. /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// liste des ids des statuts des formations à récupérer + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/formations/realisees")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/formations")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetFormationRealisee")] + [SwaggerOperation("GetFormations")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetFormationRealisee([FromQuery][Required()] bool? asc, [FromQuery][Required()] int? numPage, [FromQuery][Required()] int? parPAge, [FromQuery] int? idAgence, [FromQuery] string texte, [FromQuery] string tri) - { - logger.LogInformation("Récupération de la liste des formations réalisées."); - - IEnumerable formations = null; - - try - { - formations = await formationService.GetFormationRealiseesAsync(asc, numPage, parPAge, idAgence, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des formations réalisées est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des formations réalisées."); - } - - if (formations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune formation réalisée" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des formations réalisées récupérée."); - - return Ok(formations); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetFormations([FromQuery]long? idAgence, [FromQuery]List idStatuts, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"nbParticipations\" : 6,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"organisme\" : \"organisme\",\n \"id\" : 0,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"intitule\" : \"intitule\",\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n}, {\n \"nbParticipations\" : 6,\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"organisme\" : \"organisme\",\n \"id\" : 0,\n \"dateFin\" : \"2000-01-23T04:56:07.000+00:00\",\n \"origine\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n },\n \"estCertifiee\" : true,\n \"intitule\" : \"intitule\",\n \"statut\" : {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n }\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } - /// - /// + /// /// - /// Récupérer la liste des formations - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau + /// Récupérer le nombre total de formations. /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Statut de la formation - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// liste des ids des statuts des formations à récupérer + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// Date à partir de laquelle les données son récupérées + /// Date jusqu'à laquelle les données sont récupérées /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/formations")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/formations/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetFormations")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetFormations([FromQuery][Required()] bool? asc, [FromQuery][Required()] int? numPage, [FromQuery][Required()] int? parPAge, [FromQuery] int? idAgence, [FromQuery] int? statutFormation, [FromQuery] string texte, [FromQuery] string tri) - { - logger.LogInformation("Récupération de la liste des formations."); - - IEnumerable formations = null; - - try - { - formations = await formationService.GetFormationsAsync(asc, numPage, parPAge, idAgence, statutFormation, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des formations est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des formations."); - } - - if (formations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune formation" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des formations récupérée."); - - return Ok(formations); + [SwaggerOperation("GetFormationsCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetFormationsCount([FromQuery]long? idAgence, [FromQuery]List idStatuts, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri, [FromQuery]DateTime? dateDebut, [FromQuery]DateTime? dateFin) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Récupérer les modes de formation + /// Récupérer la liste des modes de formation. /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/modesFormation")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/modesformation")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetModesFormation")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetModesFormation() - { - logger.LogInformation("Récupération de la liste des modes de formation."); - - IEnumerable modeFormations = null; - - try - { - modeFormations = await formationService.GetModesFormationAsync(); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des modes de formation est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des modes de formation."); - } - - if (modeFormations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucun mode de formation" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des modes de formation récupérée."); - - return Ok(modeFormations); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetModesFormation() + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n}, {\n \"libelle\" : \"libelle\",\n \"id\" : 1\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Récupérer les origines de formation + /// Récupérer la liste des origines de formation. /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/originesFormation")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/originesformation")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetOriginesFormation")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetOriginesFormation() - { - logger.LogInformation("Récupération de la liste des origines de formation."); - - IEnumerable origineFormations = null; - - try - { - origineFormations = await formationService.GetOriginesFormationAsync(); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des origines de formation est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des origines de formation."); - } - - if (origineFormations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune origine de formation" - }; - return NotFound(erreur); - } - - logger.LogInformation("Liste des origines de formation récupérée."); - - return Ok(origineFormations); - } - - /// - /// - /// - /// Récupérer les formations plannifié et replannifié - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/formations/prochaines")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetProchainesFormation")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetProchainesFormation([FromQuery][Required()] bool? asc, [FromQuery][Required()] int? numPage, [FromQuery][Required()] int? parPAge, [FromQuery] int? idAgence, [FromQuery] string texte, [FromQuery] string tri) - { - logger.LogInformation("Récupération de la liste des prochaines formations."); - - IEnumerable formations = null; - - try - { - formations = await formationService.GetProchainesFormationAsync(asc, numPage, parPAge, idAgence, texte, tri); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des prochaines formations est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des prochaines formations."); - } - - if (formations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune prochaine formation" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des prochaines formations récupérée."); - - return Ok(formations); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetOriginesFormation() + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n}, {\n \"libelle\" : \"libelle\",\n \"id\" : 2\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Récupérer les statuts de formation + /// Récupérer la liste des statuts de formation. /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/statutsFormation")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/statutsformation")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetStatutsFormation")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetStatutsFormation() - { - logger.LogInformation("Récupération de la liste des statuts de formation."); - - IEnumerable statutFormations = null; - - try - { - statutFormations = await formationService.GetStatutsFormationAsync(); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des statuts de formation est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des statuts de formation."); - } - - if (statutFormations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucun statut de formation" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des statuts de formation récupérée."); - - return Ok(statutFormations); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetStatutsFormation() + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n}, {\n \"libelle\" : \"libelle\",\n \"id\" : 4\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Récupérer les types de formation + /// Récupérer la liste des types de formation. /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/typesFormation")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/typesformation")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetTypesFormation")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task GetTypesFormation() - { - logger.LogInformation("Récupération de la liste des types de formation."); - - IEnumerable typeFormations = null; - - try - { - typeFormations = await formationService.GetTypesFormationAsync(); - } - catch (ArgumentNullException) - { - logger.LogError("Un des arguments passés dans la requête pour récupérer la liste des types de formation est invalide."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la liste des types de formation."); - } - - if (typeFormations == null) - { - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucun type de formation" - }; - - return NotFound(erreur); - } - - logger.LogInformation("Liste des types de formation récupérée."); - - return Ok(typeFormations); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetTypesFormation() + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n}, {\n \"libelle\" : \"libelle\",\n \"id\" : 6\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Mettre à jour une formation + /// Mettre à jour une formation. /// - /// id formation + /// Id d'une formation /// formation mise à jour - /// Formation créée avec succès - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/formations/{idFormation}/update")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/formations/{idFormation}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("UpdateFormation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual async Task UpdateFormation([FromBody] FormationDTO body, [FromRoute][Required] long? idFormation) - { - logger.LogInformation("Mise à jour de la formation d'id {idFormation}.", idFormation); + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateFormation([FromBody]FormationDTO body, [FromRoute][Required]long? idFormation) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200); - FormationDTO formation = null; - - try - { - formation = await formationService.UpdateFormationAsync(idFormation, body); - } - catch (FormationInvalidException) - { - logger.LogWarning("Des données sont manquants, la formation {idFormation} ne peut pas être mise à jour.", idFormation); - } - catch (FormationIncompatibleIdException) - { - logger.LogError("L'id de la formation à mettre à jour {body.Id} et l'id de la formation avec les nouvelles informations {idFormation} sont différents.", body.Id, idFormation); - } - catch (DbUpdateConcurrencyException) - { - logger.LogError("La formation {idFormation} n'a pas pu être mise à jour car elle est prise par une autre ressource.", idFormation); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur est survenue dans la base de données lors de la mise à jour de la formation {idFormation}.", idFormation); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la mise à jour de la formation {idFormation}.", idFormation); - } - - if (formation == null) - { - try - { - formation = await formationService.AddFormationAsync(body); - } - catch (FormationInvalidException) - { - logger.LogWarning("Des données sont manquants, la nouvelle formation ne peut pas être ajoutée."); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur est survenue dans la base de données durant l'ajout de la nouvelle formation."); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de l'ajout de la formation note."); - } - - logger.LogInformation("Nouvelle formation ajoutée."); - - return Created("", formation); - } - - logger.LogInformation("Update effectué avec succès"); - - return Ok(formation); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); } } } diff --git a/EPAServeur/Controllers/NotesApi.cs b/EPAServeur/Controllers/NotesApi.cs index 5bb1188..9e82c2d 100644 --- a/EPAServeur/Controllers/NotesApi.cs +++ b/EPAServeur/Controllers/NotesApi.cs @@ -3,8 +3,8 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 - * + * OpenAPI spec version: 1.3.6 + * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ using System; @@ -18,382 +18,293 @@ using IO.Swagger.Attributes; using IO.Swagger.Security; using Microsoft.AspNetCore.Authorization; using IO.Swagger.DTO; -using EPAServeur.IServices; -using EPAServeur.Models.Notes; -using Microsoft.Extensions.Logging; -using Microsoft.EntityFrameworkCore; -using EPAServeur.Exceptions; -using Microsoft.OpenApi.Expressions; -using IO.Swagger.ClientCollaborateur; namespace IO.Swagger.Controllers -{ +{ /// - /// + /// /// [ApiController] public class NotesApiController : ControllerBase - { - private readonly INoteService noteService; - private readonly ILogger logger; + { + /// + /// + /// + /// Créer une nouvelle note. + /// + /// Note créée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPost] + [Route("/api/notes/")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("AddNote")] + [SwaggerResponse(statusCode: 201, type: typeof(DetailsNoteDTO), description: "Note créée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult AddNote([FromBody]DetailsNoteDTO body) + { + //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(201, default(DetailsNoteDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); - public NotesApiController(INoteService _noteService, ILogger _logger) - { - noteService = _noteService; - logger = _logger; - } + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idAuteur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateMiseAjour\" : \"2000-01-23T04:56:07.000+00:00\",\n \"titre\" : \"titre\",\n \"texte\" : \"texte\",\n \"id\" : 0,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n }\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DetailsNoteDTO); //TODO: Change the data returned + return new ObjectResult(example); + } /// - /// + /// /// - /// Supprimer une note - /// id note - /// Note supprimée - /// Acces interdit - /// Ressource n'a pas été trouvée + /// Supprimer une note. + /// Id d'une note + /// Note supprimée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpDelete] - [Route("/api/notes/{idNote}/supprimer")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/notes/{idNote}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("DeleteNote")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] public virtual IActionResult DeleteNote([FromRoute][Required]long? idNote) - { - //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(403, default(ErreurDTO)); - try - { - logger.LogInformation("Suppresion de la note {idNote}", idNote); - noteService.SupprimerNote(idNote); - - } - catch(NoteNotFoundException) - { - logger.LogError("Impossible de supprimer la note d'id {idNote} car elle n'existe pas", idNote); - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune note trouvé" - }; - return NotFound(erreur); - } - catch(DbUpdateConcurrencyException) { - logger.LogWarning("La note {idNote} n'a pas pu être supprimé car elle était prise par une autre ressource.", idNote); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur a eu lieu, la note {idNote} n'a pas pu être supprimée.", idNote); - } - catch(Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la suppression de la note {idNote}",idNote); - } - logger.LogInformation("Note {idNote} supprimée avec sucès", idNote); - return NoContent(); + { + //TODO: Uncomment the next line to return response 204 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(204); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + + throw new NotImplementedException(); } /// - /// + /// /// - /// Récupérer une note par son id - /// id note + /// Récupérer une note par son id. + /// Id d'une note /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] [Route("/api/notes/{idNote}")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("GetNoteById")] [SwaggerResponse(statusCode: 200, type: typeof(DetailsNoteDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] public virtual IActionResult GetNoteById([FromRoute][Required]long? idNote) - { + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(DetailsNoteDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération de la note {idNote}", idNote); - DetailsNoteDTO note = null; - try - { - note = noteService.GetNoteById(idNote); - } - catch(NoteNotFoundException) - { - logger.LogError("Aucune note ne correspond à l'id {idNote} recherchée", idNote); - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucune note n'a été trouvée" - }; - return NotFound(erreur); - - } - catch (DbUpdateConcurrencyException) - { - logger.LogWarning("La note {idNote} n'a pas pu être récupérée car elle était prise par une autre ressource.", idNote); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur a eu lieu, la note {idNote} n'a pas pu être récupérée.", idNote); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération de la note {idNote}", idNote); - } - logger.LogInformation("Note d'id {idNote} trouvée",idNote); - return Ok(note); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idAuteur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateMiseAjour\" : \"2000-01-23T04:56:07.000+00:00\",\n \"titre\" : \"titre\",\n \"texte\" : \"texte\",\n \"id\" : 0,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n }\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DetailsNoteDTO); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Récupérer toutes les notes - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer les notes d’un auteur. + /// Id de l'auteur + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué /// OK - /// Acces interdit + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/notes/")] + [Route("/api/notes/{idAuteur}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetNotes")] + [SwaggerOperation("GetNotesAuteur")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetNotes([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) - { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); - - //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(403, default(ErreurDTO)); - throw new NotImplementedException(); - } + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetNotesAuteur([FromRoute][Required]Guid? idAuteur, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(List)); - /// - /// - /// - /// Récupérer les notes d'une personne a écrite - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id referent - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/notes/auteur/{idReferent}")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetNotesByAuteur")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetNotesByAuteur([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idReferent, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) - { - //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération des notes de l'auteur d'id {idReferent}", idReferent); - IEnumerable notes = null; - try - { - notes = noteService.GetNotesByAuteur(idReferent, asc, numPage, parPAge, texte, tri); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la discussion avec le service Collaborateur"); - } - catch (ReferentNotFoundException) - { - logger.LogError("Le référent {idReferent} n'a pas été trouvé", idReferent); - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucun id ne correspond au référent" - }; - return NotFound(erreur); - } - catch (DbUpdateConcurrencyException) - { - logger.LogWarning("Les notes du référents {idReferent} n'ont pas pu être récupérées car une ou plusieurs notes sont prises par une autre ressource.", idReferent); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur dans la base de données est survenue lors de la récupération des notes du référent {idRefrent}", idReferent); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération des notes du référebt {idReferent}", idReferent); - } - logger.LogInformation("Liste des notes de l'auteur {idReferent} récupérée", idReferent); - return Ok(notes); - } + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); - /// - /// - /// - /// Récupérer une note par son id - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id collaborateur - /// id referent - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/notes/auteur/{idReferent}/collaborateur/{idCollaborateur}")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetNotesByCollaborateur")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetNotesByCollaborateur([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idCollaborateur, [FromRoute][Required]Guid? idReferent, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) - { //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Récupération des notes de l'auteur {idReferent} sur un collaborateur {idCollaborateur}", idReferent, idCollaborateur); - IEnumerable notes = null; - try - { - notes = noteService.GetNotesByCollaborateur(idReferent, idCollaborateur, asc, numPage, parPAge, texte, tri); - - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la discussion avec le service Collaborateur"); - } - catch (CollaborateurNotFoundException) - { - logger.LogError("Le référent {idReferent} n'a pas été trouvé", idReferent); - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucun id ne correspond au référent" - }; - return NotFound(erreur); - } - catch(ReferentNotFoundException) - { - logger.LogError("Le collaborateur {idCollaborateur} n'a pas été trouvé", idCollaborateur); - ErreurDTO erreur = new ErreurDTO() - { - Code = 404, - Message = "Aucun id ne correspond au collaborateur" - }; - return NotFound(erreur); - } - catch (DbUpdateConcurrencyException) - { - logger.LogWarning("Les notes du référents {idReferent} n'ont pas pu être récupérées pour le collaborateur {idCollaborateur} car une ou plusieurs notes sont prises par une autre ressource", idReferent, idCollaborateur); - } - catch (DbUpdateException) - { - logger.LogError("Une erreur a eu lieu dans la base de données lors de la récupération des notes du référent {idReferent} pour le collaborateur {idCollaborateur}.", idReferent, idCollaborateur); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue a eu lieu lors de la récupération des notes du référent { idReferent} pour le collaborateur { idCollaborateur}.", idReferent, idCollaborateur); - } - logger.LogInformation("Liste des notes de l'auteur {idReferent} sur un collaborateur {idCollaborateur} trouvée", idReferent, idCollaborateur); - return Ok(notes); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "[ {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateMiseAJour\" : \"2000-01-23T04:56:07.000+00:00\",\n \"titre\" : \"titre\",\n \"id\" : 0,\n \"collaborateur\" : \"collaborateur\"\n}, {\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateMiseAJour\" : \"2000-01-23T04:56:07.000+00:00\",\n \"titre\" : \"titre\",\n \"id\" : 0,\n \"collaborateur\" : \"collaborateur\"\n} ]"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject>(exampleJson) + : default(List); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Ajouter une nouvelle note - /// - /// Note créée avec succès - /// Acces interdit - [HttpPost] - [Route("/api/notes/nouvellenote")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + /// Récupérer le nombre total de notes d’un auteur. + /// Id de l'auteur + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur + [HttpGet] + [Route("/api/notes/{idAuteur}/count")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("NouvelleNote")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult NouvelleNote([FromBody]DetailsNoteDTO body) - { + [SwaggerOperation("GetNotesAuteurCount")] + [SwaggerResponse(statusCode: 200, type: typeof(long?), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetNotesAuteurCount([FromRoute][Required]Guid? idAuteur, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(long?)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Ajout d'une nouvelle note"); - DetailsNoteDTO nouvelleNote = null; - try - { - nouvelleNote = noteService.AjouterNote(body); - } - catch (NoteInvalideException) { logger.LogWarning("Des données sont manquants, la nouvelle note ne peut pas être ajoutée"); } - catch (DbUpdateException) { logger.LogError("Une erreur est survenue dans la base de données durant l'ajout de la nouvelle note"); } - catch(Exception) { logger.LogError("Une erreur inconnue est survenue lors de l'ajout de la nouvelle note"); } - logger.LogInformation("Nouvelle note ajoutée"); - return Created("",nouvelleNote); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "0"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(long?); //TODO: Change the data returned + return new ObjectResult(example); } /// - /// + /// /// - /// Mettre à jour une note + /// Modifier une note. /// - /// id note - /// Note mise à jour avec succès - /// Note créée avec succès - /// Acces interdit + /// Id d'une note + /// Note modifiée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur [HttpPut] - [Route("/api/notes/{idNote}/updateNote")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [Route("/api/notes/{idNote}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] [SwaggerOperation("UpdateNote")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult UpdateNote([FromBody] DetailsNoteDTO body, [FromRoute][Required] long? idNote) - { + [SwaggerResponse(statusCode: 200, type: typeof(DetailsNoteDTO), description: "Note modifiée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateNote([FromBody]DetailsNoteDTO body, [FromRoute][Required]long? idNote) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(DetailsNoteDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); - logger.LogInformation("Mise à jour de la note d'id {idNote}", idNote); - DetailsNoteDTO note = null; - try - { - note = noteService.UpdateNote(idNote, body); - } - catch(ApiException) - { - logger.LogError("Une erreur est survenue lors de la discussion avec le service Collaborateur"); - } - catch(NoteIdImcompatibleException) - { - logger.LogError("L'id de la note à mettre à jour {body.Id} et l'id de la note avec les nouvelels information {idNote} sont différents", body.Id, idNote); - } - catch(NoteNotFoundException) - { - logger.LogError("La note {idNote} n'a pas pu être mise à jour car elle n'existe pas", idNote); - } - catch (NoteInvalideException) - { - logger.LogWarning("Des données sont manquants, la note {idNote} ne peut pas être mise à jour", idNote); - } - catch (DbUpdateConcurrencyException) - { - logger.LogError("La note {idNote} n'a pas pu être mise à jour car elle été prise par une autre ressource", idNote); - } - catch(DbUpdateException) - { - logger.LogError("Une erreur est survenue dans la base de données lors de la mise à jour de la note {idNote}", idNote); - } - catch(Exception) { - logger.LogError("Une erreur inconnue est survenue lors de la mise à jour de la note {idNote}", idNote); - } - logger.LogInformation("Update effectué avec succès"); - return Ok(note); - //TODO: Uncomment the next line to return response 201 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(201); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idAuteur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateMiseAjour\" : \"2000-01-23T04:56:07.000+00:00\",\n \"titre\" : \"titre\",\n \"texte\" : \"texte\",\n \"id\" : 0,\n \"collaborateur\" : {\n \"businessUnit\" : {\n \"agence\" : {\n \"bu\" : [ null, null ],\n \"id\" : 6,\n \"nom\" : \"nom\"\n },\n \"id\" : 0,\n \"nom\" : \"nom\"\n },\n \"mailApside\" : \"\",\n \"dateArrivee\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"dateDepart\" : \"2000-01-23T04:56:07.000+00:00\",\n \"nom\" : \"nom\",\n \"prenom\" : \"prenom\"\n }\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(DetailsNoteDTO); //TODO: Change the data returned + return new ObjectResult(example); } } -} \ No newline at end of file +} diff --git a/EPAServeur/Controllers/ParticipationsFormationsApi.cs b/EPAServeur/Controllers/ParticipationsFormationsApi.cs index c9f2bd6..446cf7e 100644 --- a/EPAServeur/Controllers/ParticipationsFormationsApi.cs +++ b/EPAServeur/Controllers/ParticipationsFormationsApi.cs @@ -3,7 +3,7 @@ * * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. * - * OpenAPI spec version: 1.3.4 + * OpenAPI spec version: 1.3.6 * * Generated by: https://github.com/swagger-api/swagger-codegen.git */ @@ -30,31 +30,47 @@ namespace IO.Swagger.Controllers /// /// /// - /// Consulter une évaluation d'une formation - /// id participation formation - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/evaluations/participationformation/{idParticipationFormation}")] + /// Evaluer une formation. + /// + /// Id d'une participation formation + /// Evaluation envoyée avec succès + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPut] + [Route("/api/participationsformation/{idParticipationFormation}/evaluation")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("ConsulterEvaluation")] - [SwaggerResponse(statusCode: 200, type: typeof(EvaluationDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult ConsulterEvaluation([FromRoute][Required]long? idParticipationFormation) + [SwaggerOperation("EvaluerFormation")] + [SwaggerResponse(statusCode: 200, type: typeof(EvaluationDTO), description: "Evaluation envoyée avec succès")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult EvaluerFormation([FromBody]EvaluationDTO body, [FromRoute][Required]long? idParticipationFormation) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(EvaluationDTO)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "{\n \"idParticipation\" : 0,\n \"saisies\" : [ {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n }, {\n \"note\" : 7,\n \"texte2\" : \"texte2\",\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"typeChamp\" : \"typeChamp\",\n \"ordre\" : 5,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 4,\n \"typeSaisie\" : \"typeSaisie\"\n },\n \"typeSaisie\" : 6,\n \"niveau\" : 1\n } ]\n}"; + exampleJson = "{\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"estCertifiee\" : true,\n \"intitule\" : \"intitule\",\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n}"; var example = exampleJson != null ? JsonConvert.DeserializeObject(exampleJson) @@ -65,106 +81,91 @@ namespace IO.Swagger.Controllers /// /// /// - /// Evaluer une formation - /// - /// id participation formation - /// Evaluation envoyée avec succès - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpPut] - [Route("/api/evaluations/participationformation/{idParticipationFormation}/evaluer")] - [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("EvaluerFormation")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult EvaluerFormation([FromBody]EvaluationDTO body, [FromRoute][Required]long? idParticipationFormation) - { - //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200); - - //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(403, default(ErreurDTO)); - - //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(404, default(ErreurDTO)); - - throw new NotImplementedException(); - } - - /// - /// - /// - /// Récupérer la liste des formations auxquelles est inscrit le collaborateur - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id collaborateur - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer une évaluation faite par un collaborateur. + /// Id d'une participation formation /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/participationsformation/collaborateur/{idCollaborateur}")] + [Route("/api/participationsformation/{idParticipationFormation}/evaluation")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetParticipationByCollaborateur")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetParticipationByCollaborateur([FromQuery][Required()]bool? asc, [FromRoute][Required]Guid? idCollaborateur, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerOperation("GetEvaluationCollaborateur")] + [SwaggerResponse(statusCode: 200, type: typeof(EvaluationDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetEvaluationCollaborateur([FromRoute][Required]long? idParticipationFormation) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... - // return StatusCode(200, default(List)); + // return StatusCode(200, default(EvaluationDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"date\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"formation\" : \"formation\",\n \"collaborateur\" : \"collaborateur\",\n \"statut\" : \"statut\"\n}, {\n \"date\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"formation\" : \"formation\",\n \"collaborateur\" : \"collaborateur\",\n \"statut\" : \"statut\"\n} ]"; + exampleJson = "{\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"estCertifiee\" : true,\n \"intitule\" : \"intitule\",\n \"saisies\" : [ {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n }, {\n \"note\" : 6,\n \"texte\" : \"texte\",\n \"id\" : \"id\",\n \"champ\" : {\n \"ordre\" : 6,\n \"texte\" : \"texte\",\n \"section\" : \"section\",\n \"soussection\" : \"soussection\",\n \"id\" : 3,\n \"typeSaisie\" : \"Commentaire\"\n }\n } ]\n}"; var example = exampleJson != null - ? JsonConvert.DeserializeObject>(exampleJson) - : default(List); //TODO: Change the data returned + ? JsonConvert.DeserializeObject(exampleJson) + : default(EvaluationDTO); //TODO: Change the data returned return new ObjectResult(example); } /// /// /// - /// Récupérer la liste des participants d'une formation - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id formation - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue + /// Récupérer la liste des participations de formation d’un collaborateur. + /// Id du collaborateur + /// Indique si les données sont récupérées dans l'ordre croissant ou non + /// Numéro de la page du tableau à afficher + /// Nombre d’élément maximum à afficher dans le tableau + /// Texte permettant de filtrer les données + /// Colonne du tableau sur lequel le tri devra être effectué /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// Une erreur est survenue sur le serveur [HttpGet] - [Route("/api/participationsformation/formation/{idFormation}")] + [Route("/api/participationsformation/{idCollaborateur}")] [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] [ValidateModelState] - [SwaggerOperation("GetParticipationByFormation")] + [SwaggerOperation("GetParticipationByCollaborateur")] [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual IActionResult GetParticipationByFormation([FromQuery][Required()]bool? asc, [FromRoute][Required]long? idFormation, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult GetParticipationByCollaborateur([FromRoute][Required]Guid? idCollaborateur, [FromQuery]bool? asc, [FromQuery]int? numPage, [FromQuery][Range(5, 100)]int? parPAge, [FromQuery]string texte, [FromQuery]string tri) { //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(List)); + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(403, default(ErreurDTO)); //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); string exampleJson = null; - exampleJson = "[ {\n \"date\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"formation\" : \"formation\",\n \"collaborateur\" : \"collaborateur\",\n \"statut\" : \"statut\"\n}, {\n \"date\" : \"2000-01-23T04:56:07.000+00:00\",\n \"idCollaborateur\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 0,\n \"formation\" : \"formation\",\n \"collaborateur\" : \"collaborateur\",\n \"statut\" : \"statut\"\n} ]"; + exampleJson = "[ {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n}, {\n \"estEvaluee\" : true,\n \"dateCreation\" : \"2000-01-23T04:56:07.000+00:00\",\n \"dateDebut\" : \"2000-01-23T04:56:07.000+00:00\",\n \"id\" : 7,\n \"intitule\" : \"intitule\"\n} ]"; var example = exampleJson != null ? JsonConvert.DeserializeObject>(exampleJson) diff --git a/EPAServeur/Controllers/ReferentsApi.cs b/EPAServeur/Controllers/ReferentsApi.cs deleted file mode 100644 index b104ff1..0000000 --- a/EPAServeur/Controllers/ReferentsApi.cs +++ /dev/null @@ -1,242 +0,0 @@ -/* - * API du serveur de l'application de digitalisation des EP - * - * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. - * - * OpenAPI spec version: 1.3.4 - * - * Generated by: https://github.com/swagger-api/swagger-codegen.git - */ -using System; -using System.Collections.Generic; -using Microsoft.AspNetCore.Mvc; -using Swashbuckle.AspNetCore.Annotations; -using Newtonsoft.Json; -using System.ComponentModel.DataAnnotations; -using IO.Swagger.Attributes; -using IO.Swagger.DTO; -using EPAServeur.IServices; -using System.Net; -using Microsoft.AspNetCore.Authorization; -using IO.Swagger.Security; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using IO.Swagger.ClientCollaborateur; -using EPAServeur.Exceptions; - -namespace IO.Swagger.Controllers -{ - /// - /// - /// - [ApiController] - public class ReferentsApiController : ControllerBase - { - private readonly IReferentService referentService; - private readonly ILogger logger; - - public ReferentsApiController(IReferentService _referentService, ILogger _logger) - { - referentService = _referentService; - logger = _logger; - } - - /// - /// - /// - /// Récupérer un referent par son id - /// id referent - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/referents/{idReferent}")] - ////[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetReferentById")] - [SwaggerResponse(statusCode: 200, type: typeof(ReferentDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetReferentById([FromRoute][Required]Guid? idReferent) - { - logger.LogInformation("Récupération du référent {idReferent}.", idReferent); - - ReferentDTO referentDTO = null; - - try - { - referentDTO = await referentService.GetReferentByIdAsync(idReferent); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service Collaborateur pour récupérer le référent par son id {idReferent}.", idReferent); - } - catch (ReferentNotFoundException) - { - logger.LogError("Le référent {idReferent} est introuvable.", idReferent); - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Le référent n'existe pas", - }; - - return NotFound(erreurDTO); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération du référent {idReferent}.", idReferent); - } - - logger.LogInformation("Référent {idReferent} récupéré.", idReferent); - - return Ok(referentDTO); - } - - /// - /// - /// - /// Récupérer la liste de tous les referents - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Liste des fonctions des collaborateurs que l'on veut récupérer - /// id de l'agence à laquelle sont rattachées les données à récupérer - /// id de la business unit à laquelle sont rattachées les données à récupérer - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - [HttpGet] - [Route("/api/referents")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetReferents")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - public virtual IActionResult GetReferents([FromQuery][Required()]bool? asc, [FromQuery][Required()]int? numPage, [FromQuery][Required()]int? parPAge, [FromQuery]List fonctions, [FromQuery]long? idAgence, [FromQuery]long? idBU, [FromQuery]string texte, [FromQuery]string tri) - { - //IEnumerable referentDTOs = referentService.GetReferents(asc,numPage,parPAge,fonctions,idAgence,idBU,texte,tri); - return NoContent(); - } - - /// - /// - /// - /// Récupérer le référent actuel d'un collaborateur - /// id collaborateur - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/referents/actuel/collaborateur/{idCollaborateur}")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetReferentActuelCollaborateur")] - [SwaggerResponse(statusCode: 200, type: typeof(ReferentDTO), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetReferentActuelCollaborateur([FromRoute][Required] Guid? idCollaborateur) - { - logger.LogInformation("Récupération du référent actuel du collaborateur {idCollaborateur}.", idCollaborateur); - - ReferentDTO referentDTO = null; - - try - { - referentDTO = await referentService.GetReferentActuelCollaborateurAsync(idCollaborateur); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service Collaborateur pour récupérer le référent actuel du collaborateur {idCollaborateur}.", idCollaborateur); - } - catch (ReferentNotFoundException) - { - logger.LogError("Le référent actuel du collaborateur {idCollaborateur} est introuvable.", idCollaborateur); - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Aucun référent actuel pour le collaborateur", - }; - - return NotFound(erreurDTO); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération du référent actuel du collaborateur {idCollaborateur}.", idCollaborateur); - } - - logger.LogInformation("Référent actuel du collaborateur {idCollaborateur} récupéré.", idCollaborateur); - - return Ok(referentDTO); - } - - /// - /// - /// - /// Récupérer la liste des référents d'un collaborateur - /// Préciser si les données sont dans l'ordre (true) ou dans l'ordre inverse (false) - /// id collaborateur - /// Numéro de la page du tableau qui affiche les données - /// Nombre d'éléments affiché sur chaque page du tableau - /// Texte permettant d'identifier l'objet rechercher - /// Colonne du tableau sur lequel le tri s'effectue - /// OK - /// Acces interdit - /// Ressource n'a pas été trouvée - [HttpGet] - [Route("/api/referents/collaborateur/{idCollaborateur}")] - //[Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] - [ValidateModelState] - [SwaggerOperation("GetReferentByCollaborateur")] - [SwaggerResponse(statusCode: 200, type: typeof(List), description: "OK")] - [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "Acces interdit")] - [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "Ressource n'a pas été trouvée")] - public virtual async Task GetReferentsByCollaborateur([FromQuery][Required()] bool? asc, [FromRoute][Required] Guid? idCollaborateur, [FromQuery][Required()] int? numPage, [FromQuery][Required()] int? parPAge, [FromQuery] string texte, [FromQuery] string tri) - { - logger.LogInformation("Récupération de la liste des référents du collaborateur {idCollaborateur}.", idCollaborateur); - - IEnumerable referentDTOs = null; - - try - { - referentDTOs = await referentService.GetReferentsByCollaborateurAsync(asc, idCollaborateur, numPage, parPAge, texte, tri); - } - catch (ApiException) - { - logger.LogError("Une erreur est survenue lors de la communication avec le service collaborateur lors de la récupération de la liste des référents du collaborateur {idReferent}.", idCollaborateur); - } - catch (CollaborateurNotFoundException) - { - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Le collaborateur n'existe pas", - }; - - return NotFound(erreurDTO); - } - catch (Exception) - { - logger.LogError("Une erreur inconnue est survenue lors de la récupération des référents du collaborateur {idCollaborateur}.", idCollaborateur); - } - - if (referentDTOs.Count() == 0) - { - logger.LogInformation("Aucun référent pour le collaborateur {idCollaborateur}.", idCollaborateur); - - ErreurDTO erreurDTO = new ErreurDTO() - { - Code = 404, - Message = "Aucun référent pour le collaborateur", - }; - - return NotFound(erreurDTO); - } - - logger.LogInformation("Liste des référents du collaborateur {idCollaborateur} récupérée", idCollaborateur); - - return Ok(referentDTOs); - } - } -} diff --git a/EPAServeur/Controllers/ReferentsEPApi.cs b/EPAServeur/Controllers/ReferentsEPApi.cs new file mode 100644 index 0000000..c885ee9 --- /dev/null +++ b/EPAServeur/Controllers/ReferentsEPApi.cs @@ -0,0 +1,132 @@ +/* + * API du serveur de l'application de digitalisation des EP + * + * API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire. + * + * OpenAPI spec version: 1.3.6 + * + * Generated by: https://github.com/swagger-api/swagger-codegen.git + */ +using System; +using System.Collections.Generic; +using Microsoft.AspNetCore.Mvc; +using Swashbuckle.AspNetCore.Annotations; +using Swashbuckle.AspNetCore.SwaggerGen; +using Newtonsoft.Json; +using System.ComponentModel.DataAnnotations; +using IO.Swagger.Attributes; +using IO.Swagger.Security; +using Microsoft.AspNetCore.Authorization; +using IO.Swagger.DTO; + +namespace IO.Swagger.Controllers +{ + /// + /// + /// + [ApiController] + public class ReferentsEPApiController : ControllerBase + { + /// + /// + /// + /// Mettre à jour les collaborateurs d'un référent. + /// + /// Id d'un référent + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPut] + [Route("/api/referentsep/referent/{idReferent}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("UpdateCollaborateursReferent")] + [SwaggerResponse(statusCode: 200, type: typeof(ReferentEPDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateCollaborateursReferent([FromBody]ReferentEPDTO body, [FromRoute][Required]Guid? idReferent) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(ReferentEPDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"idsCollaborateur\" : [ \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\", \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\" ]\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(ReferentEPDTO); //TODO: Change the data returned + return new ObjectResult(example); + } + + /// + /// + /// + /// Mettre à jour le référent d'un collaborateur. + /// + /// Id du collaborateur + /// OK + /// L'utilisateur souhaitant accéder à la ressource n'est pas authentifié + /// L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants + /// La ressource n'a pas été trouvée + /// L’opération ne peut pas être effectuée car certaines données sont manquantes + /// Une erreur est survenue sur le serveur + [HttpPut] + [Route("/api/referentsep/collaborateur/{idCollaborateur}")] + [Authorize(AuthenticationSchemes = BearerAuthenticationHandler.SchemeName)] + [ValidateModelState] + [SwaggerOperation("UpdateReferentCollaborateur")] + [SwaggerResponse(statusCode: 200, type: typeof(ReferentEPDTO), description: "OK")] + [SwaggerResponse(statusCode: 401, type: typeof(ErreurDTO), description: "L'utilisateur souhaitant accéder à la ressource n'est pas authentifié")] + [SwaggerResponse(statusCode: 403, type: typeof(ErreurDTO), description: "L’utilisateur souhaitant accéder à la ressource n’a pas les droits d’accès suffisants")] + [SwaggerResponse(statusCode: 404, type: typeof(ErreurDTO), description: "La ressource n'a pas été trouvée")] + [SwaggerResponse(statusCode: 415, type: typeof(ErreurDTO), description: "L’opération ne peut pas être effectuée car certaines données sont manquantes")] + [SwaggerResponse(statusCode: 500, type: typeof(ErreurDTO), description: "Une erreur est survenue sur le serveur")] + public virtual IActionResult UpdateReferentCollaborateur([FromBody]ReferentEPDTO body, [FromRoute][Required]Guid? idCollaborateur) + { + //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(200, default(ReferentEPDTO)); + + //TODO: Uncomment the next line to return response 401 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(401, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 403 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(403, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 404 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(404, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 415 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(415, default(ErreurDTO)); + + //TODO: Uncomment the next line to return response 500 or use other options such as return this.NotFound(), return this.BadRequest(..), ... + // return StatusCode(500, default(ErreurDTO)); + string exampleJson = null; + exampleJson = "{\n \"idReferent\" : \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\",\n \"idsCollaborateur\" : [ \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\", \"046b6c7f-0b8a-43b9-b35d-6489e6daee91\" ]\n}"; + + var example = exampleJson != null + ? JsonConvert.DeserializeObject(exampleJson) + : default(ReferentEPDTO); //TODO: Change the data returned + return new ObjectResult(example); + } + } +} diff --git a/EPAServeur/Services/CollaborateurService.cs b/EPAServeur/Services/CollaborateurService.cs index 30c3d92..2b4286b 100644 --- a/EPAServeur/Services/CollaborateurService.cs +++ b/EPAServeur/Services/CollaborateurService.cs @@ -401,6 +401,7 @@ namespace EPAServeur.Services return collaborateurDTO; } + /// /// Transforme un referent en referentDTO ///