diff --git a/server/controllers/auth/signup.ts b/server/controllers/auth/signup.ts index 4834a6a..f0c4b48 100644 --- a/server/controllers/auth/signup.ts +++ b/server/controllers/auth/signup.ts @@ -9,6 +9,7 @@ import { createStudent, putParentIdForStudentQuery, createStudentHealthQuery, + getUserIdFromTableQuery, } from '../../queries'; import { @@ -20,9 +21,11 @@ import { const putParentIdForStudent = async (child: string, parentId: number) => { const studentUser = await findUserByEmail(child); + const studentId = studentUser?.getDataValue('id'); + const studentData = await getUserIdFromTableQuery('student', studentId); - await putParentIdForStudentQuery(studentId, parentId); + await putParentIdForStudentQuery(studentData?.getDataValue('id'), parentId); }; const signup = async (req: Request, res: Response, next: NextFunction) => { diff --git a/server/controllers/profiles/getParentStudent.ts b/server/controllers/profiles/getParentStudent.ts index 5dbe0b5..b2e4001 100644 --- a/server/controllers/profiles/getParentStudent.ts +++ b/server/controllers/profiles/getParentStudent.ts @@ -1,10 +1,11 @@ import { Response, NextFunction } from 'express'; -import { getParentStudentQuery } from '../../queries'; +import { getParentStudentQuery, getUserIdFromTableQuery } from '../../queries'; const getParentStudent = async (req:any, res:Response, next:NextFunction) => { try { const { id } = req.user; - const data = await getParentStudentQuery(id); + const parent = await getUserIdFromTableQuery('parent', id); + const data = await getParentStudentQuery(parent?.getDataValue('id')); res.json({ msg: 'getting all student successfully', data }); } catch (error) { next(error); diff --git a/server/controllers/student/putParentIdForStudent.ts b/server/controllers/student/putParentIdForStudent.ts index e298b20..910bbf2 100644 --- a/server/controllers/student/putParentIdForStudent.ts +++ b/server/controllers/student/putParentIdForStudent.ts @@ -1,12 +1,15 @@ import { Request, Response, NextFunction } from 'express'; -import { findUserByEmail, putParentIdForStudentQuery } from '../../queries'; +import { findUserByEmail, putParentIdForStudentQuery, getUserIdFromTableQuery } from '../../queries'; const putParentIdForStudent = async (req: Request, res: Response, next: NextFunction) => { try { const { email, parentId } = req.body; const studentUser = await findUserByEmail(email); const studentId = studentUser?.getDataValue('id'); - await putParentIdForStudentQuery(studentId, parentId); + const studentData = await getUserIdFromTableQuery('student', studentId); + const parentData = await getUserIdFromTableQuery('parent', parentId); + + await putParentIdForStudentQuery(studentData?.getDataValue('id'), parentData?.getDataValue('id')); res.json({ msg: 'student updated successfully' }); } catch (error) { diff --git a/server/queries/profile/getParentStudentQuery.ts b/server/queries/profile/getParentStudentQuery.ts index bad39c3..ea2bbd6 100644 --- a/server/queries/profile/getParentStudentQuery.ts +++ b/server/queries/profile/getParentStudentQuery.ts @@ -1,6 +1,6 @@ import { Student, User } from '../../models'; -const getParentStudentQuery = (parentId: string) => (Student.findAll({ +const getParentStudentQuery = (parentId: number) => (Student.findAll({ raw: true, where: { parent_id: parentId, diff --git a/server/queries/student/putParentIdForStudentQuery.ts b/server/queries/student/putParentIdForStudentQuery.ts index 93040d7..6eb69d2 100644 --- a/server/queries/student/putParentIdForStudentQuery.ts +++ b/server/queries/student/putParentIdForStudentQuery.ts @@ -5,7 +5,7 @@ const putParentIdForStudentQuery = ( parentId: number, ) => Student.update({ parent_id: parentId }, { where: { - user_id: studentId, + id: studentId, }, });