Move querylistmodel from SQL to filter
This commit is contained in:
parent
8b8edba64d
commit
994d510ed9
@ -27,6 +27,7 @@ from sqlalchemy.orm.session import Session
|
||||
# App imports
|
||||
from classes import (
|
||||
ApplicationError,
|
||||
Filter,
|
||||
QueryCol,
|
||||
)
|
||||
from config import Config
|
||||
@ -37,7 +38,7 @@ from helpers import (
|
||||
show_warning,
|
||||
)
|
||||
from log import log
|
||||
from models import db, Playdates, run_sql
|
||||
from models import db, Playdates
|
||||
from music_manager import RowAndTrack
|
||||
|
||||
|
||||
@ -62,16 +63,16 @@ class QuerylistModel(QAbstractTableModel):
|
||||
|
||||
"""
|
||||
|
||||
def __init__(self, session: Session, sql: str) -> None:
|
||||
def __init__(self, session: Session, filter: Filter) -> None:
|
||||
"""
|
||||
Load query
|
||||
"""
|
||||
|
||||
log.debug(f"QuerylistModel.__init__({sql=})")
|
||||
log.debug(f"QuerylistModel.__init__({filter=})")
|
||||
|
||||
super().__init__()
|
||||
self.session = session
|
||||
self.sql = sql
|
||||
self.filter = filter
|
||||
|
||||
self.querylist_rows: dict[int, QueryRow] = {}
|
||||
self._selected_rows: set[int] = set()
|
||||
@ -79,7 +80,7 @@ class QuerylistModel(QAbstractTableModel):
|
||||
self.load_data()
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"<QuerylistModel: sql={self.sql}, {self.rowCount()} rows>"
|
||||
return f"<QuerylistModel: filter={self.filter}, {self.rowCount()} rows>"
|
||||
|
||||
def background_role(self, row: int, column: int, qrow: QueryRow) -> QVariant:
|
||||
"""Return background setting"""
|
||||
@ -227,7 +228,7 @@ class QuerylistModel(QAbstractTableModel):
|
||||
row = 0
|
||||
|
||||
try:
|
||||
results = run_sql(self.session, self.sql)
|
||||
results = Tracks.get_filtered(self.session, self.filter)
|
||||
for result in results:
|
||||
if hasattr(result, "lastplayed"):
|
||||
lastplayed = result["lastplayed"]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user