From a0898fa29ede1e319a2b77dada989110bc82b100 Mon Sep 17 00:00:00 2001 From: Tianyu Liu Date: Mon, 15 Sep 2025 20:30:32 +0200 Subject: [PATCH] refine modle --- backend/trading_journal/models.py | 2 +- backend/trading_journal/models_v1.py | 25 +++++++++++++++++-------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/backend/trading_journal/models.py b/backend/trading_journal/models.py index b916e1b..d9d8944 100644 --- a/backend/trading_journal/models.py +++ b/backend/trading_journal/models.py @@ -34,7 +34,7 @@ class TradeType(str, Enum): class TradeStrategy(str, Enum): - WHEELS = "WHEEL" + WHEEL = "WHEEL" FX = "FX" SPOT = "SPOT" OTHER = "OTHER" diff --git a/backend/trading_journal/models_v1.py b/backend/trading_journal/models_v1.py index b7f3696..d9d8944 100644 --- a/backend/trading_journal/models_v1.py +++ b/backend/trading_journal/models_v1.py @@ -1,8 +1,17 @@ from datetime import date, datetime # noqa: TC003 from enum import Enum -from sqlalchemy import Date, Text, UniqueConstraint -from sqlmodel import Column, DateTime, Field, Relationship, SQLModel +from sqlmodel import ( + Column, + Date, + DateTime, + Field, + Integer, + Relationship, + SQLModel, + Text, + UniqueConstraint, +) class TradeType(str, Enum): @@ -25,7 +34,7 @@ class TradeType(str, Enum): class TradeStrategy(str, Enum): - WHEELS = "WHEEL" + WHEEL = "WHEEL" FX = "FX" SPOT = "SPOT" OTHER = "OTHER" @@ -80,11 +89,11 @@ class Trades(SQLModel, table=True): ) expiry_date: date | None = Field(default=None, nullable=True) strike_price_cents: int | None = Field(default=None, nullable=True) - quantity: int - price_cents: int - gross_cash_flow_cents: int - commission_cents: int - net_cash_flow_cents: int + quantity: int = Field(sa_column=Column(Integer, nullable=False)) + price_cents: int = Field(sa_column=Column(Integer, nullable=False)) + gross_cash_flow_cents: int = Field(sa_column=Column(Integer, nullable=False)) + commission_cents: int = Field(sa_column=Column(Integer, nullable=False)) + net_cash_flow_cents: int = Field(sa_column=Column(Integer, nullable=False)) cycle_id: int | None = Field( default=None, foreign_key="cycles.id", nullable=True, index=True )