Exemplo n.º 1
0
 def __init__(self, school_db):
     init_db = SchoolInitializer()
     self.students = init_db.students
     self.courses = init_db.courses
     self.professors = init_db.professors
     self.enrollments = init_db.enrollments
     self.school_db = SchoolDB(self)
Exemplo n.º 2
0
    def __init__(self, *args, **kwargs):
        Tk.__init__(self, *args, **kwargs)

        self.school_db = SchoolDB(SchoolInitializer())

        Tk.wm_title(self, 'Contoso University')
        self.menubar = MainMenu(self)
        self.config(menu=self.menubar)
        self.frames = {}
        self.__init_frames()
Exemplo n.º 3
0
class Gradebook:
    def __init__(self, school_db):
        init_db = SchoolInitializer()
        self.students = init_db.students
        self.courses = init_db.courses
        self.professors = init_db.professors
        self.enrollments = init_db.enrollments
        self.school_db = SchoolDB(self)

    def main(self):
        GRADE_UPDATE = 1
        PRINT_GPA = 2
        PRINT_ALL = 3
        SAVE_DATA = 4
        QUIT_MENU = 5

        choice = 0

        print("=" * 47)
        print("=" * 10, "Welcome to GPA CALC v0.13", "=" * 10)
        print('\t' * 2, "ACEDEMIC MAIN MENU", '\t' * 2)
        while choice != QUIT_MENU:
            self.menu_selections()
            choice = int(input("please select an action: "))

            if choice == GRADE_UPDATE:
                enroll_key = int(input("Enter enroll ID: "))
                if enroll_key in self.enrollments:
                    enroll = self.enrollments.get(enroll_key)
                    grade = input("Enter grade: ")
                    enroll.grade = grade
                else:
                    print("Enroll ID not found: ")
                keep_going = input("continue? y/n: ")
            elif choice == PRINT_GPA:
                student_id = int(input("enter student ID: "))

                if student_id in self.students:
                    student = self.students.get(student_id)
                    transcript = Transcript(self.enrollments)
                    transcript.print_transcript(student)
                else:
                    print("Student ID not found")
            elif choice == PRINT_ALL:
                for enrollment in self.enrollments.values():
                    enrollment.print_record()
            elif choice == SAVE_DATA:
                self.school_db.save_data()

    def menu_selections(self):
        print("1: update a student's grades",'\n'\
              "2: print a student's transcript", '\n'\
              "3: print full enrollment list", '\n'\
              "4: Save enrollments to database", '\n'\
              "5: Quit")
Exemplo n.º 4
0
class ContosoApp(Tk):
    """This is the main application window"""
    def __init__(self, *args, **kwargs):
        Tk.__init__(self, *args, **kwargs)

        self.school_db = SchoolDB(SchoolInitializer())

        Tk.wm_title(self, 'Contoso University')
        self.menubar = MainMenu(self)
        self.config(menu=self.menubar)
        self.frames = {}
        self.__init_frames()

    def __init_frames(self):

        container = Frame(self)
        container.pack(side="top", fill="both", expand=True)
        container.grid_rowconfigure(0, weight=1)
        container.grid_columnconfigure(0, weight=1)

        for frame in (AboutFrame, CourseFrame, EnrollmentFrame, StudentFrame):

            if frame.__name__ == "AboutFrame":
                current_frame = frame(container)
            else:
                current_frame = frame(container, self.school_db)

            self.frames[frame.__name__] = current_frame
            current_frame.grid(row=0, column=0, sticky="nsew")

    def show_frame(self, frame_name):
        frame = self.frames[frame_name]
        Tk.wm_title(self,
                    'Contoso University - ' + frame_name.replace('Frame', ''))
        frame.tkraise()

    def save_data(self):

        self.school_db.save_data()
                    transcript = Transcript(self.enrollments)
                    student = self.students.get(student_id)
                    transcript.print_transcript(student)

            elif choice == '3':

                for enrollment in self.enrollments.values():
                    enrollment.print_record()

            elif choice == '4':

                self.school_db.save_data()

            print()

    def __display_menu(self):

        print("Academic Main Menu")
        print()
        print("1) Update Grade")
        print("2) Print Student GPA")
        print("3) Print All Enrollments")
        print("4) Save Data")
        print()
        return input("Enter 1, 2, 3, or e to exit")


db = SchoolDB(SchoolInitializer())
gradebook = Gradebook(db)
gradebook.main()