Пример #1
0
    def save(self):
        first_name_str = self.first_name_entry.get()
        last_name_str = self.last_name_entry.get()

        if len(first_name_str) == 0 and len(last_name_str) == 0:
            msb.showwarning("Błąd", "Nie podano imienia i nazwiska.")
            return
        elif len(first_name_str) == 0:
            msb.showwarning("Błąd", "Nie podano imienia.")
            return
        elif len(first_name_str) == 0:
            msb.showwarning("Błąd", "Nie podano nazwiska.")
            return

        if len(first_name_str) > 20 and len(last_name_str) > 20:
            msb.showwarning("Błąd", "Wprowadzone nazwy są za długie.")
            return
        elif len(first_name_str) > 20:
            msb.showwarning("Błąd", "Wprowadzone imie jest za długie.")
            return
        elif len(last_name_str) > 20:
            msb.showwarning("Błąd", "Wprowadzone nazwisko jest za długie.")
            return

        sesja.add(
            Student(first_name=first_name_str,
                    last_name=last_name_str,
                    group_id=self.group.id))
        sesja.commit()
        self.master.go_back()
Пример #2
0
    def save(self):
        first_name_str = self.first_name_entry.get()
        last_name_str = self.last_name_entry.get()

        if len(first_name_str) == 0 and len(last_name_str) == 0:
            msb.showwarning("Błąd", "Nie podano imienia i nazwiska.")
            return
        elif len(first_name_str) == 0:
            msb.showwarning("Błąd", "Nie podano imienia.")
            return
        elif len(first_name_str) == 0:
            msb.showwarning("Błąd", "Nie podano nazwiska.")
            return

        if len(first_name_str) > 20 and len(last_name_str) > 20:
            msb.showwarning("Błąd", "Wprowadzone nazwy są za długie.")
            return
        elif len(first_name_str) > 20:
            msb.showwarning("Błąd", "Wprowadzone imie jest za długie.")
            return
        elif len(last_name_str) > 20:
            msb.showwarning("Błąd", "Wprowadzone nazwisko jest za długie.")
            return

        sesja.query(Student).filter(Student.id == self.student.id).update({
            Student.first_name:
            first_name_str,
            Student.last_name:
            last_name_str
        })
        sesja.commit()
        self.master.go_back()
Пример #3
0
    def save(self):

        for cell in self.cells:
            value_str = cell[1].get() 
            if len(value_str) > 0:

                try:
                    value_float = float(value_str)
                except ValueError:
                    msb.showwarning("Błąd", "Wprowadzona wartość oceny jest nieprawidłowa.")
                    return

                if value_float > 5 or value_float < 2 or not (value_float * 2).is_integer():
                    msb.showwarning("Błąd", "Wprowadzona wartość oceny jest nieprawidłowa.")
                    return
        
        grade_weight = self.scale.get()
        i = 0
        for cell in self.cells:
            value_str = cell[1].get()
            if len(value_str) > 0:
                value_float = float(value_str)
                sesja.add(Grade(value = value_float, weight = grade_weight, grade_category_id = self.category_choice, student_id = self.student_obj_list[i].id, subject_id = self.subject.id))
            i+=1

        sesja.commit()
        self.master.go_back()
Пример #4
0
    def save(self):

        value_str = self.value_entry.get()
        if len(value_str) == 0:
            msb.showwarning("Błąd", "Nie podano wartości oceny.")
            return

        try:
            value_float = float(value_str)
        except ValueError:
            msb.showwarning("Błąd",
                            "Wprowadzona wartość oceny jest nieprawidłowa.")
            return

        if value_float > 5 or value_float < 2 or not (value_float *
                                                      2).is_integer():
            msb.showwarning("Błąd",
                            "Wprowadzona wartość oceny jest nieprawidłowa.")
            return

        grade_weight = self.scale.get()
        sesja.add(
            Grade(value=value_float,
                  weight=grade_weight,
                  grade_category_id=self.category_choice,
                  student_id=self.student.id,
                  subject_id=self.subject.id))
        sesja.commit()
        self.master.go_back()
Пример #5
0
    def save(self):

        value_str = self.value_entry.get()
        if len(value_str) == 0:
            msb.showwarning("Błąd", "Nie podano wartości oceny.")
            return

        try:
            new_grade_value = float(value_str)
        except ValueError:
            msb.showwarning("Błąd",
                            "Wprowadzona wartość oceny jest nieprawidłowa.")
            return

        if new_grade_value > 5 or new_grade_value < 2 or not (new_grade_value *
                                                              2).is_integer():
            msb.showwarning("Błąd",
                            "Wprowadzona wartość oceny jest nieprawidłowa.")
            return

        grade_weight = self.scale.get()
        sesja.query(Grade).filter(Grade.id == self.grade.id).update({
            Grade.value:
            new_grade_value,
            Grade.grade_category_id:
            self.category_choice,
            Grade.weight:
            grade_weight
        })
        sesja.commit()
        self.master.go_back()
Пример #6
0
 def delete_subject_here(self):
     if not self.group_choice:
         msb.showinfo(None, "Nie wybrano przedmiotu do usunięcia.")
         return
     if msb.askokcancel(None, ("Na pewno chcesz usunąć?")):
         sesja.query(SubjectGroup).filter(SubjectGroup.group_id == self.group_choice.id, SubjectGroup.subject_id == self.subject.id).delete()
         self.load_group()
         self.group_choice = 0
         sesja.commit()
Пример #7
0
 def delete_subject(self):
     if not self.choice:
         msb.showinfo(None, "Nie wybrano przedmiotu do usunięcia.")
         return
     if msb.askokcancel(None, ("Na pewno chcesz usunąć?")):
         sesja.query(Subject).filter(
             Subject.name == self.choice.name).delete()
         self.load_subject()
         self.choice = 0
         sesja.commit()
Пример #8
0
 def try_delete(self):
     if not self.grade_choice:
         msb.showinfo(None, "Nie wybrano oceny do usunięcia.")
         return
     if msb.askokcancel(None, ("Na pewno chcesz usunąć?")):
         sesja.query(Grade).filter(
             Grade.id == self.grade_choice.id).delete()
         self.load_grade()
         self.grade_choice = 0
         sesja.commit()
Пример #9
0
 def try_delete(self):
     if not self.student_choice:
         msb.showinfo(None, "Nie wybrano studenta do usunięcia.")
         return
     if msb.askokcancel(None, ("Na pewno chcesz usunąć?")):
         sesja.query(Student).filter(
             Student.id == self.student_choice.id).delete()
         self.load_student()
         self.student_choice = 0
         sesja.commit()
Пример #10
0
 def save(self):
     name_str = self.name_entry.get()
     if len(name_str) == 0:
         msb.showwarning("Błąd", "Nie wprowadzono nazwy grupy.")
         return
     elif len(name_str) > 100:
         msb.showwarning("Błąd", "Wprowadzona nazwa jest za długa.")
         return
     if name_str != self.group.name:
         if sesja.query(Group.name).filter_by(name=name_str).scalar():
             msb.showwarning("Błąd", "Podana nazwa jest już zajęta.")
             return
     sesja.query(Group).filter(Group.id == self.group.id).update(
         {Group.name: name_str})
     sesja.commit()
     self.master.go_back()
Пример #11
0
 def save(self):
     name_str = self.name_entry.get()
     if len(name_str) == 0:
         msb.showwarning("Błąd", "Nie wprowadzono nazwy grupy.")
         return
     elif len(name_str) > 100:
         msb.showwarning("Błąd", "Wprowadzona nazwa jest za długa.")
         return
     if sesja.query(Group.name).filter_by(name=name_str).scalar():
         msb.showwarning("Błąd", "Podana nazwa jest już zajęta.")
     else:
         sesja.add(Group(name=name_str))
         id = sesja.query(Group.id).filter(Group.name == name_str).one()
         sesja.add(SubjectGroup(group_id=id[0], subject_id=self.subject.id))
         sesja.commit()
         self.master.go_back()
Пример #12
0
 def save(self):
     name_str = self.name_entry.get()
     if len(name_str) == 0:
         msb.showwarning("Błąd", "Nie wprowadzono nazwy przedmiotu.")
         return
     elif len(name_str) > 100:
         msb.showwarning("Błąd", "Wprowadzona nazwa jest za długa.")
         return
     exists = sesja.query(Subject.name).filter_by(name=name_str).scalar()
     if exists:
         msb.showwarning("Błąd", "Podana nazwa jest już zajęta.")
     else:
         sesja.add(Subject(name=name_str,
                           groups=self.get_selected_groups()))
         sesja.commit()
         self.master.go_back()
Пример #13
0
    def save(self):
        name_str = self.name_entry.get()
        if len(name_str) == 0:
            msb.showwarning("Błąd", "Nie wprowadzono nazwy przedmiotu.")
            return
        elif len(name_str) > 100:
            msb.showwarning("Błąd", "Wprowadzona nazwa jest za długa.")
            return
        if name_str != self.subject.name:
            exists = sesja.query(
                Subject.name).filter_by(name=name_str).scalar()
            if exists:
                msb.showwarning("Błąd", "Podana nazwa jest już zajęta.")
                return
        sesja.query(Subject).filter(Subject.id == self.subject.id).update(
            {Subject.name: name_str})

        sesja.query(SubjectGroup.group_id).filter(
            SubjectGroup.subject_id == self.subject.id).delete()
        for group in self.get_selected_groups():
            sesja.add(
                SubjectGroup(subject_id=self.subject.id, group_id=group.id))
        sesja.commit()
        self.master.go_back()