diff options
author | Sebastian Reichel <sre@ring0.de> | 2013-05-09 19:12:31 +0200 |
---|---|---|
committer | Sebastian Reichel <sre@ring0.de> | 2013-05-09 19:12:31 +0200 |
commit | 7f97a0781ebd3309809f67a12bb64f8a3655bc7a (patch) | |
tree | 9eda1c8be6a7cf3026e6acaa434585820787d42c /src/database/database.vala | |
parent | 145c5300260a69b208b4539a1bbd1bbbb1bf46f6 (diff) | |
download | serial-barcode-scanner-7f97a0781ebd3309809f67a12bb64f8a3655bc7a.tar.bz2 |
database: add get_users_with_sales
Diffstat (limited to 'src/database/database.vala')
-rw-r--r-- | src/database/database.vala | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/database/database.vala b/src/database/database.vala index 31b0ad4..28abb00 100644 --- a/src/database/database.vala +++ b/src/database/database.vala @@ -121,6 +121,7 @@ public class DataBase : Object { queries["supplier_list"] = "SELECT id, name, postal_code, city, street, phone, website FROM supplier"; queries["supplier_get"] = "SELECT id, name, postal_code, city, street, phone, website FROM supplier WHERE id = ?"; queries["supplier_add"] = "INSERT INTO supplier('name', 'postal_code', 'city', 'street', 'phone', 'website') VALUES (?, ?, ?, ?, ?, ?)"; + queries["users_with_sales"] = "SELECT user FROM sales WHERE timestamp > ? AND timestamp < ? GROUP BY user;"; /* compile queries into statements */ foreach(var entry in queries.entries) { @@ -838,4 +839,17 @@ public class DataBase : Object { throw new DatabaseError.INTERNAL_ERROR("internal error: %d", rc); } } + + public int[] get_users_with_sales(int64 timestamp_from, int64 timestamp_to) { + var result = new int[0]; + statements["users_with_sales"].reset(); + statements["users_with_sales"].bind_int64(1, timestamp_from); + statements["users_with_sales"].bind_int64(2, timestamp_to); + + while(statements["users_with_sales"].step() == Sqlite.ROW) { + result += statements["users_with_sales"].column_int(0); + } + + return result; + } } |