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