fix: teacher class join request query key
This commit is contained in:
		
							parent
							
								
									43d76d796b
								
							
						
					
					
						commit
						59f6d63377
					
				
					 2 changed files with 9 additions and 1 deletions
				
			
		|  | @ -20,6 +20,7 @@ import type { GroupsResponse } from "@/controllers/groups.ts"; | ||||||
| import type { SubmissionsResponse } from "@/controllers/submissions.ts"; | import type { SubmissionsResponse } from "@/controllers/submissions.ts"; | ||||||
| import type { QuestionsResponse } from "@/controllers/questions.ts"; | import type { QuestionsResponse } from "@/controllers/questions.ts"; | ||||||
| import type { StudentDTO } from "@dwengo-1/common/interfaces/student"; | import type { StudentDTO } from "@dwengo-1/common/interfaces/student"; | ||||||
|  | import {teacherClassJoinRequests} from "@/queries/teachers.ts"; | ||||||
| 
 | 
 | ||||||
| const studentController = new StudentController(); | const studentController = new StudentController(); | ||||||
| 
 | 
 | ||||||
|  | @ -181,6 +182,7 @@ export function useCreateJoinRequestMutation(): UseMutationReturnType< | ||||||
|             await queryClient.invalidateQueries({ |             await queryClient.invalidateQueries({ | ||||||
|                 queryKey: studentJoinRequestsQueryKey(newJoinRequest.request.requester.username), |                 queryKey: studentJoinRequestsQueryKey(newJoinRequest.request.requester.username), | ||||||
|             }); |             }); | ||||||
|  |             await queryClient.invalidateQueries({ queryKey: teacherClassJoinRequests(classId) }); | ||||||
|         }, |         }, | ||||||
|     }); |     }); | ||||||
| } | } | ||||||
|  | @ -200,6 +202,7 @@ export function useDeleteJoinRequestMutation(): UseMutationReturnType< | ||||||
|             const classId = deletedJoinRequest.request.class; |             const classId = deletedJoinRequest.request.class; | ||||||
|             await queryClient.invalidateQueries({ queryKey: studentJoinRequestsQueryKey(username) }); |             await queryClient.invalidateQueries({ queryKey: studentJoinRequestsQueryKey(username) }); | ||||||
|             await queryClient.invalidateQueries({ queryKey: studentJoinRequestQueryKey(username, classId) }); |             await queryClient.invalidateQueries({ queryKey: studentJoinRequestQueryKey(username, classId) }); | ||||||
|  |             await queryClient.invalidateQueries({ queryKey: teacherClassJoinRequests(classId) }); | ||||||
|         }, |         }, | ||||||
|     }); |     }); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -37,6 +37,10 @@ function teacherQuestionsQueryKey(username: string, full: boolean): [string, str | ||||||
|     return ["teacher-questions", username, full]; |     return ["teacher-questions", username, full]; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | export function teacherClassJoinRequests(classId: string): [string, string] { | ||||||
|  |     return ["teacher-class-join-requests", classId]; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| export function useTeachersQuery(full: MaybeRefOrGetter<boolean> = false): UseQueryReturnType<TeachersResponse, Error> { | export function useTeachersQuery(full: MaybeRefOrGetter<boolean> = false): UseQueryReturnType<TeachersResponse, Error> { | ||||||
|     return useQuery({ |     return useQuery({ | ||||||
|         queryKey: computed(() => teachersQueryKey(toValue(full))), |         queryKey: computed(() => teachersQueryKey(toValue(full))), | ||||||
|  | @ -92,7 +96,7 @@ export function useTeacherJoinRequestsQuery( | ||||||
|     classId: MaybeRefOrGetter<string | undefined>, |     classId: MaybeRefOrGetter<string | undefined>, | ||||||
| ): UseQueryReturnType<JoinRequestsResponse, Error> { | ): UseQueryReturnType<JoinRequestsResponse, Error> { | ||||||
|     return useQuery({ |     return useQuery({ | ||||||
|         queryKey: computed(() => JOIN_REQUESTS_QUERY_KEY(toValue(username)!, toValue(classId)!)), |         queryKey: computed(() => teacherClassJoinRequests(toValue(classId)!)), | ||||||
|         queryFn: async () => teacherController.getStudentJoinRequests(toValue(username)!, toValue(classId)!), |         queryFn: async () => teacherController.getStudentJoinRequests(toValue(username)!, toValue(classId)!), | ||||||
|         enabled: () => Boolean(toValue(username)) && Boolean(toValue(classId)), |         enabled: () => Boolean(toValue(username)) && Boolean(toValue(classId)), | ||||||
|     }); |     }); | ||||||
|  | @ -137,6 +141,7 @@ export function useUpdateJoinRequestMutation(): UseMutationReturnType< | ||||||
|             const classId = deletedJoinRequest.request.class; |             const classId = deletedJoinRequest.request.class; | ||||||
|             await queryClient.invalidateQueries({ queryKey: studentJoinRequestsQueryKey(username) }); |             await queryClient.invalidateQueries({ queryKey: studentJoinRequestsQueryKey(username) }); | ||||||
|             await queryClient.invalidateQueries({ queryKey: studentJoinRequestQueryKey(username, classId) }); |             await queryClient.invalidateQueries({ queryKey: studentJoinRequestQueryKey(username, classId) }); | ||||||
|  |             await queryClient.invalidateQueries({ queryKey: teacherClassJoinRequests(classId) }); | ||||||
|         }, |         }, | ||||||
|     }); |     }); | ||||||
| } | } | ||||||
|  |  | ||||||
		Reference in a new issue
	
	 Gabriellvl
						Gabriellvl