salutcesmoileo #4
@ -57,7 +57,7 @@ paths:
|
||||
- Users
|
||||
security:
|
||||
- bearer: []
|
||||
responses:
|
||||
responses:
|
||||
'200':
|
||||
description: Ok
|
||||
content:
|
||||
@ -122,11 +122,11 @@ paths:
|
||||
description: Successfully changed.
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
/user/{mat}:
|
||||
/user/{RegNo}:
|
||||
parameters:
|
||||
- name: mat
|
||||
- name: RegNo
|
||||
in: path
|
||||
description: Matricule of the user (unique id)
|
||||
description: Regestration number of the user (unique id)
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
@ -147,6 +147,8 @@ paths:
|
||||
tags:
|
||||
- General
|
||||
- Admin
|
||||
- Secretariat
|
||||
- Ext (scientific articles)
|
||||
security:
|
||||
- bearer: []
|
||||
requestBody:
|
||||
@ -188,6 +190,12 @@ paths:
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
/courses/{id}:
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
get:
|
||||
summary: see courses informations
|
||||
tags:
|
||||
@ -200,12 +208,7 @@ paths:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Course'
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
|
||||
delete:
|
||||
summary: delete a course
|
||||
tags:
|
||||
@ -241,7 +244,6 @@ paths:
|
||||
faculty:
|
||||
type: string
|
||||
teachers:
|
||||
type: object
|
||||
$ref: '#/components/schemas/User'
|
||||
assistants:
|
||||
type: array
|
||||
@ -266,7 +268,7 @@ paths:
|
||||
summary: Create a cursus
|
||||
tags:
|
||||
- General
|
||||
- cursus
|
||||
- Cursus
|
||||
security:
|
||||
- bearer: []
|
||||
requestBody:
|
||||
@ -300,7 +302,7 @@ paths:
|
||||
summary: See Cursus's informations
|
||||
tags:
|
||||
- General
|
||||
- cursus
|
||||
- Cursus
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
@ -318,7 +320,7 @@ paths:
|
||||
summary: Delete cursus
|
||||
tags:
|
||||
- General
|
||||
- cursus
|
||||
- Cursus
|
||||
security:
|
||||
- bearer: []
|
||||
responses:
|
||||
@ -330,7 +332,7 @@ paths:
|
||||
summary: Modify cursus
|
||||
tags:
|
||||
- General
|
||||
- cursus
|
||||
- Cursus
|
||||
security:
|
||||
- bearer: []
|
||||
requestBody:
|
||||
@ -347,7 +349,6 @@ paths:
|
||||
faculty:
|
||||
type: string
|
||||
teachers:
|
||||
type: object
|
||||
$ref: '#/components/schemas/User'
|
||||
assistants:
|
||||
type: array
|
||||
@ -366,9 +367,7 @@ paths:
|
||||
description: Cursus modified
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
|
||||
|
||||
|
||||
|
||||
/Requests/{type}:
|
||||
get:
|
||||
summary: Give an array of every requests of the specified type
|
||||
@ -397,7 +396,6 @@ paths:
|
||||
- $ref : '#/components/schemas/RegRequest'
|
||||
discriminator:
|
||||
propertyName : type
|
||||
|
||||
parameters:
|
||||
- name: type
|
||||
in: path
|
||||
@ -432,7 +430,7 @@ paths:
|
||||
'201':
|
||||
description: New request created
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
$ref : '#/components/responses/UnauthorizedError'
|
||||
|
||||
/Requests/{type}/{id}:
|
||||
parameters:
|
||||
@ -487,25 +485,434 @@ paths:
|
||||
security:
|
||||
- bearer: []
|
||||
requestBody:
|
||||
required: true
|
||||
required : true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
oneOf :
|
||||
- $ref : '#/components/schemas/RRRequest'
|
||||
- $ref : '#/components/schemas/SSRequest'
|
||||
- $ref : '#/components/schemas/UnRegRequest'
|
||||
- $ref : '#/components/schemas/ExempRequest'
|
||||
- $ref : '#/components/schemas/RegRequest'
|
||||
discriminator:
|
||||
propertyName : type
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
oneOf :
|
||||
- $ref : '#/components/schemas/RRRequest'
|
||||
- $ref : '#/components/schemas/SSRequest'
|
||||
- $ref : '#/components/schemas/UnRegRequest'
|
||||
- $ref : '#/components/schemas/ExempRequest'
|
||||
- $ref : '#/components/schemas/RegRequest'
|
||||
discriminator:
|
||||
propertyName : type
|
||||
responses:
|
||||
'201':
|
||||
description: State modified
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
|
||||
/lesson:
|
||||
post:
|
||||
summary: create a new lesson
|
||||
tags:
|
||||
- Secretariat
|
||||
- Lesson
|
||||
- Ext (Schedule)
|
||||
security:
|
||||
- bearer: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
date:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
CourseId:
|
||||
type: integer
|
||||
duration:
|
||||
type: number
|
||||
classroom:
|
||||
tonitch marked this conversation as resolved
Outdated
|
||||
type: string
|
||||
responses:
|
||||
'201':
|
||||
description: Lesson created
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
/lesson/{id}:
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
get:
|
||||
summary : See lesson's informations
|
||||
tags:
|
||||
Maxime
commented
peut-être rajouter user dans les tags ? peut-être rajouter user dans les tags ?
LeoMoulin
commented
les tags sont fixs ! les tags sont fixs !
|
||||
- Users
|
||||
- Lesson
|
||||
- Ext (Schedule)
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Lesson'
|
||||
patch:
|
||||
summary : Modify Lesson
|
||||
tags:
|
||||
- Secretariat
|
||||
- Lesson
|
||||
- Ext (Schedule)
|
||||
security:
|
||||
- bearer: []
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
date:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
IDcourse:
|
||||
type: integer
|
||||
duration:
|
||||
type: number
|
||||
classroom:
|
||||
type: string
|
||||
responses:
|
||||
'201':
|
||||
description: Lesson modified
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
|
||||
delete:
|
||||
summary: Delete lesson
|
||||
tags:
|
||||
- Lesson
|
||||
- Secretariat
|
||||
- Ext (Schedule)
|
||||
security:
|
||||
- bearer: []
|
||||
responses:
|
||||
'201':
|
||||
description: Success
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
/scheduleRequest:
|
||||
post:
|
||||
summary: Create a new request
|
||||
tags:
|
||||
- Teacher
|
||||
- ScheduleRequest
|
||||
- Ext (Schedule)
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
requestType:
|
||||
type: string
|
||||
lessonId:
|
||||
type: integer
|
||||
newDate:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
newClassroom:
|
||||
type: string
|
||||
newCourseId:
|
||||
type: integer
|
||||
responses:
|
||||
'201':
|
||||
description: Request created
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
|
||||
/scheduleRequest/{id}:
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
get:
|
||||
summary : See request information
|
||||
tags:
|
||||
- Teacher
|
||||
- Secretariat
|
||||
- ScheduleRequest
|
||||
- Ext (Schedule)
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ScheduleRequest'
|
||||
patch:
|
||||
summary : Modify request
|
||||
tags:
|
||||
- Teacher
|
||||
- ScheduleRequest
|
||||
- Ext (Schedule)
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
newDate:
|
||||
type: string
|
||||
newClassroom:
|
||||
type: string
|
||||
newCourseId:
|
||||
type: integer
|
||||
responses:
|
||||
'201':
|
||||
description: Request modified
|
||||
delete:
|
||||
summary: Delete request
|
||||
tags:
|
||||
- Teacher
|
||||
- Secretariat
|
||||
- ScheduleRequest
|
||||
- Ext (Schedule)
|
||||
responses:
|
||||
'201':
|
||||
description: Success
|
||||
|
||||
|
||||
/display:
|
||||
post:
|
||||
summary: Create a new display
|
||||
tags:
|
||||
- Display
|
||||
- Ext (Schedule)
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
timeMode:
|
||||
type: string
|
||||
displayMode:
|
||||
type: string
|
||||
userId:
|
||||
type: integer
|
||||
responses:
|
||||
'201':
|
||||
description: display created
|
||||
|
||||
/display/{id}:
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
get:
|
||||
summary : See display information
|
||||
tags:
|
||||
- Users
|
||||
- Display
|
||||
- Ext (Schedule)
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Display'
|
||||
patch:
|
||||
summary : Modify display
|
||||
tags:
|
||||
- Users
|
||||
- Display
|
||||
- Ext (Schedule)
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
timeMode:
|
||||
type: string
|
||||
displayMode:
|
||||
type: string
|
||||
responses:
|
||||
'201':
|
||||
description: Display modified
|
||||
# Extension publication scientifique
|
||||
|
||||
/article:
|
||||
post:
|
||||
summary: create an article
|
||||
tags:
|
||||
- Ext (scientific articles)
|
||||
- Researcher
|
||||
security:
|
||||
- bearer : []
|
||||
responses:
|
||||
"201" :
|
||||
description: OK
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
requestBody:
|
||||
required : true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
pdf:
|
||||
type: string
|
||||
description : the B64 version encoding of the pdf file
|
||||
access:
|
||||
type: string
|
||||
summary:
|
||||
type: string
|
||||
language:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
date:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
views:
|
||||
type: integer
|
||||
example:
|
||||
{
|
||||
"access": "private",
|
||||
"pdf": " *the b64 encoding of the pdf* ",
|
||||
"summary": "looks in details about graph's second theorem",
|
||||
"language": "english",
|
||||
"title": "graph's second theorem study",
|
||||
"date":"2023-02-01",
|
||||
"views": 420,
|
||||
"authors" : []
|
||||
}
|
||||
/article/{id}:
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
get:
|
||||
summary: get a certain article
|
||||
tags:
|
||||
- Users
|
||||
- Ext (scientific articles)
|
||||
security:
|
||||
- bearer: []
|
||||
responses:
|
||||
"201":
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Article'
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
|
||||
patch:
|
||||
summary: modify an article
|
||||
tags:
|
||||
- Researcher
|
||||
- Ext (scientific articles)
|
||||
security:
|
||||
- bearer : []
|
||||
responses:
|
||||
"201":
|
||||
description: article modifié
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
requestBody:
|
||||
required : true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
pdf:
|
||||
type: string
|
||||
description : the B64 version encoding of the pdf file
|
||||
access:
|
||||
type: string
|
||||
summary:
|
||||
type: string
|
||||
language:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
date:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
views:
|
||||
type: integer
|
||||
example:
|
||||
{
|
||||
"access": "public",
|
||||
tonitch marked this conversation as resolved
Outdated
tonitch
commented
Vu que ce sont les mêmes données qu'un utilisateur y'a moyen de faire
Vu que ce sont les mêmes données qu'un utilisateur y'a moyen de faire
```yaml
User:
$ref: '#/components/schemas/Users'
Cursus:
type: integer
...
```
LeoMoulin
commented
C'est pas les mêmes ! Pas de regNo dans RegRequest ! C'est pas les mêmes ! Pas de regNo dans RegRequest !
|
||||
"pdf": " *the new b64 encoding of the pdf* ",
|
||||
"summary": "looks in details about the duck's algorithm problem",
|
||||
"language": "english",
|
||||
"title": "duck's algorithm problem solving",
|
||||
"date":"2023-02-01",
|
||||
"views": 10,
|
||||
"authors" : []
|
||||
}
|
||||
|
||||
|
||||
delete:
|
||||
summary: delete own article
|
||||
tags:
|
||||
- Researcher
|
||||
- Ext (scientific articles)
|
||||
security:
|
||||
- bearer: []
|
||||
responses:
|
||||
'201':
|
||||
description: OK
|
||||
'401':
|
||||
$ref: '#/components/responses/UnauthorizedError'
|
||||
|
||||
/DisplayArticle:
|
||||
parameters:
|
||||
- in: query
|
||||
name: author
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
- in: query
|
||||
name: access
|
||||
tonitch marked this conversation as resolved
Outdated
Maxime
commented
à quoi sert RegRequests ? à quoi sert RegRequest**s** ?
LeoMoulin
commented
C'est une genre de sous partie de RegRequest servant un peu de "résumé", je l'ai crée pour palier au fait que quand on arrive sur le menu de séléction des demandes d'inscriptions, je veux les lister, ce faisant je n'ai pas besoin de load toutes les informations de toutes les demandes d'inscription, j'ai juste besoin de quelques attributs pour les lister. C'est une genre de sous partie de RegRequest servant un peu de "résumé", je l'ai crée pour palier au fait que quand on arrive sur le menu de séléction des demandes d'inscriptions, je veux les lister, ce faisant je n'ai pas besoin de load toutes les informations de toutes les demandes d'inscription, j'ai juste besoin de quelques attributs pour les lister.
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
enum: [public, restricted, private]
|
||||
- in: query
|
||||
name: name
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
|
||||
get:
|
||||
summary: get a list of article's data
|
||||
tags:
|
||||
- Users
|
||||
- Ext (scientific articles)
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: "#/components/schemas/DisplayArticle"
|
||||
|
||||
|
||||
components:
|
||||
securitySchemes:
|
||||
bearer:
|
||||
@ -599,6 +1006,7 @@ components:
|
||||
"id": 42,
|
||||
"courses": ['Math', 'Info']
|
||||
}
|
||||
|
||||
RegRequest:
|
||||
type : object
|
||||
properties:
|
||||
@ -676,7 +1084,144 @@ components:
|
||||
State :
|
||||
type : string
|
||||
|
||||
|
||||
Article:
|
||||
type: object
|
||||
properties:
|
||||
articleId:
|
||||
type: integer
|
||||
access :
|
||||
type : string
|
||||
pdf :
|
||||
type : string
|
||||
description : file location
|
||||
summary:
|
||||
type : string
|
||||
language:
|
||||
type : string
|
||||
title :
|
||||
type : string
|
||||
date:
|
||||
type : string
|
||||
views :
|
||||
type : integer
|
||||
authors:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/User'
|
||||
description: first user is the author, the remaining users are co-authors
|
||||
example:
|
||||
{
|
||||
"articleId": 42,
|
||||
"access": "private",
|
||||
"pdf": "/articles/42",
|
||||
"summary": "looks in details about graph's second theorem",
|
||||
"language": "english",
|
||||
"title": "graph's second theorem study",
|
||||
"date":"2023-02-01",
|
||||
"views": 420,
|
||||
"authors" : []
|
||||
}
|
||||
DisplayArticle:
|
||||
type: object
|
||||
properties:
|
||||
articleId:
|
||||
type: integer
|
||||
access:
|
||||
type: string
|
||||
summary:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
author:
|
||||
type: string
|
||||
items:
|
||||
$ref: '#/components/schemas/User'
|
||||
example:
|
||||
{
|
||||
"articleId": 42,
|
||||
"access": "private",
|
||||
"summary": "looks in details about graph's second theorem",
|
||||
"title": "graph's second theorem study",
|
||||
"author" : "john doe"
|
||||
}
|
||||
Lesson :
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
date:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
duration:
|
||||
type: number
|
||||
description: duration of a course in hours
|
||||
classroom:
|
||||
type: string
|
||||
courseId:
|
||||
type: integer
|
||||
example:
|
||||
{
|
||||
"id": 12,
|
||||
"date": "2023-12-01",
|
||||
"duration": 1.5,
|
||||
"classroom": "AMPHI01",
|
||||
"courseId": 12
|
||||
}
|
||||
ScheduleRequest:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
requestType:
|
||||
type: string
|
||||
lessonId:
|
||||
type: integer
|
||||
teacherId:
|
||||
type: integer
|
||||
newDate:
|
||||
type: string
|
||||
description: Follow the iso 8601 ("YYYY-MM-DD")
|
||||
newClassroom:
|
||||
type: string
|
||||
newCourseId:
|
||||
type: integer
|
||||
example:
|
||||
{
|
||||
"id": 12,
|
||||
"requestType": "moveLesson",
|
||||
"lessonId": 52,
|
||||
"teacherId": 12,
|
||||
"newDate": "2023-12-20",
|
||||
"newClassroom":,
|
||||
"newCourseId":,
|
||||
}
|
||||
|
||||
Display:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
timeMode:
|
||||
type: string
|
||||
description: Define the period displayed on the schedule (week,month,quadrimester..)
|
||||
displayMode:
|
||||
type: string
|
||||
userId:
|
||||
type: integer
|
||||
description: Id of the user who owns this display
|
||||
example:
|
||||
{
|
||||
"id": 12,
|
||||
"timeMode": "month",
|
||||
"displayMode": "grid",
|
||||
"UserId": 12
|
||||
}
|
||||
|
||||
responses:
|
||||
UnauthorizedError:
|
||||
description: Unauthorized access or missing bearer
|
||||
UnauthorizedError:
|
||||
description: Unauthorized access or missing bearer
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user
Same, est-ce que tu ne ferais pas un
(GET) /requests -> array of all requests
(GET) /requests/{type} -> array of all requests of
et pour les post c'est juste un paramètre ? c'est moins verbeux et plus lisible ?
Je suis d'accord avec toi ! Mais comment spécifier le type de retour qui change en fonction du paramètre {type} ducoup ? Et je n'ai pas compris la deuxième partie de la question
EDIT : c'est fait