Compare commits

..

15 Commits

Author SHA1 Message Date
248c14df38 Merge branch 'master' into salutcesmoileo
jaireglelesconflits
2023-12-14 14:08:02 +01:00
351c0dbfb2 Merge pull request 'Ext_publiScientifique' (#5) from Ext_publiScientifique into master
Reviewed-on: #5
Reviewed-by: LeoMoulin <leomoulin125@gmail.com>
Reviewed-by: Debucquoy Anthony <d.tonitch@gmail.com>
Reviewed-by: Wal <karpinskiwal@gmail.com>
2023-12-13 15:37:49 +01:00
3e304ca0ac Merge branch 'master' into Ext_publiScientifique 2023-12-13 15:34:36 +01:00
Wal
9e299b39bd Merge pull request 'GestionHoraire' (#6) from GestionHoraire into master
Reviewed-on: #6
Reviewed-by: LeoMoulin <leomoulin125@gmail.com>
Reviewed-by: Debucquoy Anthony <d.tonitch@gmail.com>
Reviewed-by: Maxime <231026@umons.ac.be>
2023-12-13 15:00:48 +01:00
c807568689 Dispay-Article -> DisplayArticle 2023-12-13 14:41:07 +01:00
67552901d6 ajout Display-Article
(et Mat -> RegNo)
2023-12-12 14:36:15 +01:00
Wal
ffc8682453 Modification via les révisions 2023-12-12 11:39:18 +01:00
Wal
93ec63beae Modify Request 2023-12-11 14:13:37 +01:00
87d00943c0 Adding Ext (Schedule) 2023-12-11 11:31:34 +01:00
dc559cefee added the Ext (scientific articles) tag 2023-12-11 11:27:34 +01:00
b2db8eec16 Merge branch 'master' into GestionHoraire 2023-12-11 11:02:29 +01:00
9a20462ede Merge branch 'master' into Ext_publiScientifique 2023-12-11 10:45:01 +01:00
Wal
b00ab09079 Gestion Horaire osamerilyabcp 2023-12-10 13:15:49 +01:00
05fc134281 Extension Article Scientifique
ajout endpoint dans : secretariat, users, researcher
ajout schemas : article
2023-12-08 17:17:40 +01:00
407b881144 added comment 2023-12-08 13:38:42 +01:00

View File

@ -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
@ -367,8 +368,6 @@ paths:
'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
@ -505,6 +503,415 @@ paths:
'401':
$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:
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:
- 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",
"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
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:
@ -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