Пример #1
0
    def convertJSONToList(itemType: type, jsonObject):
        list = json.loads(jsonObject)
        newList = []
        newItem = None
        for item in list:
            if itemType is Student:
                newItem = Student(
                    TypeParser.parseInt(item["studentId"], InvalidStudentId),
                    item["name"],
                    TypeParser.parseInt(item["group"], InvalidStudentGroup))
                StudentValidator.validateStudent(newItem)
            elif itemType is Grade:
                newItem = Grade(
                    TypeParser.parseInt(item["studentId"], InvalidStudentId),
                    TypeParser.parseInt(item["assignmentId"],
                                        InvalidAssignmentId), item["grade"])
                GradeValidator.validateGrade(newItem)
            elif itemType is Assignment:
                newItem = Assignment(
                    TypeParser.parseInt(item["assignmentId"],
                                        InvalidAssignmentId),
                    item["description"],
                    TypeParser.parseDate(item["deadline"],
                                         InvalidAssignmentDeadline))
                AssignmentValidator.validateAssignment(newItem)
            newList.append(newItem)

        return newList
Пример #2
0
 def __CSVToAssignment(csvString: str):
     values = csvString.split(',')
     assignment = Assignment(
         TypeParser.parseInt(values[0], InvalidAssignmentId), values[1],
         TypeParser.parseDate(values[2], InvalidAssignmentDeadline))
     AssignmentValidator.validateAssignment(assignment)
     return assignment
 def addAssignment(self):
     assignmentId = input("Assignment's id: ")
     assignmentId = TypeParser.parseInt(assignmentId, InvalidAssignmentId)
     description = input("Assignment's description: ")
     deadline = input("Assignment's deadline (format: day.month.year): ")
     deadline = TypeParser.parseDate(deadline, InvalidAssignmentDeadline)
     self.assignmentController.addAssignment(assignmentId, description,
                                             deadline)
     print("Assignment added")
Пример #4
0
 def addAssignment(self):
     assignmentId = self.assignmentId.get()
     assignmentId = TypeParser.parseInt(assignmentId, InvalidAssignmentId)
     description = self.assignmentDescription.get()
     deadline = self.assignmentDeadline.get()
     deadline = TypeParser.parseDate(deadline, InvalidAssignmentDeadline)
     self.assignmentController.addAssignment(assignmentId, description,
                                             deadline)
     messagebox.showinfo("Info", "Assignment added")
 def convertTuples(tupleList: List[Tuple], itemType: type):
     newList = []
     newItem = None
     for item in tupleList:
         if itemType is Student:
             newItem = Student(item[0], item[1], item[2])
         elif itemType is Grade:
             newItem = Grade(item[0], item[1], item[2] if item[2] != "NULL" else None)
         elif itemType is Assignment:
             newItem = Assignment(item[0], item[1], TypeParser.parseDate(item[2], InvalidAssignmentDeadline))
         newList.append(newItem)
     return newList
Пример #6
0
 def updateAssignment(self):
     assignmentId = self.assignmentId.get()
     assignmentId = TypeParser.parseInt(assignmentId, InvalidAssignmentId)
     assignment = self.assignmentController.findAssignment(assignmentId)
     # print(
     #     "You are modifying the assignment with description '" + assignment.getDescription() +
     #     "' and deadline " + GUI.dateToStr(assignment.getDeadline()))
     description = self.assignmentDescription.get()
     deadline = self.assignmentDeadline.get()
     deadline = TypeParser.parseDate(deadline, InvalidAssignmentDeadline)
     self.assignmentController.updateAssignment(assignmentId, description,
                                                deadline)
     messagebox.showinfo("Info", "Assignment information updated")
 def updateAssignment(self):
     assignmentId = input("Assignment id: ")
     assignmentId = TypeParser.parseInt(assignmentId, InvalidAssignmentId)
     assignment = self.assignmentController.findAssignment(assignmentId)
     print("You are modifying the assignment with description '" +
           assignment.getDescription() + "' and deadline " +
           ManageAssignmentsMenu.dateToStr(assignment.getDeadline()))
     description = input("Assignment's new description: ")
     deadline = input(
         "Assignment's new deadline (format: day.month.year): ")
     deadline = TypeParser.parseDate(deadline, InvalidAssignmentDeadline)
     self.assignmentController.updateAssignment(assignmentId, description,
                                                deadline)
     print("Assignment information updated")