Files

42 lines
1.2 KiB
Python

from sqlalchemy import Column, String, Boolean, Integer, DateTime, Text, ForeignKey, Enum as SAEnum
from sqlalchemy.dialects.postgresql import UUID
from sqlalchemy.orm import relationship
from datetime import datetime
from app.database import Base
import uuid
import enum
class CertType(str, enum.Enum):
individual = "individual"
enterprise = "enterprise"
class CertStatus(str, enum.Enum):
pending = "pending"
approved = "approved"
rejected = "rejected"
class Certification(Base):
__tablename__ = "certifications"
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
user_id = Column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=False, index=True)
cert_type = Column(SAEnum(CertType), nullable=False)
personal_name = Column(String(100))
personal_id = Column(String(30))
company_name = Column(String(255))
tax_id = Column(String(30))
business_license_url = Column(String(500))
status = Column(SAEnum(CertStatus), default=CertStatus.pending)
reject_reason = Column(Text)
created_at = Column(DateTime, default=datetime.utcnow)
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
user = relationship("User")