예제 #1
0
    def upsert_student_level_attentiveness(student_id, observed_at, session,
                                           param):
        student = Student.objects(school_id=student_id).first()
        if student:
            # print(student_id, observed_at, session, param)
            ssp = SessionPulseStudent.objects(
                Q(student=student) & Q(session=session)
                & Q(datetime_sequence=observed_at))

            if not ssp:
                ssp_obj = SessionPulseStudent()
                ssp_obj.session = session
                ssp_obj.datetime_sequence = observed_at
                ssp_obj.student = student
                ssp_obj.attentiveness = param
                ssp_obj.save()
            else:
                ssp_obj = ssp.first()
                ssp_obj.attentiveness = param
                ssp_obj.save()
            # print("attentiveness", ssp_obj.session, ssp_obj.datetime_sequence, ssp_obj.student, ssp_obj.attentiveness)
        else:
            print("Unrecognised student", student_id)
예제 #2
0
 def add_workout_id_post():
     data = request.json
     s = Student.objects(user_id=ObjectId(data["user_id"])).first()
     s.add_workout(find_workout_by_id(data["id"]))
     return "ok"
예제 #3
0
 def add_workout_post():
     data = request.json
     s = Student.objects(user_id=ObjectId(data["user_id"])).first()
     s.add_workout(json_to_workout_obj(data))
     return "ok"
def find_workout_by_user_id(user_id):
    student = Student.objects(user_id=user_id).first()
    return student.workouts_ids[0].to_json()