Files
iface_ecosio/models.py
T

32 lines
1.4 KiB
Python
Raw Normal View History

2026-02-25 10:24:12 +01:00
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
db = SQLAlchemy()
class StateOfDate(db.Model):
id = db.Column(db.Integer, primary_key=True)
updated_at = db.Column(db.TIMESTAMP, default=datetime.now(), onupdate=datetime.now(), nullable=False)
date = db.Column(db.String(8), unique=True, nullable=False) # YYYYMMDD
system_issues = db.Column(db.Integer, default=0)
data_issues = db.Column(db.Integer, default=0)
def __repr__(self):
return f"{self.date}: {self.system_issues} {self.data_issues}"
def isDone(self):
return self.system_issues==0 and self.data_issues==0
class StateOfInvoice(db.Model):
id = db.Column(db.Integer, primary_key=True)
country = db.Column(db.String(2), nullable=False) # XX
poslogid = db.Column(db.String(16), unique=True, nullable=False)
receiptid = db.Column(db.String(16), unique=True, nullable=False)
receiptmonth = db.Column(db.String(6), nullable=False) # YYYYMM
updated_at = db.Column(db.TIMESTAMP, default=datetime.now(), onupdate=datetime.now(), nullable=False)
state = db.Column(db.Integer, default=-1) # -1: unprocessed, 0: has issues, 1: processed to xml file, 2: sent to ecosio 3: monthly-reported
def __repr__(self):
return f"{self.country} {self.poslogid} {self.receiptid} {self.receiptmonth} {self.updated_at} {self.state}"