Adds removing a monster from the dashboard via long press.
This commit is contained in:
@@ -3,9 +3,11 @@ package com.majinnaibu.monstercards.data;
|
||||
import androidx.room.Dao;
|
||||
import androidx.room.Insert;
|
||||
import androidx.room.Query;
|
||||
import androidx.room.Transaction;
|
||||
import androidx.room.Update;
|
||||
|
||||
import com.majinnaibu.monstercards.models.DashboardMonster;
|
||||
import com.majinnaibu.monstercards.models.DashboardMonsterWithMonster;
|
||||
import com.majinnaibu.monstercards.models.Monster;
|
||||
|
||||
import java.util.List;
|
||||
@@ -19,6 +21,10 @@ public interface DashboardDAO {
|
||||
@Query("SELECT monsters.* FROM monsters INNER JOIN dashboard_monsters ON monsters.id = dashboard_monsters.monster_id ORDER BY dashboard_monsters.ordinal ASC, dashboard_monsters.id ASC")
|
||||
Flowable<List<Monster>> getDashboardMonsters();
|
||||
|
||||
@Transaction
|
||||
@Query("SELECT * FROM dashboard_monsters ORDER BY ordinal ASC, id ASC")
|
||||
Flowable<List<DashboardMonsterWithMonster>> getDashboardMonstersWithMonster();
|
||||
|
||||
@Query("SELECT * FROM dashboard_monsters ORDER BY ordinal ASC, id ASC")
|
||||
Flowable<List<DashboardMonster>> getDashboardMonsterEntries();
|
||||
|
||||
@@ -28,9 +34,12 @@ public interface DashboardDAO {
|
||||
@Query("DELETE FROM dashboard_monsters WHERE id = :id")
|
||||
Completable removeDashboardMonsterById(long id);
|
||||
|
||||
@Query("DELETE FROM dashboard_monsters WHERE monster_id = :monsterId")
|
||||
@Query("DELETE FROM dashboard_monsters WHERE id = (SELECT id FROM dashboard_monsters WHERE monster_id = :monsterId LIMIT 1)")
|
||||
Completable removeMonsterFromDashboard(String monsterId);
|
||||
|
||||
@Query("DELETE FROM dashboard_monsters WHERE monster_id = :monsterId")
|
||||
Completable removeAllMonstersFromDashboard(String monsterId);
|
||||
|
||||
@Query("DELETE FROM dashboard_monsters")
|
||||
Completable clearDashboard();
|
||||
|
||||
|
||||
@@ -208,6 +208,13 @@ public class MonsterRepository {
|
||||
.observeOn(AndroidSchedulers.mainThread());
|
||||
}
|
||||
|
||||
public Flowable<List<com.majinnaibu.monstercards.models.DashboardMonsterWithMonster>> getDashboardMonstersWithMonster() {
|
||||
return m_db.dashboardDAO()
|
||||
.getDashboardMonstersWithMonster()
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread());
|
||||
}
|
||||
|
||||
public Flowable<List<DashboardMonster>> getDashboardMonsterEntries() {
|
||||
return m_db.dashboardDAO()
|
||||
.getDashboardMonsterEntries()
|
||||
|
||||
Reference in New Issue
Block a user