def serialize_job_assignment(row, names=None) -> dict: names = names or {} user_key = str(row.user_id) if row.user_id else None by_key = str(row.assigned_by) if row.assigned_by else None return { "id": str(row.id), "job_post_id": str(row.job_post_id) if row.job_post_id else None, "user_id": user_key, "user_name": names.get(user_key) if user_key else None, "assignment_role": row.assignment_role, "valid_from": row.valid_from.isoformat() if row.valid_from else None, "valid_to": row.valid_to.isoformat() if row.valid_to else None, "assigned_by": by_key, "assigned_by_name": names.get(by_key) if by_key else None, "created_at": row.created_at.isoformat() if row.created_at else None, } def serialize_application_assignment(row, names=None) -> dict: names = names or {} user_key = str(row.user_id) if row.user_id else None by_key = str(row.assigned_by) if row.assigned_by else None return { "id": str(row.id), "inbox_id": row.inbox_id, "user_id": user_key, "user_name": names.get(user_key) if user_key else None, "assignment_role": row.assignment_role, "valid_from": row.valid_from.isoformat() if row.valid_from else None, "valid_to": row.valid_to.isoformat() if row.valid_to else None, "assigned_by": by_key, "assigned_by_name": names.get(by_key) if by_key else None, "created_at": row.created_at.isoformat() if row.created_at else None, }