diff --git a/backend/app/students/routes/registrations.py b/backend/app/students/routes/registrations.py index e0c26e4..f85b93d 100644 --- a/backend/app/students/routes/registrations.py +++ b/backend/app/students/routes/registrations.py @@ -14,15 +14,15 @@ bp = APIBlueprint("registrations", __name__, url_prefix="/registrations") @bp.input(ProjectSupervisorQuerySchema, location='query') @bp.output(ProjectSupervisorPaginationSchema) def list_available_groups(query: dict) -> dict: - mode = query.get('mode') + mode = 0 if query.get('mode') else 1 page = query.get('page') per_page = query.get('per_page') available_groups = (ProjectSupervisor.limit_group - ProjectSupervisor.count_groups) - ps_query = db.session.query(ProjectSupervisor, available_groups).join(Group) + ps_query = db.session.query(ProjectSupervisor, available_groups).join(Group, isouter=True) if mode is not None: - ps_query = ps_query.filter(ProjectSupervisor.mode == mode) + ps_query = ps_query.filter(ProjectSupervisor.mode != 1-mode) ps_query = ps_query.group_by(ProjectSupervisor.id). \ having(available_groups > 0) diff --git a/backend/app/students/schemas.py b/backend/app/students/schemas.py index 97e6025..bbbe2ae 100644 --- a/backend/app/students/schemas.py +++ b/backend/app/students/schemas.py @@ -6,7 +6,7 @@ class ProjectSupervisorSchema(ma.Schema): first_name = fields.Str() last_name = fields.Str() email = fields.Str() - mode = fields.Boolean() + mode = fields.Integer() available_groups = fields.Integer() diff --git a/frontend/src/api/enrollment.ts b/frontend/src/api/enrollment.ts index 34de29a..4b92521 100644 --- a/frontend/src/api/enrollment.ts +++ b/frontend/src/api/enrollment.ts @@ -15,7 +15,7 @@ export const getEnrollmentList = ( first_name: string last_name: string email: string - mode: boolean + mode: number }[] }>('http://127.0.0.1:5000/api/students/registrations/', { params, diff --git a/frontend/src/views/coordinator/AddLeader.tsx b/frontend/src/views/coordinator/AddLeader.tsx index 30503c2..2e1d992 100644 --- a/frontend/src/views/coordinator/AddLeader.tsx +++ b/frontend/src/views/coordinator/AddLeader.tsx @@ -110,7 +110,7 @@ const AddLeader = () => { {...register('mode', { required: true, })} - value="1" + value="0" /> @@ -122,7 +122,7 @@ const AddLeader = () => { {...register('mode', { required: true, })} - value="0" + value="1" /> @@ -134,7 +134,7 @@ const AddLeader = () => { {...register('mode', { required: true, })} - value="0" + value="2" /> diff --git a/frontend/src/views/coordinator/Students.tsx b/frontend/src/views/coordinator/Students.tsx index fd6b9ed..385b16b 100644 --- a/frontend/src/views/coordinator/Students.tsx +++ b/frontend/src/views/coordinator/Students.tsx @@ -168,7 +168,7 @@ const Students = () => { {last_name} {index} {group === null ? 'Nie' : 'Tak'} - {mode ? 'stacjonarny' : 'niestacjonarny'} + {mode ? 'Stacjonarny' : 'Niestacjonarny'} diff --git a/frontend/src/views/student/Enrollment.tsx b/frontend/src/views/student/Enrollment.tsx index b89d06e..c1e111d 100644 --- a/frontend/src/views/student/Enrollment.tsx +++ b/frontend/src/views/student/Enrollment.tsx @@ -55,12 +55,12 @@ const Enrollment = () => { ({ available_groups }) => available_groups || !showAvailable, ) .map( - ({ first_name, last_name, email, mode, available_groups }) => ( + ({ first_name, last_name, email, available_groups }) => ( {first_name} {last_name} {email} - {mode ? 'stacjonarny' : 'niestacjonarny'} + {mode ? 'Stacjonarny' : 'Niestacjonarny'} {available_groups} ),