Sindbad~EG File Manager
from sqlalchemy import create_engine, MetaData, Table, insert, select,update,delete,text
from sqlalchemy.sql import and_, or_
from core import app
import json
from .. import engine
#engine = create_engine(app.config['DATABASE_URI'])
# engine = create_engine(app.config['DATABASE_URI'],pool_size=5000,pool_pre_ping=True,pool_recycle=3600)
# engine = create_engine(app.config['DATABASE_URI'], poolclass=None,pool_size=5000,max_overflow=100,pool_pre_ping=True,pool_recycle=3600)
class UserWork():
def __init__(self):
try:
self.meta = MetaData()
self.user_works = Table("user_works", self.meta, autoload_with=engine)
except Exception as e:
print(e)
def get_work(self,work_id):
with engine.connect() as conn:
stmt = select(self.user_works).where(self.user_works.c.work_id.in_([work_id]))
result = conn.execute(stmt).first()
if result:
return dict(result._mapping)
else:
return None
def delete_work(self,work_id):
with engine.connect() as conn:
stmt = text("delete from user_works WHERE work_id IN("+str(work_id)+")")
result = conn.execute(stmt)
conn.commit()
return result
def count_work_user_id(self,user_id):
with engine.connect() as conn:
stmt = text("SELECT COUNT(user_id) as count FROM user_works where user_id="+ str(user_id) +";")
return conn.execute(stmt).first()
# ganesan
# insert or update qualification
def update_or_insert_work(self,user_id,work_id,data):
with engine.connect() as conn:
if (int(work_id) > 0):
data.pop("created_at")
stmt = self.user_works.update().where(self.user_works.c.work_id.in_([work_id])).values(data)
result = conn.execute(stmt)
else :
# insert block
result = conn.execute(self.user_works.insert(), data)
conn.commit()
stmt=text("select * from m_work_type as mw inner join user_works as uw on mw.work_type_id=uw.work_type_id left join m_position_type mp on mp.position_type_id=uw.position_type_id where user_id= "+str(user_id)+";")
results = conn.execute(stmt).all()
return [dict(r._mapping) for r in results] if results else None
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists