refactor: Migrated most manga queries and some chapter queries to SQLDelight

This commit is contained in:
Ahmad Ansori Palembani 2024-06-19 11:12:37 +07:00
parent 5ed2934b73
commit f6080cd5eb
Signed by: null2264
GPG key ID: BA64F8B60AF3EFB6
26 changed files with 450 additions and 211 deletions

View file

@ -36,3 +36,34 @@ getScanlatorsByMangaId:
SELECT scanlator
FROM chapters
WHERE manga_id = :mangaId;
delete:
DELETE FROM chapters
WHERE _id = :chapterId;
update:
UPDATE chapters SET
manga_id = coalesce(:mangaId, manga_id),
url = coalesce(:url, url),
name = coalesce(:name, name),
scanlator = coalesce(:scanlator, scanlator),
read = coalesce(:read, read),
bookmark = coalesce(:bookmark, bookmark),
last_page_read = coalesce(:lastPageRead, last_page_read),
pages_left = coalesce(:pagesLeft, pages_left),
chapter_number = coalesce(:chapterNumber, chapter_number),
source_order = coalesce(:sourceOrder, source_order),
date_fetch = coalesce(:dateFetch, date_fetch),
date_upload = coalesce(:dateUpload, date_upload)
WHERE _id = :chapterId;
fixSourceOrder:
UPDATE chapters SET source_order = :sourceOrder
WHERE url = :url AND manga_id = :mangaId;
insert:
INSERT INTO chapters (manga_id, url, name, scanlator, read, bookmark, last_page_read, pages_left, chapter_number, source_order, date_fetch, date_upload)
VALUES (:mangaId, :url, :name, :scanlator, :read, :bookmark, :lastPageRead, :pagesLeft, :chapterNumber, :sourceOrder, :dateFetch, :dateUpload);
selectLastInsertedRowId:
SELECT last_insert_rowid();

View file

@ -30,6 +30,16 @@ findAll:
SELECT *
FROM mangas;
findByUrlAndSource:
SELECT *
FROM mangas
WHERE url = :url AND source = :source;
findById:
SELECT *
FROM mangas
WHERE _id = :mangaId;
insert:
INSERT INTO mangas (source, url, artist, author, description, genre, title, status, thumbnail_url, favorite, last_update, initialized, viewer, hide_title, chapter_flags, date_added, filtered_scanlators, update_strategy)
VALUES (:source, :url, :artist, :author, :description, :genre, :title, :status, :thumbnailUrl, :favorite, :lastUpdate, :initialized, :viewer, :hideTitle, :chapterFlags, :dateAdded, :filteredScanlators, :updateStrategy);