From f45ad64896d7a07042e2f7f2be4dcc68d07f6770 Mon Sep 17 00:00:00 2001 From: Phill Date: Sun, 6 Jan 2019 21:00:28 +0000 Subject: [PATCH] Added ascending/descending order --- example/lib/main.dart | 12 +++++------- lib/network/parse_query.dart | 24 ++++++++++++++---------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/example/lib/main.dart b/example/lib/main.dart index 80b29a113..91237a695 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -50,8 +50,8 @@ class _MyAppState extends State { //getAllItems(); //getAllItemsByName(); //getSingleItem(); - //query(); - initUser(); + query(); + //initUser(); } void getAllItemsByName() async { @@ -87,18 +87,16 @@ class _MyAppState extends State { } void query() async { - // Query for an object by name var queryBuilder = QueryBuilder(DietPlan()) ..greaterThan(DietPlan.FAT, 20) - ..limit(1) - ..skip(1); + ..descending(DietPlan.FAT); var response = await queryBuilder.query(); if (response.success) { - print(ApplicationConstants.APP_NAME + ": " + ((response.result as List).first as DietPlan).toString()); + print("Result: ${((response.result as List).first as DietPlan).toString()}"); } else { - print(ApplicationConstants.APP_NAME + ": " + response.exception.message); + print("Result: ${response.exception.message}"); } } diff --git a/lib/network/parse_query.dart b/lib/network/parse_query.dart index b62ed41ef..633841b3c 100644 --- a/lib/network/parse_query.dart +++ b/lib/network/parse_query.dart @@ -41,19 +41,23 @@ class QueryBuilder { _skip = skip; } - void where(int where){ + void where(String where){ _where = where; } - void order(int order){ + void ascending(String order){ _order = order; } - void keys(int keys){ + void descending(String order){ + _order = "-$order"; + } + + void keys(String keys){ _keys = keys; } - void include(int include){ + void include(String include){ _include = include; } @@ -175,12 +179,12 @@ class QueryBuilder { // ADD PARAMS Map limiters = Map(); - if (_where != null) limiters['where'] = where; - if (_order != null) limiters["order"] = order; - if (_limit != 0) limiters["limit"] = limit; - if (_skip != 0) limiters["skip"] = skip; - if (_keys != null) limiters["keys"] = keys; - if (_include != null) limiters["include"] = include; + if (_where != null) limiters['where'] = _where; + if (_order != null) limiters["order"] = _order; + if (_limit != 0) limiters["limit"] = _limit; + if (_skip != 0) limiters["skip"] = _skip; + if (_keys != null) limiters["keys"] = _keys; + if (_include != null) limiters["include"] = _include; query += getLimiters(limiters); // -- TEST