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
engine = create_engine(app.config['DATABASE_URI'],pool_recycle=3600)
engine_fk = create_engine(app.config['DATABASE_URI_FK'],pool_recycle=3600)
class KitSessionModel():
def __init__(self):
try:
self.meta = MetaData()
self.kc_sessions = Table("kc_sessions", self.meta, autoload_with=engine_fk)
self.kc_users = Table("kc_users", self.meta, autoload_with=engine_fk)
except Exception as e:
print(e)
def getkcConf(self,conf_id,conf_key,current_dt):
with engine.connect() as conn:
stmt =text("select * from conference where conf_id ="+str(conf_id)+" and conf_key ='"+conf_key+"' ;")
result = conn.execute(stmt).one_or_none()
if result :
return dict(result._mapping)
else:
return None
def getKcConfData(self,conf_id,conf_key):
with engine.connect() as conn:
stmt =text("select * from conference where conf_id ="+str(conf_id)+" and conf_key ='"+conf_key+"';")
result = conn.execute(stmt).one_or_none()
if result :
return dict(result._mapping)
else:
return None
def getDataByuser_name(self,user_name):
with engine_fk.connect() as conn:
stmt = text("select * from kc_users where user_name = '"+user_name+"' ;")
result = conn.execute(stmt).one_or_none()
if result :
return dict(result._mapping)
else:
return None
def getSessionData(self,conf_id,conf_key):
with engine_fk.connect() as conn:
stmt_2 = text("SELECT k.session_id,k.session_name,k.session_key,k.start_time,k.end_time, k.is_active from kc_sessions k where conf_id ="+str(conf_id)+" and conf_key ='"+conf_key+"';")
result_2 = conn.execute(stmt_2).all()
results = [dict(r._mapping) for r in result_2] if result_2 else None
if results :
return results
else:
return None
def insert_kitdata_and_getdata(self,data,conf_id,conf_key):
with engine_fk.connect() as conn:
result = conn.execute(self.kc_sessions.insert(), data)
conn.commit()
stmt_2 = text("SELECT k.session_id,k.session_name,k.session_key,k.start_time,k.end_time,k.is_active from kc_sessions k where conf_id ="+str(conf_id)+" and conf_key ='"+conf_key+"';")
result_2 = conn.execute(stmt_2).all()
results = [dict(r._mapping) for r in result_2] if result_2 else None
if results :
return results
else:
return None
def edit_kitbo(self,session_id):
with engine_fk.connect() as conn:
stmt = select(self.kc_sessions).where(self.kc_sessions.c.session_id.in_([session_id]))
result = conn.execute(stmt).one_or_none()
if result :
return dict(result._mapping)
else :
return None
def update_kitbo_and_getdata(self,data_for_update,session_id,conf_id,conf_key):
with engine_fk.connect() as conn:
stmt = self.kc_sessions.update().where(self.kc_sessions.c.session_id.in_([session_id])).values(data_for_update)
restult_1 = conn.execute(stmt)
conn.commit()
stmt_2 = text("SELECT k.session_id,k.session_name,k.session_key,k.start_time,k.end_time, k.is_active from kc_sessions k where conf_id ="+str(conf_id)+" and conf_key ='"+conf_key+"';")
result_2 = conn.execute(stmt_2).all()
results = [dict(r._mapping) for r in result_2] if result_2 else None
if results :
return results
else:
return None
def delete_kit_session_index(self,session_id):
with engine_fk.connect() as conn:
stmt = self.kc_sessions.delete().where(self.kc_sessions.c.session_id.in_([session_id]))
restult_1 = conn.execute(stmt)
conn.commit()
stmt_2 = text("SELECT k.session_id,k.session_name,k.session_key,k.start_time,k.end_time from kc_sessions k ;")
result_2 = conn.execute(stmt_2).all()
results = [dict(r._mapping) for r in result_2] if result_2 else None
if results :
return results
else:
return None
def updateKITLoginTime(self,kc_user_id,current_dt) :
with engine_fk.connect() as conn:
stmt = text("UPDATE kc_users set login_at = '"+current_dt+"' where kc_user_id = " + str(kc_user_id) + " ;")
results = conn.execute(stmt)
conn.commit()
if results :
return "success"
else:
return "failure"
# get Kit sessions data
def getKcsessionData(self,conf_id,conf_key) :
with engine_fk.connect() as conn:
stmt = text("select * from kc_sessions where conf_id ="+str(conf_id)+" and conf_key = '"+conf_key+"';")
result = conn.execute(stmt).one_or_none()
if result :
return dict(result._mapping)
else :
return None
def insert_kit_session(self,session_insert_stmt):
with engine_fk.connect() as conn:
stmt = text(session_insert_stmt)
result = conn.execute(stmt)
conn.commit()
return result
# delete kit scanned data start
def getkcsession_names(self,conf_id) :
with engine_fk.connect() as conn:
stmt = text("select * from kc_sessions where conf_id = '"+str(conf_id)+"';")
result_2 = conn.execute(stmt).all()
results = [dict(r._mapping) for r in result_2] if result_2 else None
if results :
return results
else:
return None
def getKcsession_data_by_delno(self,conf_id,kc_session_entry_table,del_table_name,session_id,delegate_nos,full_name) :
with engine_fk.connect() as conn:
if full_name :
stmt = text("select * from "+del_table_name+" as d inner join "+kc_session_entry_table+" as se on d.delegate_no = se.delegate_no where se.session_id = '"+str(session_id)+"' and d.full_name like '%"+full_name+"%' ;")
else :
stmt = text("select * from "+del_table_name+" as d inner join "+kc_session_entry_table+" as se on d.delegate_no = se.delegate_no where se.session_id = '"+str(session_id)+"' and se.delegate_no in ("+delegate_nos+") ;")
result_2 = conn.execute(stmt).all()
results = [dict(r._mapping) for r in result_2] if result_2 else None
return results
def DeleteKcsession_data_by_delno(self,kc_session_entry_table,session_id,delegate_nos) :
with engine_fk.connect() as conn:
stmt = text("delete from "+kc_session_entry_table+" where session_id = "+str(session_id)+" and delegate_no in ("+str(delegate_nos)+");")
safe_update = text("SET SQL_SAFE_UPDATES = 0 ")
results= conn.execute(safe_update)
result = conn.execute(stmt)
conn.commit()
if result :
return "success"
else:
return "fail"
def getKcsession_data_by_delno_uncheck(self,kc_session_entry_table,del_table_name,session_id,uncheck_del_nos,full_name) :
with engine_fk.connect() as conn:
if full_name :
stmt = text("select * from "+del_table_name+" as d inner join "+kc_session_entry_table+" as se on d.delegate_no = se.delegate_no where se.session_id = "+str(session_id)+" and d.full_name like '%"+full_name+"%' ;")
else :
stmt = text("select * from "+del_table_name+" as d inner join "+kc_session_entry_table+" as se on d.delegate_no = se.delegate_no where se.session_id = "+str(session_id)+" and se.delegate_no in ("+str(uncheck_del_nos)+") ;")
result = conn.execute(stmt).all()
results = [dict(r._mapping) for r in result] if result else None
return results
# delete kit scanned data end
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists