mirror of https://github.com/tasks/tasks
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.9 KiB
Java
58 lines
1.9 KiB
Java
package org.tasks.data;
|
|
|
|
import android.arch.persistence.room.Dao;
|
|
import android.arch.persistence.room.Delete;
|
|
import android.arch.persistence.room.Insert;
|
|
import android.arch.persistence.room.Query;
|
|
import android.arch.persistence.room.Update;
|
|
import java.util.List;
|
|
|
|
@Dao
|
|
public interface GoogleTaskDao {
|
|
|
|
@Query("DELETE FROM google_tasks WHERE list_id = :remoteId")
|
|
void deleteList(String remoteId);
|
|
|
|
@Insert
|
|
void insert(GoogleTask task);
|
|
|
|
@Query("SELECT * FROM google_tasks WHERE task = :taskId AND deleted = 0 LIMIT 1")
|
|
GoogleTask getByTaskId(long taskId);
|
|
|
|
@Update
|
|
void update(GoogleTask googleTask);
|
|
|
|
@Query(
|
|
"SELECT * FROM google_tasks WHERE list_id = :listId AND parent = :parent ORDER BY remote_order ASC")
|
|
List<GoogleTask> byRemoteOrder(String listId, long parent);
|
|
|
|
@Query(
|
|
"SELECT * FROM google_tasks WHERE list_id = :listId AND `order` > :startAtOrder - 1 ORDER BY `order` ASC ")
|
|
List<GoogleTask> getTasksFrom(String listId, long startAtOrder);
|
|
|
|
@Query(
|
|
"SELECT * FROM google_tasks WHERE list_id = :listId AND `order` < :startAtOrder ORDER BY `order` DESC")
|
|
List<GoogleTask> getTasksFromReverse(String listId, long startAtOrder);
|
|
|
|
@Query("DELETE FROM google_tasks WHERE task = :taskId")
|
|
void deleteByTaskId(long taskId);
|
|
|
|
@Delete
|
|
void delete(GoogleTask deleted);
|
|
|
|
@Query("SELECT * FROM google_tasks WHERE remote_id = :remoteId LIMIT 1")
|
|
GoogleTask getByRemoteId(String remoteId);
|
|
|
|
@Query("SELECT * FROM google_tasks WHERE task = :taskId AND deleted > 0")
|
|
List<GoogleTask> getDeletedByTaskId(long taskId);
|
|
|
|
@Query("SELECT * FROM google_tasks WHERE task = :taskId")
|
|
List<GoogleTask> getAllByTaskId(long taskId);
|
|
|
|
@Query("SELECT DISTINCT list_id FROM google_tasks WHERE deleted = 0 AND task IN (:tasks)")
|
|
List<String> getLists(List<Long> tasks);
|
|
|
|
@Query("SELECT task FROM google_tasks WHERE deleted = 0 AND list_id = :listId")
|
|
List<Long> getActiveTasks(String listId);
|
|
}
|