add export to json
This commit is contained in:
+18
-13
@@ -6,25 +6,18 @@ from database import KontorDB
|
||||
|
||||
class KontorModelConfig:
|
||||
|
||||
def __init__(self, kontor_db: KontorDB, main_window, table_name: str):
|
||||
def __init__(self, kontor_db: KontorDB, main_window, table_name: str, table):
|
||||
self.header = {}
|
||||
self.filter = {}
|
||||
self.main_window = main_window
|
||||
self._table = table_name
|
||||
self._table_id = None
|
||||
self._table_name = table_name
|
||||
self._table = table
|
||||
self.kontor_db = kontor_db
|
||||
self.get_table_config()
|
||||
|
||||
def get_table_id(self):
|
||||
if self._table_id is not None:
|
||||
return
|
||||
self._table_id = self.kontor_db.get_table_id(self._table)
|
||||
|
||||
def get_table_config(self):
|
||||
if self._table_id is None:
|
||||
self.get_table_id()
|
||||
self.header = self.kontor_db.get_column_meta_data(self._table_id, self._table)
|
||||
self.filter = self.kontor_db.get_filters(self._table_id)
|
||||
self.header = self.kontor_db.get_column_meta_data(self._table_name)
|
||||
self.filter = self.kontor_db.get_filters(self._table_name)
|
||||
|
||||
def get_filter(self) -> str:
|
||||
filter_rule = ""
|
||||
@@ -41,8 +34,20 @@ class KontorModelConfig:
|
||||
# print(f"{filter_rule=}")
|
||||
return filter_rule
|
||||
|
||||
def filters(self) -> dict:
|
||||
_filters = {}
|
||||
# print(self.filter["download"].isChecked())
|
||||
for column, filter_info in self.filter.items():
|
||||
# print(column, filter_info)
|
||||
if filter_info['widget'].isChecked():
|
||||
_filters[column] = True
|
||||
# print(f"{filter_rule=}")
|
||||
return _filters
|
||||
|
||||
def get_data(self) -> list:
|
||||
data = self.kontor_db.get_data(self._table, self.header, self.get_filter())
|
||||
# data = self.kontor_db.get_data(self._table_name, self.header, self.get_filter())
|
||||
# data.clear()
|
||||
data = self.kontor_db.data(self._table, self.header, self.filters())
|
||||
# print(f"KontorModelConfig.get_data: {len(data)}")
|
||||
# comics = self.kontor_db.session.query(Comic).all()
|
||||
# print(f'{len(comics)} Comics loaded')
|
||||
|
||||
Reference in New Issue
Block a user