]> rtime.felk.cvut.cz Git - hubacji1/coffee-getter.git/blobdiff - cbgetter.py
Add drunk list getter
[hubacji1/coffee-getter.git] / cbgetter.py
index aa4ab281c44812a0d08129a8b0383332ea5bd376..b837f8910c817c487fa96180628b24186075fe6f 100644 (file)
@@ -58,6 +58,8 @@ class CoffeebotGetter:
 
     def computeEqualDrinkers(self):
         """Compute equally drunken drinkers."""
+        if len(self.top) <= 0:
+            return
         lc = self.top[0][1] + 1
         for (un, c) in self.top:
             if c < lc:
@@ -106,3 +108,53 @@ class CoffeebotGetter:
             self.getSomeSmile()
         )
         return
+
+    def loadDrunkSum(self, *args, **kwargs):
+        """Get list of drunken ``flavor`` from ``dtf`` to ``dtt``, update msg.
+
+        Keyword arguments:
+        flavor -- The flavor of beverage.
+        dtf -- Date and time *from*.
+        dtt -- Date and time *to*.
+        """
+        self.top = self.db.getDrunkSum(*args, **kwargs)
+        if args:
+            flavor = args[0]
+            dtf = args[1]
+            dtt = args[2]
+        elif kwargs:
+            flavor = kwargs["flavor"]
+            dtf = kwargs["dtf"]
+            dtt = kwargs["dtt"]
+        self.msg = "{} drunk from {} to {}:\n".format(flavor, dtf, dtt)
+        for (un, cnt) in self.top:
+            self.msg += "{}: {}\n".format(un, cnt)
+        self.msg += "---"
+        return
+
+    def loadDrunkList(self, *args, **kwargs):
+        """Get list of drunken ``flavor`` from ``dtf`` to ``dtt``, update msg.
+
+        Keyword arguments:
+        flavor -- The flavor of beverage.
+        dtf -- Date and time *from*.
+        dtt -- Date and time *to*.
+        """
+        self.top = self.db.getDrunkSum(*args, **kwargs)
+        d = self.db.getDrunkList(*args, **kwargs)
+        if args:
+            flavor = args[0]
+            dtf = args[1]
+            dtt = args[2]
+        elif kwargs:
+            flavor = kwargs["flavor"]
+            dtf = kwargs["dtf"]
+            dtt = kwargs["dtt"]
+        self.msg = "{} drunk from {} to {}:\n".format(flavor, dtf, dtt)
+        for (un, l) in d.items():
+            self.msg += "{}: ".format(un)
+            for cnt in l[:-1]:
+                self.msg += "{}, ".format(cnt)
+            self.msg += "{}\n".format(l[-1])
+        self.msg += "---"
+        return