feat: implement master data management module and add automatic database schema initialization
parent
befa250ab9
commit
bdf01fb947
@ -0,0 +1,10 @@
|
|||||||
|
from sqlalchemy import Column, Float, String
|
||||||
|
from src.database.core import Base
|
||||||
|
from src.models import DefaultMixin
|
||||||
|
|
||||||
|
class RBDMasterData(Base, DefaultMixin):
|
||||||
|
__tablename__ = "rbd_ms_master_data"
|
||||||
|
|
||||||
|
name = Column(String(255), unique=True, nullable=False, index=True)
|
||||||
|
value_float = Column(Float, nullable=True)
|
||||||
|
value_string = Column(String(255), nullable=True)
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
from typing import Optional
|
||||||
|
from pydantic import BaseModel, ConfigDict
|
||||||
|
|
||||||
|
class RBDMasterDataSchema(BaseModel):
|
||||||
|
model_config = ConfigDict(from_attributes=True)
|
||||||
|
|
||||||
|
id: str
|
||||||
|
name: str
|
||||||
|
value_float: Optional[float] = None
|
||||||
|
value_string: Optional[str] = None
|
||||||
|
|
||||||
|
class RBDMasterDataUpdate(BaseModel):
|
||||||
|
value_float: Optional[float] = None
|
||||||
|
value_string: Optional[str] = None
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
import asyncio
|
||||||
|
from src.database.core import Base, engine
|
||||||
|
|
||||||
|
async def main():
|
||||||
|
async with engine.begin() as conn:
|
||||||
|
await conn.run_sync(Base.metadata.create_all)
|
||||||
|
print("Created tables")
|
||||||
|
|
||||||
|
p = asyncio.run(main())
|
||||||
Loading…
Reference in New Issue