# -*- coding: utf-8 -*- from sqlalchemy import String, Column, Integer,DateTime, Text from sqlalchemy.sql import func from database import Base from datetime import datetime class InfoPublishBase(Base): __tablename__ = 'infopublish_base' # 表名 # 定义字段 id = Column(Integer, autoincrement=True, primary_key=True) # 主键 title = Column(String, default='', server_default='', comment='标题') dept_id = Column(Integer, default=None, comment='记录用户单位ID') dept_name = Column(String, default='', server_default='', comment='记录用户单位名称') template_type = Column(String, default='0', server_default='0', comment='信息模板') template_id = Column(String, default='', server_default='', comment='模板ID') template_url = Column(String, default='', server_default='', comment='自定义模板URL') content = Column(Text, default='', server_default='', comment='信息内容') recorded_by = Column(Integer, default='0', server_default='0', comment='记录用户ID') del_flag = Column(String, default='0', comment='删除标志(0代表存在 2代表删除)') add_time = Column(DateTime, default=datetime.now, comment='录入时间') response_type = Column(Integer, default='0', server_default='0', comment='消息反馈方式') publish_time = Column(DateTime, default=datetime.now, comment='发布时间') publish_type = Column(Integer, default='0', server_default='0', comment='发布类型') examine_by = Column(Integer, default='0', server_default='0', comment='审核人ID') publish_status = Column(Integer, default='0', server_default='0', comment='发布状态') examine_status = Column(Integer, default='0', server_default='0', comment='审批状态') publish_channel = Column(String, default='', server_default='', comment='发布渠道') publish_group = Column(String, default='', server_default='', comment='发布单位') user_count = Column(Integer, default='0', server_default='0', comment='选择人数') user_ok_count = Column(Integer, default='0', server_default='0', comment='成功人数') user_err_count = Column(Integer, default='0', server_default='0', comment='失败人数') user_sending_count = Column(Integer, default='0', server_default='0', comment='发送中人数') info_type = Column(String, default='0', comment='消息类型 0 预警信息 1 灾情信息 2 灾情信息 3 指挥救援 4 公众防范') class Config: orm_mode = True class InfoPublishTemplate(Base): __tablename__ = 'infopublish_template' # 表名 # 定义字段 id = Column(Integer, autoincrement=True, primary_key=True) # 主键 name = Column(String, default='', server_default='', comment='模板ID') content = Column(String, default='', server_default='', comment='模板内容') del_flag = Column(String, default='0', comment='删除标志(0代表存在 2代表删除)') add_time = Column(DateTime, default=datetime.now, comment='录入时间') class Config: orm_mode = True class InfoPublishResponses(Base): __tablename__ = 'infopublish_responses' # 表名 # 定义字段 id = Column(Integer, autoincrement=True, primary_key=True) # 主键 publish_id = Column(Integer, default='0', server_default='0', comment='主表ID') user_id = Column(Integer, default='0', server_default='0', comment='账号ID') user_name = Column(String, default='', server_default='', comment='账号名称') nick_name = Column(String, default='', server_default='', comment='用户姓名') dept_name = Column(String, default='', server_default='', comment='部门名称') yzy_account = Column(String, default='', server_default='', comment='粤政易账号') sent_status = Column(Integer, default='0', server_default='0', comment='发送状态 0 待发送 1已发送 2 发送失败') sent_time = Column(DateTime, default=datetime.now, comment='发送时间') response_type = Column(Integer, default='0', server_default='0', comment='消息反馈方式 0 仅需阅读 1 点击确认 2 签字确认') response_status = Column(Integer, default='0', server_default='0', comment='反馈方式 0 无需反馈 1 确认签收 2 签名') response_time = Column(DateTime, default=datetime.now, comment='反馈时间') publish_channel = Column(String, default='', server_default='', comment='推送渠道') class Config: orm_mode = True class InfoPublishFile(Base): __tablename__ = 'infopublish_file' id = Column(Integer, autoincrement=True, primary_key=True) file_name = Column(String(255), nullable=False, comment='文件名称') storage_file_name = Column(String(255), nullable=False, comment='文件名称原名') file_path = Column(String(255), comment='文件存储路径') file_size = Column(String(50), comment='文件大小') status = Column(String(50), comment='文件状态') foreign_key = Column(String(50), comment='文件外键 --技术字段') from_scenario = Column(String(50), comment='对应标识 --技术字段') create_time = Column(DateTime, default=datetime.now, comment='数据创建时间') update_time = Column(DateTime, default=datetime.now, onupdate=datetime.now, comment='数据更新时间') create_dept = Column(Integer, default=None, comment='创建部门') create_by = Column(Integer, default=None, comment='创建者') del_flag = Column(String(1), default='0', comment='删除标志(0代表存在 2代表删除)') #更新预案信息的时候 先将原有的进行备注删除 class Config: orm_mode = True class InfoPublishExamine(Base): __tablename__ = 'infopublish_examine' id = Column(Integer, autoincrement=True, primary_key=True) publish_id = Column(Integer, default='0', server_default='0', comment='主表ID') examine_type = Column(Integer, default='0', server_default='0', comment='审核类型 0 草稿 10 提交 20 领导审批 30 重新提交') examine_sub_type = Column(Integer, default='0', server_default='0', comment='审核类型 0 草稿 10 提交 20 待审批 21 审批通过 22 审批不通过 30 重新提交') examine_time = Column(DateTime, default=datetime.now, comment='审批时间') content = Column(Text, default='', server_default='', comment='审批内容') user_id = Column(Integer, default='0', server_default='0', comment='主表ID') user_name = Column(String, default='', server_default='', comment='审批账号') nick_name = Column(String, default='', server_default='', comment='审批姓名') del_flag = Column(String, default='0', comment='删除标志(0代表存在 2代表删除)') class Config: orm_mode = True