From 2f4ac9ad57d2d678da750e980193ae8cad316562 Mon Sep 17 00:00:00 2001
From: David Trattnig <david.trattnig@o94.at>
Date: Thu, 25 Jun 2020 23:41:00 +0200
Subject: [PATCH] Storage of playlog entry.

---
 src/models.py  | 35 +++++++++++++++++------------------
 src/service.py |  4 +++-
 2 files changed, 20 insertions(+), 19 deletions(-)

diff --git a/src/models.py b/src/models.py
index fde3539..7e04c77 100644
--- a/src/models.py
+++ b/src/models.py
@@ -44,31 +44,30 @@ class PlayLog(db.Model):
     track_title             = Column(String(256))
     track_duration          = Column(String(256))
     track_type              = Column(Integer)
-    schedule_id             = Column(Integer)
-    schedule_start          = Column(DateTime)
-    schedule_end            = Column(DateTime)
-    schedule_repetition     = Column(Boolean)
-    schedule_playlist_id    = Column(Integer)
-    schedule_fallback_type  = Column(Integer)
-    show_id                 = Column(Integer)
-    schedule_repetition     = Column(Boolean)
-    schedule_playlist_id    = Column(Integer)
-    schedule_fallback_type  = Column(Integer)
-    show_id                 = Column(Integer)
+    timeslot_id             = Column(Integer)
     show_name               = Column(String(256))
-    show_funding_category   = Column(String(256))
-    show_name               = Column(String(256))
-    show_type               = Column(String(256))
-    show_category           = Column(String(256))
-    show_topic              = Column(String(256))
+    log_source              = Column(Integer)
 
 
 
-    def __init__(self):
+    def __init__(self, data):
         """
         Initializes a trackservice entry
         """
-        pass
+        self.track_start     = data.track_start
+        self.track_artist    = data.track_artist
+        self.track_album     = data.track_album
+        self.track_title     = data.track_title
+        self.track_duration  = data.track_duration
+        self.track_type      = data.track_type
+        self.timeslot_id     = data.timeslot_id
+        self.show_name       = data.show_name
+        self.log_source      = data.log_source
+
+
+    def save(self):
+        db.session.add(self)
+        db.session.commit()
 
 
     @staticmethod
diff --git a/src/service.py b/src/service.py
index 20173cb..7e3155a 100644
--- a/src/service.py
+++ b/src/service.py
@@ -83,13 +83,15 @@ class ApiService():
         return tracklist_schema.dump(tracklist)
 
 
-    def store_playlog(): 
+    def store_playlog(self, data): 
         """
         Stores the passed playlog entry.
 
         Returns:
             (PlayLogEntry)
         """
+        playlog = PlayLog(data)
+        playlog.save()
 
 
     def clock_info(self):
-- 
GitLab