Implement transaction handling
This commit is contained in:
parent
161c6aa027
commit
a65dee8962
16 changed files with 331 additions and 94 deletions
|
@ -1,6 +1,4 @@
|
|||
import uuid
|
||||
from sqlalchemy import Uuid, Column, DateTime, Enum, Float, ForeignKey
|
||||
from sqlalchemy.orm import relationship, backref
|
||||
from sqlalchemy import String, Uuid, Column, DateTime, Enum, Numeric, ForeignKey
|
||||
|
||||
from app.schemas.transaction import TransactionEventTriggerReason, TransactionStatus
|
||||
from app.database import Base
|
||||
|
@ -8,13 +6,14 @@ from app.database import Base
|
|||
class Transaction(Base):
|
||||
__tablename__ = "transactions"
|
||||
|
||||
id = Column(Uuid, primary_key=True, default=uuid.uuid4)
|
||||
id = Column(String, primary_key=True)
|
||||
status = Column(Enum(TransactionStatus), index=True)
|
||||
started_at = Column(DateTime, index=True)
|
||||
ended_at = Column(DateTime, nullable=True, index=True)
|
||||
meter_start = Column(Float)
|
||||
meter_end = Column(Float, nullable=True)
|
||||
end_reason = Column(Enum(TransactionEventTriggerReason))
|
||||
meter_start = Column(Numeric(10,2))
|
||||
meter_end = Column(Numeric(10,2), nullable=True)
|
||||
end_reason = Column(Enum(TransactionEventTriggerReason), nullable=True)
|
||||
price = Column(Numeric(10,2))
|
||||
|
||||
connector_id = Column(Uuid, ForeignKey("connectors.id"), index=True)
|
||||
id_token_id = Column(Uuid, ForeignKey("id_tokens.id"), index= True)
|
||||
user_id = Column(Uuid, ForeignKey("users.id"), nullable=True, index=True)
|
||||
chargepoint_id = Column(Uuid, ForeignKey("chargepoints.id"), index=True)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue