Exemple #1
0
def duration_string(duration):
    days, hours, minutes, seconds, microseconds = _get_duration_components(duration)  # noqa: E501
    hours += days * 24

    string = '{}:{:02d}'.format(hours, minutes)

    return string
    def value_to_string(self, obj):
        val = self.value_from_object(obj)
        if val is None:
            return ''

        days, hours, minutes, seconds, microseconds = _get_duration_components(duration)
        return '{:02d}:{:02d}'.format(minutes, seconds)
Exemple #3
0
def duration_decimal(duration):
    if duration is not None:
        days, hours, minutes, seconds, microseconds = _get_duration_components(duration)  # noqa: E501
        hours += days * 24

        decimal = Decimal(hours) + Decimal(minutes/60)
    else:
        decimal = Decimal(0)
    return decimal
Exemple #4
0
def duration_string(duration):
    if duration is not None:
        days, hours, minutes, seconds, microseconds = _get_duration_components(
            duration)  # noqa: E501
        hours += days * 24

        string = "{}:{:02d}".format(hours, minutes)
    else:
        string = "0:00"
    return string
Exemple #5
0
    def post(self, request):
        body = json.loads(request.body)
        username = body.get('username')
        domain = body.get('domain')
        course = body.get('course')

        print(username, domain, course)
        try:
            user = UserLogin.objects.get(username=username)
        except UserLogin.DoesNotExist:
            user = None

        state = False
        data_list = []
        user = user.user
        if (user and domain == user.domain):
            state = True

            class_taker_list = ClassTaker.objects.filter(student=user)

            course_index_list = []
            for c in class_taker_list:
                course_index = c.course_index
                course_index_list.append(course_index)

            course_index_type_list = []
            for c in course_index_list:
                course_index_type = CourseIndexType.objects.filter(
                    course_index=c)
                for ci in course_index_type:
                    course_index_type_list.append(ci)

            class_list = []
            for c in course_index_type_list:
                class_session = Class.objects.filter(course_index_type=c)
                for cs in class_session:
                    class_list.append(cs)

            attendance_list = []
            for c in class_list:
                attendance = Attendance.objects.get(class_session=c,
                                                    student=user)
                attendance_list.append(attendance)

            attendance_list = sorted(attendance_list,
                                     key=lambda r: r.class_session.datetime,
                                     reverse=True)

            for attendance in attendance_list:
                status = attendance.status
                time = attendance.attendance_time
                if (time):
                    time = time.strftime("%H:%M")
                else:
                    time = ""

                class_session = attendance.class_session
                date = class_session.datetime.strftime("%d-%m-%y")

                course_index_type = class_session.course_index_type
                class_type = course_index_type.class_type
                _, hours, minutes, _, _ = _get_duration_components(
                    course_index_type.duration)
                if (minutes == 0):
                    duration = f"{hours} hour(s)"
                elif (hours == 0):
                    duration = f"{minutes} minute(s)"
                else:
                    duration = f"{hours} hour(s) {minutes} minute(s)"

                course_index = course_index_type.course_index.index

                data_list.append({
                    'index': course_index,
                    'type': class_type,
                    'date': date,
                    'time': time,
                    'duration': duration,
                    'status': status
                })

        data = {'state': state, 'attendance': data_list}

        print(data)
        return JsonResponse(data)
Exemple #6
0
def duration_to_str(duration: DurationField):
    days, hours, minutes, seconds, microseconds = _get_duration_components(
        duration)

    return '{:02d}:{:02d}'.format(minutes, seconds)