Grade home works

This commit is contained in:
rotimi-best
2021-09-04 22:27:00 +03:00
parent 030fd24fe1
commit b94db946a9
17 changed files with 376 additions and 123 deletions
+4 -9
View File
@@ -302,14 +302,9 @@ export async function submitExercise(
questions,
exerciseId,
courseId,
group,
profile
groupMemberId
) {
const groupMember = group.people.find(
(person) => person.profile_id === profile.id
);
console.log(`groupMember`, groupMember);
if (!groupMember) {
if (!groupMemberId) {
return;
}
@@ -320,7 +315,7 @@ export async function submitExercise(
const questionAnswers = [];
const { data: submission } = await supabase.from('submission').insert({
submitted_by: groupMember.id,
submitted_by: groupMemberId,
exercise_id: exerciseId,
course_id: courseId,
});
@@ -329,7 +324,7 @@ export async function submitExercise(
const value = answers[questionName];
const questionAnswer = {
group_member_id: groupMember.id,
group_member_id: groupMemberId,
question_id: questionsByName[questionName],
open_answer: '',
answers: [],
+33
View File
@@ -31,3 +31,36 @@ export function fetchSubmissions(course_id) {
course_id,
});
}
export async function fetchSubmission({ courseId, exerciseId, submittedBy }) {
return supabase
.from('submission')
.select(
`
id,
answers:question_answer(*),
status_id
`
)
.match({
submitted_by: submittedBy,
exercise_id: exerciseId,
course_id: courseId,
});
}
export async function updateSubmission({ id, status_id, total }) {
const toUpdate = {
status_id,
};
if (typeof total === 'number') {
toUpdate.total = total;
}
return supabase.from('submission').update(toUpdate).match({ id });
}
export async function updateQuestionAnswer(update, match) {
return supabase.from('question_answer').update(update).match(match);
}