Sindbad~EG File Manager

Current Path : /home/numerotech/test-membership.numerotech.com/CommonMembershipApp/core/model/
Upload File :
Current File : //home/numerotech/test-membership.numerotech.com/CommonMembershipApp/core/model/UserPublication.py

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_pre_ping=True)

class Userpublication():
	def __init__(self):
		try:
			self.meta               = MetaData()
			self.user_publication         = Table("user_publication", self.meta, autoload_with=engine)
		   
		except Exception as e:
			print(e)

	
	def get_publication(self,publication_id):
		with engine.connect() as conn:
			stmt = select(self.user_publication).where(self.user_publication.c.publication_id.in_([publication_id]))
			results = conn.execute(stmt)
			output = results.first()
			if output:
				return dict(output._mapping)
			else:
				return None       

	def delete_publication(self,publication_id):
		with engine.connect() as conn:
			stmt = text("delete from user_publication WHERE publication_id IN("+str(publication_id)+")")
			result = conn.execute(stmt)
			conn.commit()
			return result
			
	# ganesan 
	 # insert or update qualification
	def update_or_insert_publication(self,user_id,publication_id,data):
		with engine.connect() as conn:
			if (int(publication_id) > 0):
				data.pop("created_at")
				stmt = self.user_publication.update().where(self.user_publication.c.publication_id.in_([publication_id])).values(data)
				result = conn.execute(stmt)
			else :
				# insert block
				result = conn.execute(self.user_publication.insert(), data)
			conn.commit()
			stmt = text("select * from  user_publication where user_id= "+str(user_id)+";")            
			results = conn.execute(stmt).all()
			return  [dict(r._mapping) for r in results] if results else None      

	def get_publication_by_user(self,user_id):
		with engine.connect() as conn:
			stmt = text("select * from user_publication 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