AddCustomer, AddContact finished

This commit is contained in:
2024-12-15 20:44:44 +01:00
parent 59e5fadd26
commit e28c68f643
5 changed files with 31 additions and 12 deletions

View File

@@ -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']

View File

@@ -8,14 +8,14 @@ class BusinessDAO:
self.__con = DbManager().getConnection()
self.__cur = self.__con.cursor()
def getBusiness(self, criterion = "Alle"):
self.__cur.callproc("getCustomerView", (criterion,))
def getBusiness(self, key, criterion = "Alle"):
self.__cur.callproc("getCustomerView", (key, criterion,))
self.__all_cols = [desc[0] for desc in self.__cur.description]
return self.__cur.fetchall(), self.__all_cols
def addBusiness(self, data, contact_id):
def addBusiness(self, key, data, contact_id):
try:
self.__cur.callproc("addBusiness", (json.dumps(data), contact_id))
self.__cur.callproc("addBusiness", (key, json.dumps(data), contact_id))
self.__con.commit()
except mariadb.Error as e:

View File

@@ -2,6 +2,7 @@
from PySide6.QtCore import QAbstractTableModel, QModelIndex, Qt, Slot, Signal
from .BusinessDAO import BusinessDAO
from ..PyqcrmFlags import PyqcrmFlags
from ..ConfigLoader import ConfigLoader
# USERS TABLE
# CUSTOMER_COLUMN_NAMES = \
@@ -66,11 +67,15 @@ class BusinessModel(QAbstractTableModel):
def __init__(self):
super().__init__()
self.__key = ConfigLoader().getKey()
self.__getData()
def __getData(self, criterion = "Alle"):
self.beginResetModel()
rows, self.__visible_columns = BusinessDAO().getBusiness(criterion)
rows, self.__visible_columns = BusinessDAO().getBusiness(self.__key, criterion)
print(rows)
self.__data = rows
self.endResetModel()
@@ -78,17 +83,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)
@@ -116,7 +125,7 @@ class BusinessModel(QAbstractTableModel):
@Slot(dict, int)
def addBusiness(self, business, contact_id):
BusinessDAO().addBusiness(business, contact_id)
BusinessDAO().addBusiness(self.__key, business, contact_id)
self.__getData()
@Slot(dict)

View File

@@ -12,9 +12,9 @@ class ContactDAO:
def getContacts(self):
print(f"*** File: {__file__}, getContacts()")
def addContact(self, contact):
def addContact(self, key, contact):
try:
self.__cur.callproc("addContactPerson", (json.dumps(contact),))
self.__cur.callproc("addContactPerson", (key, json.dumps(contact),))
self.__con.commit()
self.__cur.callproc("getLastInsertId")
contact_id = self.__cur.fetchone()

View File

@@ -1,5 +1,6 @@
from PySide6.QtCore import QAbstractTableModel, QModelIndex, Qt, Slot, QObject, Signal
from .ContactDAO import ContactDAO
from ..ConfigLoader import ConfigLoader
import logging
class ContactModel(QObject):
@@ -7,6 +8,7 @@ class ContactModel(QObject):
def __init__(self):
super().__init__()
#self.logger = logging.getLogger()
self.__key = ConfigLoader().getKey()
print(f"*** File: {__file__}, __init__()")
self.__data = self.__getData()
@@ -21,7 +23,9 @@ class ContactModel(QObject):
@Slot(dict)
def addContact(self, contact):
i = ContactDAO().addContact(contact)
print(len(self.__key))
print(self.__key)
i = ContactDAO().addContact(self.__key, contact)
self.contactIdReady.emit(i)