add tysc schema

This commit is contained in:
Thomas Peetz
2025-01-11 19:00:58 +01:00
committed by Thomas Peetz
parent d2b1cb999a
commit 5affa16505
5 changed files with 75 additions and 8 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
from sqlalchemy import Column, String, DateTime, Integer
from sqlalchemy.orm import DeclarativeBase, relationship, sessionmaker
class Base(DeclarativeBase):
pass
+3 -3
View File
@@ -1,5 +1,5 @@
from sqlalchemy import Boolean, Column, DateTime, ForeignKey, Integer, String
from sqlalchemy.orm import relationship
from sqlalchemy import Boolean, Column, DateTime, Integer, String
from sqlalchemy.dialects.mysql import BIT
from database.base import Base
@@ -13,7 +13,7 @@ class MediaFile(Base):
cloud_link = Column(String(255))
file_name = Column(String(255))
path = Column(String(255))
review = Column(Boolean, default=True)
review = Column(BIT(1), default=True)
title = Column(String(255))
url = Column(String(255))
should_download = Column(Boolean, default=True)
+3 -3
View File
@@ -1,4 +1,5 @@
from sqlalchemy import Column, String, ForeignKey, DateTime, Integer, Boolean
from sqlalchemy.dialects.mysql import BIT
from sqlalchemy.orm import relationship
from database import Base
@@ -34,8 +35,8 @@ class MetaDataColumn(Base):
table = relationship("MetaDataTable", back_populates="table_columns")
column_label = Column(String(255))
filter_label = Column(String(255))
is_shown = Column(Boolean)
show_filter = Column(Boolean)
is_shown = Column(BIT(1))
show_filter = Column(BIT(1))
def __repr__(self):
if self.column_name is None:
@@ -45,4 +46,3 @@ class MetaDataColumn(Base):
def __str__(self):
return f'{self.column_name}({self.id})'
+68
View File
@@ -0,0 +1,68 @@
from sqlalchemy import Boolean, Column, DateTime, Integer, String, ForeignKey
from sqlalchemy.dialects.mysql import BIT
from sqlalchemy.orm import relationship
from database.base import Base
class Sport(Base):
__tablename__ = "sport"
id = Column(String, primary_key=True)
created_date = Column(DateTime)
last_modified_date = Column(DateTime)
version = Column(Integer)
name = Column(String(255))
teams = relationship("Team")
positions = relationship("FieldPosition")
class Team(Base):
__tablename__ = "team"
id = Column(String, primary_key=True)
created_date = Column(DateTime)
last_modified_date = Column(DateTime)
version = Column(Integer)
name = Column(String(255))
short_name = Column(String(255))
sport_id = Column(String, ForeignKey("sport.id"))
sport = relationship("Sport", back_populates="positions")
roosters = relationship("Rooster")
class FieldPosition(Base):
__tablename__ = "field_position"
id = Column(String, primary_key=True)
created_date = Column(DateTime)
last_modified_date = Column(DateTime)
version = Column(Integer)
name = Column(String(255))
short_name = Column(String(255))
sport_id = Column(String, ForeignKey("sport.id"))
sport = relationship("Sport", back_populates="positions")
roosters = relationship("Rooster")
class Player(Base):
__tablename__ = "player"
id = Column(String, primary_key=True)
created_date = Column(DateTime)
last_modified_date = Column(DateTime)
version = Column(Integer)
first_name = Column(String(255))
last_name = Column(String(255))
roosters = relationship("Rooster")
class Rooster(Base):
__tablename__ = "rooster"
id = Column(String, primary_key=True)
created_date = Column(DateTime)
last_modified_date = Column(DateTime)
version = Column(Integer)
year = Column(Integer)
team_id = Column(String, ForeignKey("team.id"))
team = relationship("Team", back_populates="roosters")
player_id = Column(String, ForeignKey("player.id"))
player = relationship("Player", back_populates="roosters")
position_id = Column(String, ForeignKey("field_position.id"))
position = relationship("roosters")
@@ -1,7 +1,6 @@
package de.thpeetz.kontor.tysc.data;
import java.util.List;
import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;