| 1234567891011121314151617181920212223242526272829303132333435 | from sqlalchemy.orm import Sessionfrom extensions.ext_database import dbfrom models.account import TenantPluginPermissionclass PluginPermissionService:    @staticmethod    def get_permission(tenant_id: str) -> TenantPluginPermission | None:        with Session(db.engine) as session:            return session.query(TenantPluginPermission).filter(TenantPluginPermission.tenant_id == tenant_id).first()    @staticmethod    def change_permission(        tenant_id: str,        install_permission: TenantPluginPermission.InstallPermission,        debug_permission: TenantPluginPermission.DebugPermission,    ):        with Session(db.engine) as session:            permission = (                session.query(TenantPluginPermission).filter(TenantPluginPermission.tenant_id == tenant_id).first()            )            if not permission:                permission = TenantPluginPermission(                    tenant_id=tenant_id, install_permission=install_permission, debug_permission=debug_permission                )                session.add(permission)            else:                permission.install_permission = install_permission                permission.debug_permission = debug_permission            session.commit()            return True
 |