import json import mariadb from PySide6.QtCore import QObject, Signal from lib.domain.BaseModel import database class BusinessDAO(QObject): newBusinessAdded = Signal() __cur = None __all_cols = None def __init__(self): super().__init__() self.__con = database.connection() if self.__con: self.__cur = self.__con.cursor() def getBusiness(self, enc_key, criterion="Alle"): try: if self.__cur: self.__cur.callproc("getCustomerView", (enc_key, criterion,)) self.__all_cols = [desc[0] for desc in self.__cur.description] return self.__cur.fetchall(), self.__all_cols else: return None, None except mariadb.Error as e: print(str(e)) def getOneBusiness(self, business_id, enc_key=None): try: if self.__cur: self.__cur.callproc("getCustomer", (business_id, enc_key,)) # self.__all_cols = [desc[0] for desc in self.__cur.description] return self.__cur.fetchall() # , self.__all_cols else: return None # , None except mariadb.Error as e: print(str(e)) def addBusiness(self, data, contact_id): try: if self.__cur: self.__cur.callproc("addBusiness", (json.dumps(data), contact_id)) self.__con.commit() self.newBusinessAdded.emit() except mariadb.Error as e: print(str(e))