Merge branch 'main' into feat/admin-project-lms
This commit is contained in:
@@ -72,6 +72,7 @@ const router = express.Router();
|
||||
* example: 2026-08-10
|
||||
* member_emails:
|
||||
* type: array
|
||||
* description: Optional intern emails to invite. Each intern must already have an active user account and must not be assigned to another active project.
|
||||
* items:
|
||||
* type: string
|
||||
* format: email
|
||||
@@ -454,7 +455,7 @@ const router = express.Router();
|
||||
* /project-api/add:
|
||||
* post:
|
||||
* summary: Create a new project
|
||||
* description: Create a new Internify LMS project. Admin can optionally invite interns by email.
|
||||
* description: Create a new Internify LMS project. Admin can optionally invite interns by email. Invited interns must not be active members of another project.
|
||||
* tags: [Project]
|
||||
* security:
|
||||
* - bearerAuth: []
|
||||
@@ -467,6 +468,10 @@ const router = express.Router();
|
||||
* responses:
|
||||
* 201:
|
||||
* description: Project created successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectDetailResponse'
|
||||
* 400:
|
||||
* description: Bad request
|
||||
* 401:
|
||||
@@ -503,6 +508,10 @@ router.post('/add', verifyJWT, isMentorOrAdmin, projectController.createProject)
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Projects retrieved successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectListResponse'
|
||||
* 401:
|
||||
* description: Unauthorized
|
||||
* 417:
|
||||
@@ -532,6 +541,10 @@ router.get('/get', verifyJWT, projectController.getAllProjects);
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Project detail retrieved successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectDetailResponse'
|
||||
* 401:
|
||||
* description: Unauthorized
|
||||
* 403:
|
||||
@@ -566,9 +579,20 @@ router.get('/get/:id', verifyJWT, projectController.getProjectById);
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectUpdateRequest'
|
||||
* example:
|
||||
* project_icon: cloud
|
||||
* project_name: Internify LMS Updated
|
||||
* description: Updated project description
|
||||
* start_date: 2026-06-15
|
||||
* end_date: 2026-08-20
|
||||
* status: completed
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Project updated successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectDetailResponse'
|
||||
* 400:
|
||||
* description: Bad request
|
||||
* 401:
|
||||
@@ -604,6 +628,10 @@ router.patch('/update/:id', verifyJWT, isMentorOrAdmin, projectController.update
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Project archived successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectDetailResponse'
|
||||
* 401:
|
||||
* description: Unauthorized
|
||||
* 403:
|
||||
@@ -627,6 +655,10 @@ router.delete('/delete/:id', verifyJWT, isMentorOrAdmin, projectController.archi
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Intern projects retrieved successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectListResponse'
|
||||
* 401:
|
||||
* description: Unauthorized
|
||||
* 403:
|
||||
@@ -648,6 +680,10 @@ router.get('/my-projects', verifyJWT, projectController.getMyProjects);
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Intern tasks retrieved successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/MyTaskListResponse'
|
||||
* 401:
|
||||
* description: Unauthorized
|
||||
* 403:
|
||||
@@ -669,6 +705,10 @@ router.get('/my-tasks', verifyJWT, projectController.getMyTasks);
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Mentor projects retrieved successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/ProjectListResponse'
|
||||
* 401:
|
||||
* description: Unauthorized
|
||||
* 403:
|
||||
@@ -765,6 +805,10 @@ router.get('/interns', verifyJWT, isMentorOrAdmin, projectController.getInterns)
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Member assigned successfully
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/AssignMemberResponse'
|
||||
* 400:
|
||||
* description: Bad request
|
||||
* 401:
|
||||
|
||||
Reference in New Issue
Block a user