organization.py 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from sqlalchemy import String, Column, Integer, Text, ForeignKey
  2. from sqlalchemy.orm import relationship
  3. from app.modle import Base
  4. class Company(Base):
  5. """公司表"""
  6. __tablename__ = "company"
  7. id = Column(Integer, primary_key=True, autoincrement=True, nullable=False, unique=True, doc='id')
  8. company_name = Column(String, nullable=False, unique=True, index=False, doc='公司名')
  9. logo = Column(String, nullable=True, unique=False, index=False, doc='商标')
  10. abbreviation = Column(String, nullable=True, unique=False, index=False, doc='公司简称')
  11. code = Column(Integer, nullable=True, unique=False, index=False, doc='统一社会信用代码')
  12. registered_address = Column(String, nullable=True, unique=False, index=False, doc='注册地址')
  13. business_address = Column(String, nullable=True, unique=False, index=False, doc='经营地址')
  14. legal_person_name = Column(String, nullable=True, unique=False, index=False, doc='法人姓名')
  15. company_code = Column(Integer, nullable=True, unique=False, index=False, doc='公司编码')
  16. staff_size = Column(Integer, nullable=True, unique=False, index=False, doc='编制人数')
  17. on_guard_size = Column(Integer, nullable=True, unique=False, index=False, doc='在岗人数')
  18. department = relationship('Department', cascade='all, delete-orphan')
  19. class Department(Base):
  20. """部门表"""
  21. __tablename__ = "department"
  22. id = Column(Integer, primary_key=True, autoincrement=True, nullable=False, unique=True, doc='id')
  23. company_id = Column(Integer, ForeignKey(Company.id), doc='上级公司')
  24. department_name = Column(String, nullable=False, unique=False, index=False, doc='部门名')
  25. principal = Column(String, nullable=True, unique=False, index=False, doc='负责人')
  26. liaison_officer = Column(String, nullable=True, unique=False, index=False, doc='接口人')
  27. duplicate_name = Column(String, nullable=True, unique=False, index=False, doc='拍重名')
  28. on_guard = Column(Integer, nullable=True, unique=False, index=False, doc='在岗人数')
  29. freelance_staff = Column(Integer, nullable=True, unique=False, index=False, doc='自由员工')
  30. cooperation_staff = Column(Integer, nullable=True, unique=False, index=False, doc='协作员工')
  31. thirdparty_staff = Column(Integer, nullable=True, unique=False, index=False, doc='第三方员工')
  32. censure = Column(Text, nullable=True, unique=False, index=False, doc='职责')