from db import db, University, FacultyUniversity class UniversityService: def get_all_universities(self): return [university.to_dict() for university in University.query.all()] def get_university(self, university_id): university = University.query.get(university_id) return university.to_dict() if university else None def create_university(self, name): university = University(name=name) db.session.add(university) db.session.commit() return university.to_dict() def update_university(self, university_id, name): university = self.get_university(university_id) if university: university_obj = University.query.get(university_id) university_obj.name = name db.session.commit() return university_obj.to_dict() return None def delete_university(self, university_id): university = self.get_university(university_id) if university: db.session.delete(University.query.get(university_id)) db.session.commit() def add_faculty_to_university(self, university_id, faculty_id): association = FacultyUniversity(university_id=university_id, faculty_id=faculty_id) db.session.add(association) db.session.commit() def remove_faculty_from_university(self, university_id, faculty_id): association = FacultyUniversity.query.filter_by(university_id=university_id, faculty_id=faculty_id).first() if association: db.session.delete(association) db.session.commit()