19 lines
689 B
Python
19 lines
689 B
Python
|
from sqlalchemy import create_engine
|
||
|
from sqlalchemy.orm import sessionmaker, scoped_session
|
||
|
from urllib.parse import quote_plus
|
||
|
|
||
|
def get_engine_for_company(company_id: str):
|
||
|
schema = f"hitpbx_{company_id}"
|
||
|
user = "appuser"
|
||
|
password = quote_plus("nmvP$x23Vzb@T%Su")
|
||
|
|
||
|
# Dev
|
||
|
# db_url = f"mysql+pymysql://root:mypass@127.0.0.1:3307/{schema}?charset=utf8mb4"
|
||
|
|
||
|
db_url = f"mysql+pymysql://{user}:{password}@172.31.187.150:6033/{schema}?charset=utf8mb4"
|
||
|
return create_engine(db_url, pool_pre_ping=True)
|
||
|
|
||
|
def get_session_for_company(company_id):
|
||
|
engine = get_engine_for_company(company_id)
|
||
|
Session = scoped_session(sessionmaker(bind=engine))
|
||
|
return Session
|