from app.schemas.permissions import RoleSnapshotItem, RoleSnapshotResponse class PermissionService: @staticmethod def build_role_snapshot(user_sub: str, rows: list[tuple[str, str, str, str, str, str, str, str, str]]) -> RoleSnapshotResponse: return RoleSnapshotResponse( user_sub=user_sub, roles=[ RoleSnapshotItem( site_key=site_key, site_display_name=site_display_name, company_key=company_key, company_display_name=company_display_name, system_key=system_key, system_name=system_name, role_key=role_key, role_code=role_code, role_name=role_name, ) for ( site_key, site_display_name, company_key, company_display_name, system_key, system_name, role_key, role_code, role_name, ) in rows ], )