src/main/java/seedu/address/logic/commands/commandAssign/AssignTeacherToCourseCommand.java
@Override
    protected CommandResult executeUndoableCommand(Model model) throws CommandException {
        ID courseID = this.assignDescriptor.getAssignID(PREFIX_COURSEID);
        ID staffID = this.assignDescriptor.getAssignID(PREFIX_TEACHERID);

        Course foundCourse = (Course) model.get(courseID, Constants.ENTITY_TYPE.COURSE);
        Staff foundStaff = (Staff) model.get(staffID, Constants.ENTITY_TYPE.STAFF);

        EdgeManager.assignTeacherToCourse(staffID, courseID);

        return new CommandResult(String.format(MESSAGE_SUCCESS,
                foundStaff.getName().toString(), staffID.value,
                foundCourse.getName().toString(), courseID.value));
    }
/**
     * Executes the Assigning of Teacher to Course by calling EdgeManager and Progress Manager
     *
     * @param model
     * @return CommandResult of successful command execution
     * @throws CommandException
     */
Executes the Assigning of Teacher to Course by calling EdgeManager and Progress Manager
@param model
@return CommandResult of successful command execution
@throws CommandException
Executes the Assigning of Teacher to Course by calling EdgeManager and Progress Manager @param model @return CommandResult of successful command execution @throws CommandException
@Override
    protected CommandResult executeUndoableCommand(Model model) throws CommandException {
        ID courseID = this.assignDescriptor.getAssignID(PREFIX_COURSEID);
        ID staffID = this.assignDescriptor.getAssignID(PREFIX_TEACHERID);
        Course foundCourse = (Course) model.get(courseID, Constants.ENTITY_TYPE.COURSE);
        Staff foundStaff = (Staff) model.get(staffID, Constants.ENTITY_TYPE.STAFF);
        EdgeManager.assignTeacherToCourse(staffID, courseID);
        return new CommandResult(String.format(MESSAGE_SUCCESS,
                foundStaff.getName().toString(), staffID.value,
                foundCourse.getName().toString(), courseID.value));
    }
@ Override protected CommandResult executeUndoableCommand ( Model model ) throws CommandException { ID courseID = this . assignDescriptor . getAssignID ( PREFIX_COURSEID ) ; ID staffID = this . assignDescriptor . getAssignID ( PREFIX_TEACHERID ) ; Course foundCourse = ( Course ) model . get ( courseID , Constants . ENTITY_TYPE . COURSE ) ; Staff foundStaff = ( Staff ) model . get ( staffID , Constants . ENTITY_TYPE . STAFF ) ; EdgeManager . assignTeacherToCourse ( staffID , courseID ) ; return new CommandResult ( String . format ( MESSAGE_SUCCESS , foundStaff . getName ( ) . toString ( ) , staffID . value , foundCourse . getName ( ) . toString ( ) , courseID . value ) ) ; }
Executes the Assigning of Teacher to Course by calling EdgeManager and Progress Manager
 @param model
 @return CommandResult of successful command execution
 @throws CommandException
Executes the Assigning of Teacher to Course by calling EdgeManager and Progress Manager @param model @return CommandResult of successful command execution @throws CommandException