1차완료
This commit is contained in:
@@ -64,6 +64,9 @@ class Report(Base):
|
||||
closed_at = Column(TIMESTAMP)
|
||||
closed_by = Column(Integer, ForeignKey("users.id"), nullable=True)
|
||||
re_dispatch_count = Column(Integer, default=0)
|
||||
report_scope = Column(String(20), default="single") # single | station | type | multi
|
||||
scope_charger_count = Column(Integer, default=1)
|
||||
charger_ids = Column(ARRAY(Text), nullable=True) # multi 범위일 때 선택된 충전기 ID 목록
|
||||
charger = relationship("Charger", back_populates="reports")
|
||||
photos = relationship("ReportPhoto", back_populates="report", cascade="all, delete-orphan")
|
||||
repair_links = relationship("RepairReport", back_populates="report")
|
||||
@@ -121,16 +124,20 @@ class RepairCost(Base):
|
||||
repair_id = Column(Integer, ForeignKey("repairs.id", ondelete="CASCADE"), unique=True)
|
||||
root_cause = Column(Text)
|
||||
admin_note = Column(Text)
|
||||
cost_party_type = Column(String(20))
|
||||
cost_party_manufacturer_id = Column(Integer, ForeignKey("users.id"))
|
||||
cost_party_custom = Column(String(100))
|
||||
cost_party_type = Column(String(50))
|
||||
cost_party_manufacturer_id = Column(Integer, ForeignKey("manufacturers.id", ondelete="SET NULL"))
|
||||
cost_party_custom = Column(String(200))
|
||||
recv_party_type = Column(String(50))
|
||||
recv_party_manufacturer_id = Column(Integer, ForeignKey("manufacturers.id", ondelete="SET NULL"))
|
||||
recv_party_custom = Column(String(200))
|
||||
cost_amount = Column(Integer, default=0)
|
||||
cost_status = Column(String(20), default="pending")
|
||||
reviewed_by = Column(Integer, ForeignKey("users.id"))
|
||||
reviewed_at = Column(TIMESTAMP)
|
||||
repair = relationship("Repair", back_populates="cost")
|
||||
reviewer = relationship("User", foreign_keys=[reviewed_by])
|
||||
manufacturer = relationship("User", foreign_keys=[cost_party_manufacturer_id])
|
||||
cost_manufacturer = relationship("Manufacturer", foreign_keys=[cost_party_manufacturer_id])
|
||||
recv_manufacturer = relationship("Manufacturer", foreign_keys=[recv_party_manufacturer_id])
|
||||
|
||||
class Improvement(Base):
|
||||
__tablename__ = "improvements"
|
||||
@@ -141,13 +148,13 @@ class Improvement(Base):
|
||||
priority = Column(String(10), default="normal")
|
||||
part_name = Column(String(100))
|
||||
status = Column(String(20), default="registered")
|
||||
manufacturer_id = Column(Integer, ForeignKey("users.id"))
|
||||
manufacturer_id = Column(Integer, ForeignKey("manufacturers.id", ondelete="SET NULL"))
|
||||
created_by = Column(Integer, ForeignKey("users.id"))
|
||||
sw_deploy_target = Column(Date)
|
||||
sw_deployed_at = Column(Date)
|
||||
manufacturer_memo = Column(Text)
|
||||
created_at = Column(TIMESTAMP, server_default=func.now())
|
||||
manufacturer = relationship("User", foreign_keys=[manufacturer_id])
|
||||
manufacturer = relationship("Manufacturer", foreign_keys=[manufacturer_id])
|
||||
creator = relationship("User", foreign_keys=[created_by])
|
||||
report_links = relationship("ImprovementReport", back_populates="improvement", cascade="all, delete-orphan")
|
||||
attachments = relationship("ImprovementAttachment", back_populates="improvement", cascade="all, delete-orphan")
|
||||
|
||||
Reference in New Issue
Block a user