refactor DB

This commit is contained in:
LeonOstrez
2023-08-02 08:29:40 +02:00
parent 9b2db0bf13
commit 9673d40f65
25 changed files with 417 additions and 310 deletions

View File

View File

@@ -0,0 +1,10 @@
from peewee import *
from database.models.components.base_models import BaseModel
from database.models.user import User
class App(BaseModel):
user = ForeignKeyField(User, backref='apps')
app_type = CharField()
status = CharField(default='started')

View File

@@ -0,0 +1,9 @@
from peewee import *
from database.models.components.progress_step import ProgressStep
class Architecture(ProgressStep):
architecture = TextField()
class Meta:
db_table = 'architecture'

View File

@@ -0,0 +1,24 @@
from peewee import *
from datetime import datetime
from uuid import uuid4
from const import db
# Establish connection to the database
database = PostgresqlDatabase(
db.DB_NAME,
user=db.DB_USER,
password=db.DB_PASSWORD,
host=db.DB_HOST,
port=db.DB_PORT
)
class BaseModel(Model):
id = UUIDField(primary_key=True, default=uuid4)
created_at = DateTimeField(default=datetime.now)
updated_at = DateTimeField(default=datetime.now)
class Meta:
database = database

View File

@@ -0,0 +1,16 @@
from peewee import *
from playhouse.postgres_ext import BinaryJSONField
from database.models.components.base_models import BaseModel
from database.models.app import App
class ProgressStep(BaseModel):
app = ForeignKeyField(App, primary_key=True)
step = CharField()
data = BinaryJSONField(null=True)
messages = BinaryJSONField(null=True)
app_data = BinaryJSONField()
completed = BooleanField(default=False)
completed_at = DateTimeField(null=True)

View File

@@ -0,0 +1,8 @@
from peewee import *
from database.models.components.progress_step import ProgressStep
class Development(ProgressStep):
class Meta:
db_table = 'development'

View File

@@ -0,0 +1,10 @@
from peewee import *
from database.models.components.progress_step import ProgressStep
class DevelopmentPlanning(ProgressStep):
architecture = TextField()
class Meta:
db_table = 'development_planning'

View File

@@ -0,0 +1,12 @@
from peewee import *
from playhouse.postgres_ext import BinaryJSONField
from database.models.components.base_models import BaseModel
from database.models.app import App
class DevelopmentSteps(BaseModel):
app = ForeignKeyField(App, primary_key=True)
hash_id = CharField(unique=True, null=False)
messages = BinaryJSONField(null=True)

View File

@@ -0,0 +1,6 @@
from database.models.components.progress_step import ProgressStep
class EnvironmentSetup(ProgressStep):
class Meta:
db_table = 'environment_setup'

View File

@@ -0,0 +1,13 @@
from peewee import *
from playhouse.postgres_ext import BinaryJSONField
from database.models.components.progress_step import ProgressStep
class ProjectDescription(ProgressStep):
prompt = TextField()
summary = TextField()
class Meta:
db_table = 'project_description'

View File

@@ -0,0 +1,8 @@
from peewee import *
from database.models.components.base_models import BaseModel
class User(BaseModel):
email = CharField(unique=True)
password = CharField()

View File

@@ -0,0 +1,9 @@
from peewee import *
from database.models.components.progress_step import ProgressStep
class UserStories(ProgressStep):
user_stories = TextField()
class Meta:
db_table = 'user_stories'

View File

@@ -0,0 +1,9 @@
from peewee import *
from database.models.components.progress_step import ProgressStep
class UserTasks(ProgressStep):
user_tasks = TextField()
class Meta:
db_table = 'user_tasks'