rate-sys-template/Mods/RateFlow/Models.py

31 lines
1.6 KiB
Python
Raw Normal View History

2023-06-15 16:49:00 +08:00
from sqlalchemy import Column, String, Date, Enum, ForeignKey, Integer,Float, Boolean, DateTime, func
from sqlalchemy.orm import relationship
2023-06-15 16:49:00 +08:00
from Utils.TimeSerialNumUtils import create_time_serial_num
from .Schemas import RankLevelEnum, RateFlowStatusEnum
from Context.common import common_db
2023-06-15 16:49:00 +08:00
class RateFlow(common_db.Base):
__tablename__ = "rate_flow"
id = Column(String(16), primary_key=True, default=lambda: create_time_serial_num(prefix="R"))
rate_date = Column(DateTime, comment='创建时间')
rate_level = Column(String(32), comment="评级等级")
rate_scope = Column(Float, comment="评级分数")
company_name = Column(String(32), index=True, comment="企业名称")
nodes = relationship("RateFlowNode", backref="rate_flow")
status = Column(String(32), default="未评级", comment="评级状态")
publish = Column(Boolean, default=False, comment="是否披露")
create_time = Column(DateTime, server_default=func.now(), comment='创建时间')
2023-06-15 16:49:00 +08:00
class RateFlowNode(common_db.Base):
__tablename__ = "rate_flow_node"
2023-06-15 16:49:00 +08:00
id = Column(String(16), primary_key=True, comment="流程节点ID", default=lambda: create_time_serial_num(prefix="N"))
node_num = Column(Integer, comment="流程节点序号")
node_name = Column(String(32), comment="流程节点名称")
2023-06-15 16:49:00 +08:00
status = Column(String(32), default='未完成', comment="流程节点状态")
obj_id = Column(String(24), default=None, comment="流程内容mongoID")
2023-06-15 16:49:00 +08:00
rate_process_id = Column(String(16), ForeignKey("rate_flow.id", ondelete="CASCADE"), comment="评级流程ID")