MID based exams

This commit is contained in:
Kilian Hofmann 2021-08-15 23:24:15 +02:00
parent 0fe449538e
commit f32d3a4877

View File

@ -1,7 +1,7 @@
== ==
<?php <?php
function resolveExamMemberRanks() { function resolveExamMemberRanks($root, $args) {
$exams = \GermanAirlinesVa\Schooling\Models\ExamMemberRank::all(); $exams = \GermanAirlinesVa\Schooling\Models\ExamMemberRank::where('member_id', $args['memberID'])->get();
foreach($exams as $exam) { foreach($exams as $exam) {
$exam->load([ $exam->load([
'exam_questions' => function ($query) { 'exam_questions' => function ($query) {
@ -12,8 +12,8 @@
return $exams; return $exams;
} }
function resolveExamTyperatings() { function resolveExamTyperatings($root, $args) {
$exams = \GermanAirlinesVa\Schooling\Models\ExamTyperating::all(); $exams = \GermanAirlinesVa\Schooling\Models\ExamTyperating::where('member_id', $args['memberID'])->get();
foreach($exams as $exam) { foreach($exams as $exam) {
$exam->load([ $exam->load([
'exam_questions' => function ($query) { 'exam_questions' => function ($query) {
@ -35,13 +35,25 @@
} }
return $typeratings; return $typeratings;
} }
function resolveMemberRanks() {
$ranks = GermanAirlinesVa\Schooling\Models\MemberRank::all();
foreach($ranks as $rank) {
$rank->load([
'exam_questions' => function($query) {
$query->groupBy('id');
}
]);
}
return $rank;
}
== ==
# Content # Content
extend type Query { extend type Query {
memberRanks: [MemberRank]! @all(model: "GermanAirlinesVa\\Schooling\\Models\\MemberRank") memberRanks: [MemberRank]!
typeratings: [Typerating]! typeratings: [Typerating]!
examMemberRanks: [ExamMemberRank]! examMemberRanks(memberID: ID!): [ExamMemberRank]!
examTyperatings: [ExamTyperating]! examTyperatings(memberID: ID!): [ExamTyperating]!
} }
type MemberRank { type MemberRank {