Allow to reorder and rename categories

This commit is contained in:
inorichi
2015-12-28 18:06:07 +01:00
parent e548cbf171
commit 3f1f9ea9f2
20 changed files with 280 additions and 20 deletions

View File

@@ -351,6 +351,7 @@ public class DatabaseHelper {
.listOfObjects(Category.class)
.withQuery(Query.builder()
.table(CategoryTable.TABLE)
.orderBy(CategoryTable.COLUMN_ORDER)
.build())
.prepare();
}
@@ -361,6 +362,12 @@ public class DatabaseHelper {
.prepare();
}
public PreparedPutCollectionOfObjects<Category> insertCategories(List<Category> categories) {
return db.put()
.objects(categories)
.prepare();
}
public PreparedDeleteObject<Category> deleteCategory(Category category) {
return db.delete()
.object(category)

View File

@@ -16,6 +16,12 @@ public class Category implements Serializable {
@StorIOSQLiteColumn(name = CategoryTable.COLUMN_NAME)
public String name;
@StorIOSQLiteColumn(name = CategoryTable.COLUMN_ORDER)
public int order;
@StorIOSQLiteColumn(name = CategoryTable.COLUMN_FLAGS)
public int flags;
public Category() {}
public static Category create(String name) {

View File

@@ -13,6 +13,12 @@ public class CategoryTable {
@NonNull
public static final String COLUMN_NAME = "name";
@NonNull
public static final String COLUMN_ORDER = "sort";
@NonNull
public static final String COLUMN_FLAGS = "flags";
// This is just class with Meta Data, we don't need instances
private CategoryTable() {
throw new IllegalStateException("No instances please");
@@ -24,7 +30,9 @@ public class CategoryTable {
public static String getCreateTableQuery() {
return "CREATE TABLE " + TABLE + "("
+ COLUMN_ID + " INTEGER NOT NULL PRIMARY KEY, "
+ COLUMN_NAME + " TEXT NOT NULL"
+ COLUMN_NAME + " TEXT NOT NULL, "
+ COLUMN_ORDER + " INTEGER NOT NULL, "
+ COLUMN_FLAGS + " INTEGER NOT NULL"
+ ");";
}