Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: audit #10

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open

feat: audit #10

wants to merge 6 commits into from

Conversation

owen-sellner
Copy link
Contributor

@owen-sellner owen-sellner commented Feb 19, 2025

Notion Ticket Link

Create GET endpoint for degree & option Audit

Implementation Description

  • Simplified the AuditFactory since we are missing a lot of the information that would be provided by OAT

What should reviewers focus on?

  • I am only using mocks right now but we will need to connect this up to everything else

Output Example

1A & 1B Complete
{
    "plan": {
        "name": "ME",
        "year": 2023,
        "categoryList": [
            {
                "name": "1A",
                "requirementList": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "147"
                    },
                    {
                        "sbj_list": "PSYCH",
                        "cnbr_name": "101"
                    },
                    {
                        "sbj_list": "SPCOM",
                        "cnbr_name": "223"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "147"
                    },
                    {
                        "sbj_list": "PSYCH",
                        "cnbr_name": "101"
                    },
                    {
                        "sbj_list": "SPCOM",
                        "cnbr_name": "223"
                    }
                ]
            },
            {
                "name": "1B",
                "requirementList": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "146"
                    },
                    {
                        "sbj_list": "ECE",
                        "cnbr_name": "142"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "115"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "123"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "146"
                    },
                    {
                        "sbj_list": "ECE",
                        "cnbr_name": "142"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "115"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "123"
                    }
                ]
            },
            {
                "name": "2A",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "201"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "202"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "219"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "230"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "269"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "201"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "202"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "219"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "230"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "269"
                    }
                ]
            },
            {
                "name": "2B",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "203"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "212"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "220"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "250"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "262"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "203"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "212"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "220"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "250"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "262"
                    }
                ]
            },
            {
                "name": "3A",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "303"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "321"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "340"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "351"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "354"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "303"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "321"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "340"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "351"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "354"
                    }
                ]
            },
            {
                "name": "3B",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "322"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "353"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "360"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "362"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "380"
                    },
                    {
                        "sbj_list": "MSCI",
                        "cnbr_name": "261"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "322"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "353"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "360"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "362"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "380"
                    },
                    {
                        "sbj_list": "MSCI",
                        "cnbr_name": "261"
                    }
                ]
            },
            {
                "name": "4A",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "481"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "481"
                    }
                ]
            },
            {
                "name": "4B",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "482"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "482"
                    }
                ]
            }
        ],
        "categoryIterator": [
            {
                "name": "1A",
                "requirementList": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "147"
                    },
                    {
                        "sbj_list": "PSYCH",
                        "cnbr_name": "101"
                    },
                    {
                        "sbj_list": "SPCOM",
                        "cnbr_name": "223"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "145"
                    },
                    {
                        "sbj_list": "MATH",
                        "cnbr_name": "147"
                    },
                    {
                        "sbj_list": "PSYCH",
                        "cnbr_name": "101"
                    },
                    {
                        "sbj_list": "SPCOM",
                        "cnbr_name": "223"
                    }
                ]
            },
            {
                "name": "1B",
                "requirementList": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "146"
                    },
                    {
                        "sbj_list": "ECE",
                        "cnbr_name": "142"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "115"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "123"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "CS",
                        "cnbr_name": "146"
                    },
                    {
                        "sbj_list": "ECE",
                        "cnbr_name": "142"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "115"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "123"
                    }
                ]
            },
            {
                "name": "2A",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "201"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "202"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "219"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "230"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "269"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "201"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "202"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "219"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "230"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "269"
                    }
                ]
            },
            {
                "name": "2B",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "203"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "212"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "220"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "250"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "262"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "203"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "212"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "220"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "250"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "262"
                    }
                ]
            },
            {
                "name": "3A",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "303"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "321"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "340"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "351"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "354"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "303"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "321"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "340"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "351"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "354"
                    }
                ]
            },
            {
                "name": "3B",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "322"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "353"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "360"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "362"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "380"
                    },
                    {
                        "sbj_list": "MSCI",
                        "cnbr_name": "261"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "322"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "353"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "360"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "362"
                    },
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "380"
                    },
                    {
                        "sbj_list": "MSCI",
                        "cnbr_name": "261"
                    }
                ]
            },
            {
                "name": "4A",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "481"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "481"
                    }
                ]
            },
            {
                "name": "4B",
                "requirementList": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "482"
                    }
                ],
                "requirementIterator": [
                    {
                        "sbj_list": "ME",
                        "cnbr_name": "482"
                    }
                ]
            }
        ]
    },
    "requirementCourseListMap": {
        "ME220": [],
        "ME354": [],
        "ME201": [],
        "SPCOM223": [
            {
                "sbj_list": "SPCOM",
                "cnbr_name": "223"
            }
        ],
        "ME303": [],
        "ECE142": [
            {
                "sbj_list": "ECE",
                "cnbr_name": "142"
            }
        ],
        "CS146": [
            {
                "sbj_list": "CS",
                "cnbr_name": "146"
            }
        ],
        "ME269": [],
        "MATH145": [
            {
                "sbj_list": "MATH",
                "cnbr_name": "145"
            }
        ],
        "ME230": [],
        "ME212": [],
        "PSYCH101": [
            {
                "sbj_list": "PSYCH",
                "cnbr_name": "101"
            }
        ],
        "ME362": [],
        "ME380": [],
        "ME262": [],
        "MSCI261": [],
        "ME351": [],
        "ME322": [],
        "ME353": [],
        "ME219": [],
        "ME481": [],
        "ME360": [],
        "ME203": [],
        "MATH147": [
            {
                "sbj_list": "MATH",
                "cnbr_name": "147"
            }
        ],
        "ME482": [],
        "ME340": [],
        "ME115": [
            {
                "sbj_list": "ME",
                "cnbr_name": "115"
            }
        ],
        "CS145": [
            {
                "sbj_list": "CS",
                "cnbr_name": "145"
            }
        ],
        "ME123": [
            {
                "sbj_list": "ME",
                "cnbr_name": "123"
            }
        ],
        "ME321": [],
        "ME202": [],
        "ME250": []
    },
    "categoryStatusMap": {
        "{1A,[CS145,MATH145,MATH147,PSYCH101,SPCOM223]}": "Complete",
        "{1B,[CS146,ECE142,ME115,ME123]}": "Complete",
        "{2A,[ME201,ME202,ME219,ME230,ME269]}": "Incomplete",
        "{2B,[ME203,ME212,ME220,ME250,ME262]}": "Incomplete",
        "{3A,[ME303,ME321,ME340,ME351,ME354]}": "Incomplete",
        "{3B,[ME322,ME353,ME360,ME362,ME380,MSCI261]}": "Incomplete",
        "{4A,[ME481]}": "Incomplete",
        "{4B,[ME482]}": "Incomplete"
    },
    "overallStatus": "Incomplete"
}

@owen-sellner owen-sellner marked this pull request as ready for review February 20, 2025 22:04
@owen-sellner owen-sellner changed the title Owen/audit feat: audit Feb 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant