menu 1 2 3 4 5 7 operationnels
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
from datetime import datetime
|
||||
from app import db
|
||||
|
||||
|
||||
class Login(db.Model):
|
||||
__tablename__ = "login"
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
login = db.Column(db.String(50), nullable=False, unique=True)
|
||||
nom = db.Column(db.String(100), nullable=False)
|
||||
prenom = db.Column(db.String(100), nullable=False)
|
||||
mail = db.Column(db.String(255), nullable=False, unique=True)
|
||||
pass_ = db.Column("pass", db.String(255), nullable=False)
|
||||
actif = db.Column(db.Boolean, default=True)
|
||||
creer_le = db.Column(db.DateTime, default=datetime.utcnow)
|
||||
modifie_le = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
reset_token = db.Column(db.String(255), nullable=True)
|
||||
reset_token_created_at = db.Column(db.DateTime, nullable=True)
|
||||
|
||||
|
||||
class Action(db.Model):
|
||||
__tablename__ = "actions"
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
isin = db.Column(db.String(50), nullable=False, unique=True)
|
||||
ticker = db.Column(db.String(50))
|
||||
company_name = db.Column(db.String(255))
|
||||
exchange = db.Column(db.String(50), nullable=False)
|
||||
pays = db.Column(db.String(50), nullable=False)
|
||||
currency = db.Column(db.String(10), nullable=False)
|
||||
updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
|
||||
|
||||
class Societe(db.Model):
|
||||
__tablename__ = "societe"
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
nom = db.Column(db.String(60), nullable=False)
|
||||
forme = db.Column(db.String(10), nullable=False)
|
||||
capital = db.Column(db.Integer, nullable=False)
|
||||
siren = db.Column(db.String(20), nullable=False)
|
||||
siret = db.Column(db.String(20), nullable=False)
|
||||
rcs = db.Column(db.String(50), nullable=False)
|
||||
tva = db.Column(db.String(50), nullable=False)
|
||||
naf = db.Column(db.String(10), nullable=False)
|
||||
tel = db.Column(db.String(30), nullable=False)
|
||||
web = db.Column(db.String(100), nullable=False)
|
||||
mail = db.Column(db.String(100), nullable=False)
|
||||
created_at = db.Column(db.DateTime, default=datetime.utcnow)
|
||||
updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
|
||||
comptes = db.relationship("Compte", backref="societe", lazy=True)
|
||||
|
||||
|
||||
class Compte(db.Model):
|
||||
__tablename__ = "compte"
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
id_societe = db.Column(db.Integer, db.ForeignKey("societe.id"), nullable=False)
|
||||
date_operation = db.Column(db.Date, nullable=False)
|
||||
debit = db.Column(db.Numeric(15, 2), default=0)
|
||||
credit = db.Column(db.Numeric(15, 2), default=0)
|
||||
libelle = db.Column(db.Text)
|
||||
source = db.Column(db.Enum("manuel", "ordre"), nullable=False, default="manuel")
|
||||
created_at = db.Column(db.DateTime, default=datetime.utcnow)
|
||||
updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
|
||||
|
||||
class Ordre(db.Model):
|
||||
__tablename__ = "ordre"
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
id_societe = db.Column(db.Integer, db.ForeignKey("societe.id"), nullable=False)
|
||||
isin = db.Column(db.String(50), db.ForeignKey("actions.isin"), nullable=False)
|
||||
plus_value = db.Column(db.Numeric(19, 4), nullable=False, default=0)
|
||||
date_plus_value = db.Column(db.Date, nullable=True)
|
||||
created_at = db.Column(db.DateTime, default=datetime.utcnow)
|
||||
updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
|
||||
pieds = db.relationship("OrdrePied", backref="ordre", lazy=True, cascade="all, delete-orphan")
|
||||
|
||||
|
||||
class OrdrePied(db.Model):
|
||||
__tablename__ = "ordre_pied"
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
id_entete = db.Column(db.Integer, db.ForeignKey("ordre.id", ondelete="CASCADE", onupdate="CASCADE"), nullable=False)
|
||||
date_op = db.Column(db.Date, nullable=False)
|
||||
quantite = db.Column(db.Integer, nullable=False)
|
||||
prix_brut = db.Column(db.Numeric(19, 4))
|
||||
frais_broker = db.Column(db.Numeric(19, 4))
|
||||
frais_etat = db.Column(db.Numeric(19, 4))
|
||||
frais_autre = db.Column(db.Numeric(19, 4))
|
||||
sens = db.Column(db.Enum("achat", "vente"), nullable=False)
|
||||
position = db.Column(db.Enum("long", "short"), nullable=False)
|
||||
etat = db.Column(db.Enum("actif", "soldé", "annulé"), nullable=False)
|
||||
created_at = db.Column(db.DateTime, default=datetime.utcnow)
|
||||
updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
Reference in New Issue
Block a user