chore(api): rename webstream models fields

This commit is contained in:
jo 2022-06-29 19:40:26 +02:00 committed by Kyle Robbertze
parent 1c48f11af2
commit 4bcc34212c
2 changed files with 61 additions and 50 deletions

View File

@ -1,20 +1,28 @@
from django.contrib.auth import get_user_model
from django.db import models from django.db import models
class Webstream(models.Model): class Webstream(models.Model):
created_at = models.DateTimeField(db_column="utime")
updated_at = models.DateTimeField(db_column="mtime")
last_played_at = models.DateTimeField(blank=True, null=True, db_column="lptime")
name = models.CharField(max_length=255) name = models.CharField(max_length=255)
description = models.CharField(max_length=255) description = models.CharField(max_length=255)
url = models.CharField(max_length=512) url = models.CharField(max_length=512)
length = models.DurationField() length = models.DurationField()
creator_id = models.IntegerField()
mtime = models.DateTimeField()
utime = models.DateTimeField()
lptime = models.DateTimeField(blank=True, null=True)
mime = models.CharField(max_length=1024, blank=True, null=True) mime = models.CharField(max_length=1024, blank=True, null=True)
owner = models.ForeignKey(
"core.User",
on_delete=models.DO_NOTHING,
blank=True,
null=True,
db_column="creator_id",
)
def get_owner(self): def get_owner(self):
return get_user_model().objects.get(pk=self.creator_id) return self.owner
class Meta: class Meta:
managed = False managed = False
@ -26,12 +34,16 @@ class Webstream(models.Model):
class WebstreamMetadata(models.Model): class WebstreamMetadata(models.Model):
instance = models.ForeignKey("schedule.Schedule", on_delete=models.DO_NOTHING) schedule = models.ForeignKey(
start_time = models.DateTimeField() "schedule.Schedule",
liquidsoap_data = models.CharField(max_length=1024) on_delete=models.DO_NOTHING,
db_column="instance_id",
)
starts_at = models.DateTimeField(db_column="start_time")
data = models.CharField(max_length=1024, db_column="liquidsoap_data")
def get_owner(self): def get_owner(self):
return self.instance.get_owner() return self.schedule.get_owner()
class Meta: class Meta:
managed = False managed = False

View File

@ -7035,6 +7035,16 @@ components:
id: id:
type: integer type: integer
readOnly: true readOnly: true
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
last_played_at:
type: string
format: date-time
nullable: true
name: name:
type: string type: string
maxLength: 255 maxLength: 255
@ -7046,24 +7056,14 @@ components:
maxLength: 512 maxLength: 512
length: length:
type: string type: string
creator_id:
type: integer
maximum: 2147483647
minimum: -2147483648
mtime:
type: string
format: date-time
utime:
type: string
format: date-time
lptime:
type: string
format: date-time
nullable: true
mime: mime:
type: string type: string
nullable: true nullable: true
maxLength: 1024 maxLength: 1024
owner:
type: string
format: uri
nullable: true
PatchedWebstreamMetadata: PatchedWebstreamMetadata:
type: object type: object
properties: properties:
@ -7071,13 +7071,13 @@ components:
type: string type: string
format: uri format: uri
readOnly: true readOnly: true
start_time: starts_at:
type: string type: string
format: date-time format: date-time
liquidsoap_data: data:
type: string type: string
maxLength: 1024 maxLength: 1024
instance: schedule:
type: string type: string
format: uri format: uri
Playlist: Playlist:
@ -7982,6 +7982,16 @@ components:
id: id:
type: integer type: integer
readOnly: true readOnly: true
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
last_played_at:
type: string
format: date-time
nullable: true
name: name:
type: string type: string
maxLength: 255 maxLength: 255
@ -7993,34 +8003,23 @@ components:
maxLength: 512 maxLength: 512
length: length:
type: string type: string
creator_id:
type: integer
maximum: 2147483647
minimum: -2147483648
mtime:
type: string
format: date-time
utime:
type: string
format: date-time
lptime:
type: string
format: date-time
nullable: true
mime: mime:
type: string type: string
nullable: true nullable: true
maxLength: 1024 maxLength: 1024
owner:
type: string
format: uri
nullable: true
required: required:
- creator_id - created_at
- description - description
- id - id
- item_url - item_url
- length - length
- mtime
- name - name
- updated_at
- url - url
- utime
WebstreamMetadata: WebstreamMetadata:
type: object type: object
properties: properties:
@ -8028,20 +8027,20 @@ components:
type: string type: string
format: uri format: uri
readOnly: true readOnly: true
start_time: starts_at:
type: string type: string
format: date-time format: date-time
liquidsoap_data: data:
type: string type: string
maxLength: 1024 maxLength: 1024
instance: schedule:
type: string type: string
format: uri format: uri
required: required:
- instance - data
- item_url - item_url
- liquidsoap_data - schedule
- start_time - starts_at
securitySchemes: securitySchemes:
basicAuth: basicAuth:
type: http type: http