Compare commits
3 Commits
feature/ap
...
857a8b6fa0
| Author | SHA256 | Date | |
|---|---|---|---|
| 857a8b6fa0 | |||
| 40d308d965 | |||
| e28c68f643 |
@@ -34,6 +34,7 @@ class ConfigLoader(QObject):
|
||||
# print(f"In {__file__} file, __init__()")
|
||||
self.config_dir = user_config_dir() + '/pyqcrm'
|
||||
config_dir = Path(self.config_dir)
|
||||
|
||||
if config_dir.exists():
|
||||
self.__configLoad()
|
||||
if self.__config:
|
||||
@@ -41,6 +42,7 @@ class ConfigLoader(QObject):
|
||||
else:
|
||||
config_dir.mkdir(0o750, True, True)
|
||||
|
||||
|
||||
@Slot(dict, result= bool)
|
||||
def setConfig(self, app_config):
|
||||
# print(f"In {__file__} file, setConfig()")
|
||||
@@ -212,3 +214,7 @@ class ConfigLoader(QObject):
|
||||
self.__config['pyqcrm']['ENCRYPTION_KEY'] = enc_key
|
||||
self.__saveConfig()
|
||||
|
||||
def getKey(self):
|
||||
|
||||
return self.__config['pyqcrm']['ENCRYPTION_KEY']
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@ class BusinessDAO(QObject):
|
||||
if self.__con:
|
||||
self.__cur = self.__con.cursor()
|
||||
|
||||
|
||||
|
||||
def getBusiness(self, enc_key, criterion = "Alle"):
|
||||
if self.__cur:
|
||||
self.__cur.callproc("getCustomerView", (enc_key, criterion,))
|
||||
@@ -24,10 +26,13 @@ class BusinessDAO(QObject):
|
||||
else:
|
||||
return None, None
|
||||
|
||||
def addBusiness(self, data, contact_id):
|
||||
|
||||
|
||||
def addBusiness(self, key, data, contact_id):
|
||||
try:
|
||||
|
||||
if self.__cur:
|
||||
self.__cur.callproc("addBusiness", (json.dumps(data), contact_id))
|
||||
self.__cur.callproc("addBusiness", (key, json.dumps(data), contact_id))
|
||||
self.__con.commit()
|
||||
self.newBusinessAdded.emit()
|
||||
|
||||
|
||||
@@ -68,15 +68,23 @@ class BusinessModel(QAbstractTableModel):
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
|
||||
self.__business_dao = BusinessDAO()
|
||||
self.__business_dao.newBusinessAdded.connect(self.__refreshView)
|
||||
self.__conf = ConfigLoader().getConfig()
|
||||
self.__key = self.__conf['pyqcrm']['ENCRYPTION_KEY']
|
||||
|
||||
self.__getData()
|
||||
|
||||
|
||||
def __getData(self, criterion = "Alle"):
|
||||
self.beginResetModel()
|
||||
|
||||
|
||||
rows, self.__visible_columns = self.__business_dao.getBusiness(self.__key, criterion)
|
||||
|
||||
|
||||
self.__data = rows
|
||||
self.endResetModel()
|
||||
|
||||
@@ -84,17 +92,21 @@ class BusinessModel(QAbstractTableModel):
|
||||
return len (self.__data)
|
||||
|
||||
def columnCount(self, parent= QModelIndex()):
|
||||
return len(self.__visible_columns) - 1
|
||||
#return len(self.__visible_columns) - 1
|
||||
return len(self.__visible_columns)
|
||||
|
||||
|
||||
def data(self, index, role= Qt.DisplayRole):
|
||||
if role == Qt.DisplayRole:
|
||||
row = self.__data[index.row()]
|
||||
return row[index.column() + 1]
|
||||
#return row[index.column() + 1]
|
||||
return row[index.column()]
|
||||
return None
|
||||
|
||||
def headerData(self, section, orientation, role= Qt.DisplayRole):
|
||||
if orientation == Qt.Horizontal and role ==Qt.DisplayRole:
|
||||
self.__col_name = self.__visible_columns[section + 1]
|
||||
#self.__col_name = self.__visible_columns[section + 1]
|
||||
self.__col_name = self.__visible_columns[section]
|
||||
return self.__col_name
|
||||
return super().headerData(section, orientation, role)
|
||||
|
||||
@@ -122,10 +134,13 @@ class BusinessModel(QAbstractTableModel):
|
||||
|
||||
@Slot(dict, int)
|
||||
def addBusiness(self, business, contact_id):
|
||||
self.__business_dao.addBusiness(business, contact_id)
|
||||
|
||||
|
||||
BusinessDAO().addBusiness(self.__key, business, contact_id)
|
||||
|
||||
@Slot()
|
||||
def __refreshView(self):
|
||||
|
||||
self.__getData()
|
||||
|
||||
@Slot(dict)
|
||||
|
||||
@@ -13,16 +13,14 @@ class ContactDAO:
|
||||
def getContacts(self):
|
||||
print(f"*** File: {__file__}, getContacts()")
|
||||
|
||||
def addContact(self, contact, enc_key):
|
||||
def addContact(self, key, contact):
|
||||
try:
|
||||
if self.__cur:
|
||||
self.__cur.callproc("addContactPerson", (enc_key, json.dumps(contact),))
|
||||
self.__con.commit()
|
||||
self.__cur.callproc("getLastInsertId")
|
||||
contact_id = self.__cur.fetchone()
|
||||
return contact_id[0]
|
||||
else:
|
||||
return None
|
||||
self.__cur.callproc("addContactPerson", (key, json.dumps(contact),))
|
||||
self.__con.commit()
|
||||
self.__cur.callproc("getLastInsertId")
|
||||
contact_id = self.__cur.fetchone()
|
||||
return contact_id[0]
|
||||
|
||||
except mariadb.Error as e:
|
||||
print("MDB: " + str(e))
|
||||
except Exception as e:
|
||||
|
||||
@@ -9,8 +9,14 @@ class ContactModel(QObject):
|
||||
super().__init__()
|
||||
# print(f"*** File: {__file__}, __init__()")
|
||||
#self.logger = logging.getLogger()
|
||||
|
||||
|
||||
self.__conf = ConfigLoader().getConfig()
|
||||
self.__key = self.__conf['pyqcrm']['ENCRYPTION_KEY']
|
||||
|
||||
self.__key = ConfigLoader().getKey()
|
||||
print(f"*** File: {__file__}, __init__()")
|
||||
|
||||
self.__data = self.__getData()
|
||||
|
||||
def getContacts(self):
|
||||
@@ -24,7 +30,10 @@ class ContactModel(QObject):
|
||||
|
||||
@Slot(dict)
|
||||
def addContact(self, contact):
|
||||
|
||||
|
||||
i = ContactDAO().addContact(contact, self.__key)
|
||||
|
||||
self.contactIdReady.emit(i)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user