models: Make table names non-hardcoded

master
Felix Stupp 2 years ago
parent 66c37e72aa
commit 52a5aa29d7
Signed by: zocker
GPG Key ID: 93E1BD26F6B02FB7

@ -846,17 +846,17 @@ def sql_is_considered(elem_id: str, use_cache: bool = True) -> str:
f"""
SELECT c.element2
FROM {MEDIAELEMENT_BLOCKING_LOOKUP_CACHE_TABLE} c
INNER JOIN mediaelement m2 ON c.element1 = m2.id
INNER JOIN {MediaElement._table_} m2 ON c.element1 = m2.id
WHERE c.element2 = {elem_id} AND NOT (m2.watched OR m2.ignored)
"""
if use_cache
else f"""
SELECT *
FROM mediaelement look_elem
INNER JOIN mediacollectionlink link ON link.element = look_elem.id
INNER JOIN mediacollection coll ON coll.id = link.collection
INNER JOIN mediacollectionlink coll_link ON coll_link.collection = coll.id
INNER JOIN mediaelement coll_elem ON coll_elem.id = coll_link.element
FROM {MediaElement._table_} look_elem
INNER JOIN {MediaCollectionLink._table_} link ON link.element = look_elem.id
INNER JOIN {MediaCollection._table_} coll ON coll.id = link.collection
INNER JOIN {MediaCollectionLink._table_} coll_link ON coll_link.collection = coll.id
INNER JOIN {MediaElement._table_} coll_elem ON coll_elem.id = coll_link.element
WHERE look_elem.id = {elem_id}
AND coll.watch_in_order
AND NOT (coll_elem.watched OR coll_elem.ignored)
@ -867,7 +867,7 @@ def sql_is_considered(elem_id: str, use_cache: bool = True) -> str:
) AND NOT EXISTS (
SELECT *
FROM mediaelement_mediaelement m_m
INNER JOIN mediaelement m ON m_m.mediaelement = m.id
INNER JOIN {MediaElement._table_} m ON m_m.mediaelement = m.id
WHERE m_m.mediaelement_2 = {elem_id} AND NOT (m.watched OR m.ignored)
)
"""
@ -879,7 +879,7 @@ def is_considered(elem_id: int) -> bool:
sql_cleanup(
f"""
SELECT elem.id
FROM mediaelement elem
FROM {MediaElement._table_} elem
WHERE elem.id = {elem_id}
AND NOT (elem.watched OR elem.ignored)
AND elem.release_date <= NOW()
@ -896,7 +896,7 @@ def are_multiple_considered(elem_ids: Iterable[int]) -> Mapping[int, bool]:
sql_cleanup(
f"""
SELECT elem.id
FROM mediaelement elem
FROM {MediaElement._table_} elem
WHERE NOT (elem.watched OR elem.ignored)
AND elem.release_date <= NOW()
AND ({sql_is_considered("elem.id")})
@ -914,7 +914,7 @@ def get_all_considered(
sql_cleanup(
f"""
SELECT elem.*
FROM mediaelement elem
FROM {MediaElement._table_} elem
WHERE NOT (elem.watched OR elem.ignored)
AND elem.release_date <= NOW()
AND {filter_by}
@ -945,14 +945,14 @@ def update_element_lookup_cache(collection_ids: List[int] = []):
l1.element AS element1,
l2.element AS element2
FROM
mediacollection c
INNER JOIN mediacollectionlink l1 ON
{MediaCollection._table_} c
INNER JOIN {MediaCollectionLink._table_} l1 ON
c.id = l1.collection
INNER JOIN mediacollectionlink l2 ON
INNER JOIN {MediaCollectionLink._table_} l2 ON
c.id = l2.collection
INNER JOIN mediaelement e1 ON
INNER JOIN {MediaElement._table_} e1 ON
l1.element = e1.id
INNER JOIN mediaelement e2 ON
INNER JOIN {MediaElement._table_} e2 ON
l2.element = e2.id
WHERE
(
@ -996,14 +996,14 @@ CUSTOM_TABLE_DEFINITIONS: Mapping[SafeStr, str] = {
l1.element AS element1,
l2.element AS element2
FROM
mediacollection c
INNER JOIN mediacollectionlink l1 ON
{MediaCollection._table_} c
INNER JOIN {MediaCollectionLink._table_} l1 ON
c.id = l1.collection
INNER JOIN mediacollectionlink l2 ON
INNER JOIN {MediaCollectionLink._table_} l2 ON
c.id = l2.collection
INNER JOIN mediaelement e1 ON
INNER JOIN {MediaElement._table_} e1 ON
l1.element = e1.id
INNER JOIN mediaelement e2 ON
INNER JOIN {MediaElement._table_} e2 ON
l2.element = e2.id
WHERE
(

Loading…
Cancel
Save