|
|
|
|
@ -1,6 +1,10 @@
|
|
|
|
|
import os
|
|
|
|
|
|
|
|
|
|
import requests
|
|
|
|
|
|
|
|
|
|
from extensions.ext_database import db
|
|
|
|
|
from models.account import TenantAccountJoin
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BillingService:
|
|
|
|
|
base_url = os.environ.get('BILLING_API_URL', 'BILLING_API_URL')
|
|
|
|
|
@ -55,3 +59,15 @@ class BillingService:
|
|
|
|
|
response = requests.request(method, url, json=json, params=params, headers=headers)
|
|
|
|
|
|
|
|
|
|
return response.json()
|
|
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
|
def is_tenant_owner(current_user):
|
|
|
|
|
tenant_id = current_user.current_tenant_id
|
|
|
|
|
|
|
|
|
|
join = db.session.query(TenantAccountJoin).filter(
|
|
|
|
|
TenantAccountJoin.tenant_id == tenant_id,
|
|
|
|
|
TenantAccountJoin.account_id == current_user.id
|
|
|
|
|
).first()
|
|
|
|
|
|
|
|
|
|
if join.role != 'owner':
|
|
|
|
|
raise ValueError('Only tenant owner can perform this action')
|
|
|
|
|
|