taskRegistration_base.py 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. from sqlalchemy import Column, Integer, String, DateTime, ForeignKey,Text, Float
  2. from sqlalchemy.ext.declarative import declarative_base
  3. from sqlalchemy.orm import relationship
  4. from datetime import datetime
  5. # from database import Base
  6. from sqlalchemy.ext.declarative import declarative_base
  7. from sqlalchemy.orm import relationship, sessionmaker
  8. from sqlalchemy import func
  9. # from sqlalchemy import Column, Integer, String, Text, DateTime, ForeignKey
  10. # from sqlalchemy.orm import relationship
  11. Base = declarative_base()
  12. class TaskRegistration(Base):
  13. __tablename__ = 'task_registrations'
  14. id = Column(Integer, primary_key=True, autoincrement=True, index=True,comment='id')
  15. task_id = Column(String(255), index=True,comment='任务ID')
  16. unit_name = Column(String(255), nullable=False,comment='部门名称')
  17. unit_id = Column(String(255), nullable=False,comment='部门ID')
  18. del_flag = Column(String(10),default='0', comment='是否删除')
  19. task_description = Column(Text, nullable=False,comment='任务内容/描述')
  20. registrar = Column(String(255), nullable=False,comment='登记人')
  21. registrar_id = Column(String(255), nullable=False,comment='登记人ID')
  22. creation_time = Column(DateTime, default=datetime.now,comment='创建时间')
  23. update_time = Column(DateTime, default=datetime.now,comment='更新时间')
  24. processing_status = Column(String(50), default='处理中',comment='任务状态')
  25. event_code = Column(String(50), nullable=False,comment='关联事件ID')
  26. task_type = Column(String(1), default='0', server_default='0', comment='任务类型 0 事件处置 1 防范措施 2 险情处理 3 督办任务')
  27. expire_time = Column(DateTime, comment='完成时限')
  28. feeback_user = Column(String(150), default='', server_default='', comment='反馈人员')
  29. contact_phone = Column(String(150), default='', server_default='', comment='')
  30. complete_time = Column(DateTime, comment='完成时限')
  31. executor = Column(String(150), default='', server_default='', comment='执行人')
  32. executor_id = Column(String, default='0', comment='执行人ID')
  33. # 你可以添加更多的字段和关系,例如与用户模型的外键关系
  34. # user_id = Column(Integer, ForeignKey('users.id'))
  35. # user = relationship("User", back_populates="task_registrations")
  36. class Config:
  37. orm_mode = True
  38. class TaskUnit(Base):
  39. __tablename__ = 'task_unit'
  40. id = Column(Integer, primary_key=True, autoincrement=True, index=True,comment='id')
  41. unit_id = Column(Integer, nullable=False, comment='部门ID')
  42. unit_name = Column(String(255), nullable=False, comment='部门名称')
  43. unit_duty = Column(Text, nullable=False,comment='部门职责')
  44. class Config:
  45. orm_mode = True
  46. class TaskFeeback(Base):
  47. __tablename__ = 'task_feeback'
  48. id = Column(Integer, primary_key=True, autoincrement=True, index=True,comment='id')
  49. task_id = Column(String(255), index=True,comment='任务ID')
  50. recorded_by = Column(Integer, nullable=False, comment='记录用户ID')
  51. feeback_user = Column(String(150), default='', server_default='', comment='反馈人员')
  52. content = Column(Text, comment='反馈内容')
  53. processing_status = Column(String(50), default='处理中',comment='任务状态')
  54. create_time = Column(DateTime, default=datetime.now, comment='登记时间')
  55. feeback_type = Column(String(1), default='0', server_default='0', comment='反馈类型 0 任务反馈 1 领导批示')
  56. leader_unit = Column(String(150), default='', server_default='', comment='领导单位')
  57. leader_name = Column(String(150), default='', server_default='', comment='领导姓名')
  58. approval_content = Column(Text, comment='批复内容')
  59. approval_time = Column(DateTime, comment='批复时间')
  60. longitude = Column(Float, nullable=True, comment='经度')
  61. latitude = Column(Float, nullable=True, comment='纬度')
  62. class Config:
  63. orm_mode = True
  64. class TaskFile(Base):
  65. __tablename__ = 'task_file'
  66. id = Column(Integer, primary_key=True, autoincrement=True)
  67. file_id = Column(String(50), nullable=False, comment='文件id')
  68. file_name = Column(String(255), nullable=False, comment='文件名称')
  69. file_name_desc = Column(String(255), nullable=False, comment='文件名称原名')
  70. file_path = Column(String(255), nullable=True, comment='文件存储路径')
  71. file_size = Column(String(50), nullable=True, comment='文件大小')
  72. status = Column(String(50), nullable=True, comment='文件状态')
  73. foreign_key = Column(String(50), nullable=True, comment='文件外键 --技术字段')
  74. from_scenario = Column(String(50), nullable=True, comment='对应标识 --技术字段')
  75. del_flag = Column(String(1), default='0', comment='删除标志(0代表存在 2代表删除)')
  76. create_dept = Column(Integer, default=None, comment='创建部门')
  77. create_by = Column(Integer, default=None, comment='创建者')
  78. create_time = Column(DateTime, default=datetime.now, comment='创建时间')
  79. update_time = Column(DateTime, default=datetime.now, onupdate=datetime.now, comment='更新时间')
  80. class Config:
  81. orm_mode = True
  82. class TaskLeaderInstructions(Base):
  83. __tablename__ = 'task_leader_instructions'
  84. id = Column(Integer, primary_key=True, autoincrement=True, index=True,comment='id')
  85. event_code = Column(String(255), comment='事件编码')
  86. recorded_by = Column(Integer, nullable=False, comment='记录用户ID')
  87. dept_id = Column(Integer, default=0, comment='部门ID')
  88. dept_name = Column(String, default="", comment='部门名称')
  89. content = Column(Text, comment='批示内容')
  90. create_time = Column(DateTime, default=datetime.now, comment='登记时间')
  91. class Config:
  92. orm_mode = True