def add_coffee(uid, flavor, time=None):
conn, c = open_db()
- print(uid, flavor, time)
if time is None:
c.execute("insert into coffees (id, flavor) values (?,?)", (uid,flavor))
else:
close_db(conn)
return res
+
def coffee_history(uid=None):
conn, c = open_db()
if uid is None:
res = list(c.execute("""
- select strftime('%d', ds.d),count(c.time) from
+ select strftime('%d', ds.d),count(c.flavor),c.flavor from
(select num,date('now',-num || ' days') as d from days) ds
left join coffees c
- on d = date(c.time) group by d
+ on d = date(c.time) group by d, c.flavor
"""))
else:
res = list(c.execute(
"""
- select strftime('%d', ds.d),count(c.time) from
+ select strftime('%d', ds.d),count(c.flavor),c.flavor from
(select num,date('now',-num || ' days') as d from days) ds
left join
- (select time from coffees where id = ? ) c
- on d = date(c.time) group by d
+ (select time,flavor from coffees where id = ?) c
+ on d = date(c.time) group by d, c.flavor
"""
, (uid,)))
conn, c = open_db()
args = []
+ clauses = []
if uid is not None:
- uid_q = "id = ?"
+ clauses.append("id = ?")
args.append(uid)
- else:
- uid_q = "true"
if start is not None:
- start_q = "date(time) >= date('now', -? || ' days')"
- args.append(start)
- else:
- start_q = "true"
+ clauses.append("date(time) >= date('now', '-%d days')" % int(start))
if stop is not None:
- stop_q = "date(time) <= date('now', -? || ' days')"
- args.append(stop)
- else:
- stop_q = "true"
+ clauses.append("date(time) <= date('now', '-%d days')" % int(stop))
for count, in c.execute(
"select count(*) from coffees where " +
- " and ".join([uid_q, start_q, stop_q])
+ " and ".join(clauses)
, args):
res = count