コード例 #1
0
def restore_meetings(json):
    for meeting in json:
        id = UUID(meeting["id"])
        year = int(meeting["year"])
        date = datetime.strptime(meeting["date"], date_format)
        last_upload = datetime.strptime(meeting["last_upload"], date_format)
        lp = int(meeting["lp"])
        meeting_no = int(meeting["meeting_no"])
        check_for_deadline = bool(meeting["check_for_deadline"])
        Meeting(id=id,
                year=year,
                date=date,
                last_upload=last_upload,
                lp=lp,
                meeting_no=meeting_no,
                check_for_deadline=check_for_deadline)
    arr = Meeting.select()[:]
    print("===RESTORED {0} {1}===".format(len(arr), "Meetings"))
コード例 #2
0
def update_meeting(meeting_data: MeetingJsonData) -> ResultWithData[str]:
    try:
        meeting = Meeting.get(id=meeting_data.id)
        meeting.date = meeting_data.date
        meeting.last_upload = meeting_data.last_upload
        meeting.lp = meeting_data.lp
        meeting.meeting_no = meeting_data.meeting_no
    except Exception as e:
        return get_result_with_error("Failed to update meeting {0}".format(e))

    return get_result_with_data("")
コード例 #3
0
def create_new_meeting(date: datetime, last_upload: datetime, lp: int,
                       meeting_no: int) -> ResultWithData[UUID]:
    try:
        meeting = Meeting(year=date.year,
                          date=date,
                          last_upload=last_upload,
                          lp=lp,
                          meeting_no=meeting_no,
                          check_for_deadline=False)
    except Exception as e:
        print("Failed to create meeting due to '{0}'".format(e))
        return get_result_with_error("Failed to create meeting")
    return get_result_with_data(meeting.id)
コード例 #4
0
def get_check_for_deadline_meetings() -> List[MeetingData]:
    meeting_datas = []
    meetings = list(
        Meeting.select(lambda meeting: meeting.check_for_deadline == True))
    for meeting in meetings:
        meeting_datas.append(
            MeetingData(id=meeting.id,
                        year=meeting.year,
                        date=meeting.date,
                        last_upload=meeting.last_upload,
                        lp=meeting.lp,
                        meeting_no=meeting.meeting_no))
    return meeting_datas
コード例 #5
0
def get_meetings():
    arr = []
    meetings = Meeting.select()
    for meeting in meetings:
        arr.append({
            "id": str(meeting.id),
            "year": meeting.year,
            "date": meeting.date.strftime(date_format),
            "last_upload": meeting.last_upload.strftime(date_format),
            "lp": meeting.lp,
            "meeting_no": meeting.meeting_no,
            "check_for_deadline": meeting.check_for_deadline
        })

    print("===SAVING {0} {1}===".format(len(arr), "Meetings"))
    return arr
コード例 #6
0
def get_meeting_for_period(year: int, lp: int,
                           meeting_no: int) -> Optional[Meeting]:
    return Meeting.get(year=year, lp=lp, meeting_no=meeting_no)
コード例 #7
0
def get_meeting_by_id(id: UUID) -> Optional[Meeting]:
    return Meeting.get(id=id)
コード例 #8
0
def get_next_meeting():
    return Meeting.select().order_by(desc(Meeting.date)).first()