// Code generated by ent, DO NOT EDIT. package migrate import ( "entgo.io/ent/dialect/entsql" "entgo.io/ent/dialect/sql/schema" "entgo.io/ent/schema/field" ) var ( // BatchMsgColumns holds the columns for the "batch_msg" table. BatchMsgColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "状态 0 未开始 1 开始发送 2 发送完成 3 发送中止"}, {Name: "batch_no", Type: field.TypeString, Unique: true, Nullable: true, Comment: "批次号"}, {Name: "fromwxid", Type: field.TypeString, Nullable: true, Comment: "发送方微信ID"}, {Name: "msg", Type: field.TypeString, Nullable: true, Comment: "内容"}, {Name: "tag", Type: field.TypeString, Nullable: true, Comment: "发送规则 all 全部 tag1,tag2 按tag发送"}, {Name: "total", Type: field.TypeInt32, Nullable: true, Comment: "总数"}, {Name: "success", Type: field.TypeInt32, Nullable: true, Comment: "成功数量"}, {Name: "fail", Type: field.TypeInt32, Nullable: true, Comment: "失败数量"}, {Name: "start_time", Type: field.TypeTime, Nullable: true, Comment: "开始时间"}, {Name: "stop_time", Type: field.TypeTime, Nullable: true, Comment: "结束时间"}, } // BatchMsgTable holds the schema information for the "batch_msg" table. BatchMsgTable = &schema.Table{ Name: "batch_msg", Columns: BatchMsgColumns, PrimaryKey: []*schema.Column{BatchMsgColumns[0]}, Indexes: []*schema.Index{ { Name: "batchmsg_batch_no", Unique: true, Columns: []*schema.Column{BatchMsgColumns[5]}, }, }, } // ContactColumns holds the columns for the "contact" table. ContactColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "wx_wxid", Type: field.TypeString, Nullable: true, Comment: "属主微信id", Default: ""}, {Name: "type", Type: field.TypeInt, Nullable: true, Comment: "联系人类型:1好友,2群组,3公众号,4企业微信联系人", Default: 1}, {Name: "wxid", Type: field.TypeString, Comment: "微信id 公众号微信ID", Default: ""}, {Name: "account", Type: field.TypeString, Comment: "微信账号", Default: ""}, {Name: "nickname", Type: field.TypeString, Comment: "微信昵称 群备注名称", Default: ""}, {Name: "markname", Type: field.TypeString, Comment: "备注名", Default: ""}, {Name: "headimg", Type: field.TypeString, Comment: "头像", Default: ""}, {Name: "sex", Type: field.TypeInt, Comment: "性别 0未知 1男 2女", Default: 0}, {Name: "starrole", Type: field.TypeString, Comment: "星标 65/67=星标 1/3=未星标", Default: ""}, {Name: "dontseeit", Type: field.TypeInt, Comment: "不让他看我的朋友圈 0可以看 1不让看", Default: 0}, {Name: "dontseeme", Type: field.TypeInt, Comment: "不看他的朋友圈 0可以看 1不看 1=开启了不看他 128/129=仅聊天", Default: 0}, {Name: "lag", Type: field.TypeString, Comment: "所属标签id清单,多开会用逗号隔开", Default: ""}, {Name: "gid", Type: field.TypeString, Comment: "群组id", Default: ""}, {Name: "gname", Type: field.TypeString, Comment: "群组名称", Default: ""}, {Name: "v3", Type: field.TypeString, Comment: "v3数据", Default: ""}, } // ContactTable holds the schema information for the "contact" table. ContactTable = &schema.Table{ Name: "contact", Columns: ContactColumns, PrimaryKey: []*schema.Column{ContactColumns[0]}, Indexes: []*schema.Index{ { Name: "contact_wx_wxid_wxid", Unique: true, Columns: []*schema.Column{ContactColumns[5], ContactColumns[7]}, }, { Name: "contact_wxid", Unique: false, Columns: []*schema.Column{ContactColumns[7]}, }, { Name: "contact_type", Unique: false, Columns: []*schema.Column{ContactColumns[6]}, }, { Name: "contact_gid", Unique: false, Columns: []*schema.Column{ContactColumns[17]}, }, }, } // LabelColumns holds the columns for the "label" table. LabelColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "type", Type: field.TypeInt, Comment: "标签类型:1好友,2群组,3公众号,4企业微信联系人", Default: 1}, {Name: "name", Type: field.TypeString, Comment: "标签名称", Default: ""}, {Name: "from", Type: field.TypeInt, Comment: "标签来源:1后台创建 2个微同步", Default: 1}, {Name: "mode", Type: field.TypeInt, Comment: "标签模式:1动态 2静态", Default: 1}, {Name: "conditions", Type: field.TypeString, Nullable: true, Comment: "标签的触达条件", Default: ""}, } // LabelTable holds the schema information for the "label" table. LabelTable = &schema.Table{ Name: "label", Columns: LabelColumns, PrimaryKey: []*schema.Column{LabelColumns[0]}, Indexes: []*schema.Index{ { Name: "label_name_from_mode", Unique: true, Columns: []*schema.Column{LabelColumns[6], LabelColumns[7], LabelColumns[8]}, }, }, } // LabelRelationshipColumns holds the columns for the "label_relationship" table. LabelRelationshipColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "contact_id", Type: field.TypeUint64, Comment: "联系人 ID", Default: 1}, {Name: "label_id", Type: field.TypeUint64, Comment: "标签 ID", Default: 1}, } // LabelRelationshipTable holds the schema information for the "label_relationship" table. LabelRelationshipTable = &schema.Table{ Name: "label_relationship", Columns: LabelRelationshipColumns, PrimaryKey: []*schema.Column{LabelRelationshipColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "label_relationship_contact_contact_relationships", Columns: []*schema.Column{LabelRelationshipColumns[5]}, RefColumns: []*schema.Column{ContactColumns[0]}, OnDelete: schema.NoAction, }, { Symbol: "label_relationship_label_label_relationships", Columns: []*schema.Column{LabelRelationshipColumns[6]}, RefColumns: []*schema.Column{LabelColumns[0]}, OnDelete: schema.NoAction, }, }, Indexes: []*schema.Index{ { Name: "labelrelationship_label_id", Unique: false, Columns: []*schema.Column{LabelRelationshipColumns[6]}, }, { Name: "labelrelationship_contact_id", Unique: false, Columns: []*schema.Column{LabelRelationshipColumns[5]}, }, }, } // MessagesColumns holds the columns for the "messages" table. MessagesColumns = []*schema.Column{ {Name: "id", Type: field.TypeInt, Increment: true}, {Name: "wx_wxid", Type: field.TypeString, Nullable: true, Comment: "属主微信id", Default: ""}, {Name: "wxid", Type: field.TypeString, Comment: "微信id 公众号微信ID", Default: ""}, {Name: "content", Type: field.TypeString, Comment: "微信消息内容", Default: ""}, } // MessagesTable holds the schema information for the "messages" table. MessagesTable = &schema.Table{ Name: "messages", Columns: MessagesColumns, PrimaryKey: []*schema.Column{MessagesColumns[0]}, } // MessageRecordsColumns holds the columns for the "message_records" table. MessageRecordsColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "bot_wxid", Type: field.TypeString, Comment: "机器人微信 id"}, {Name: "contact_type", Type: field.TypeInt, Comment: "类型:1好友,2群组,3企业微信联系人", Default: 1}, {Name: "contact_wxid", Type: field.TypeString, Comment: "接收方微信 id", Default: ""}, {Name: "content_type", Type: field.TypeInt, Comment: "内容类型 1 文本 2 文件", Default: 1}, {Name: "content", Type: field.TypeString, Comment: "发送内容", Default: ""}, {Name: "meta", Type: field.TypeJSON, Nullable: true, Comment: "元数据"}, {Name: "error_detail", Type: field.TypeString, Comment: "异常原因", Default: ""}, {Name: "send_time", Type: field.TypeTime, Nullable: true, Comment: "发送时间"}, {Name: "source_type", Type: field.TypeInt, Comment: "源类型 1 点发 2 群发 3 SOP", Default: 1}, {Name: "contact_id", Type: field.TypeUint64, Nullable: true, Comment: "联系人 id"}, {Name: "sub_source_id", Type: field.TypeUint64, Nullable: true, Comment: "次源 ID", Default: 1}, {Name: "source_id", Type: field.TypeUint64, Nullable: true, Comment: "源 ID", Default: 1}, } // MessageRecordsTable holds the schema information for the "message_records" table. MessageRecordsTable = &schema.Table{ Name: "message_records", Columns: MessageRecordsColumns, PrimaryKey: []*schema.Column{MessageRecordsColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "message_records_contact_contact_messages", Columns: []*schema.Column{MessageRecordsColumns[14]}, RefColumns: []*schema.Column{ContactColumns[0]}, OnDelete: schema.SetNull, }, { Symbol: "message_records_sop_node_node_messages", Columns: []*schema.Column{MessageRecordsColumns[15]}, RefColumns: []*schema.Column{SopNodeColumns[0]}, OnDelete: schema.SetNull, }, { Symbol: "message_records_sop_stage_stage_messages", Columns: []*schema.Column{MessageRecordsColumns[16]}, RefColumns: []*schema.Column{SopStageColumns[0]}, OnDelete: schema.SetNull, }, }, Indexes: []*schema.Index{ { Name: "messagerecords_source_type", Unique: false, Columns: []*schema.Column{MessageRecordsColumns[13]}, }, }, } // ServerColumns holds the columns for the "server" table. ServerColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "name", Type: field.TypeString, Comment: "名称"}, {Name: "public_ip", Type: field.TypeString, Comment: "公网ip"}, {Name: "private_ip", Type: field.TypeString, Comment: "内网ip"}, {Name: "admin_port", Type: field.TypeString, Comment: "管理端口"}, } // ServerTable holds the schema information for the "server" table. ServerTable = &schema.Table{ Name: "server", Columns: ServerColumns, PrimaryKey: []*schema.Column{ServerColumns[0]}, Indexes: []*schema.Index{ { Name: "server_name", Unique: false, Columns: []*schema.Column{ServerColumns[5]}, }, { Name: "server_private_ip", Unique: false, Columns: []*schema.Column{ServerColumns[7]}, }, { Name: "server_public_ip", Unique: true, Columns: []*schema.Column{ServerColumns[6]}, }, }, } // SopNodeColumns holds the columns for the "sop_node" table. SopNodeColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "parent_id", Type: field.TypeUint64, Comment: "父节点 ID"}, {Name: "name", Type: field.TypeString, Comment: "节点名称", Default: ""}, {Name: "condition_type", Type: field.TypeInt, Comment: "触发条件类型 1 客户回复后触发 2 超时后触发", Default: 1}, {Name: "condition_list", Type: field.TypeJSON, Nullable: true, Comment: "触发语义列表 当为空时则代表用户回复任意内容后触发"}, {Name: "no_reply_condition", Type: field.TypeUint64, Comment: "超时触发时间(分钟)", Default: 0}, {Name: "action_message", Type: field.TypeJSON, Nullable: true, Comment: "命中后发送的消息内容"}, {Name: "action_label", Type: field.TypeJSON, Nullable: true, Comment: "命中后需要打的标签"}, {Name: "stage_id", Type: field.TypeUint64, Comment: "阶段 ID"}, } // SopNodeTable holds the schema information for the "sop_node" table. SopNodeTable = &schema.Table{ Name: "sop_node", Columns: SopNodeColumns, PrimaryKey: []*schema.Column{SopNodeColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "sop_node_sop_stage_stage_nodes", Columns: []*schema.Column{SopNodeColumns[12]}, RefColumns: []*schema.Column{SopStageColumns[0]}, OnDelete: schema.NoAction, }, }, Indexes: []*schema.Index{ { Name: "sopnode_name", Unique: false, Columns: []*schema.Column{SopNodeColumns[6]}, }, }, } // SopStageColumns holds the columns for the "sop_stage" table. SopStageColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "name", Type: field.TypeString, Comment: "阶段名称", Default: ""}, {Name: "condition_type", Type: field.TypeInt, Comment: "客群筛选条件类型 1 按标签筛选 2 按客户基本信息筛选", Default: 1}, {Name: "condition_operator", Type: field.TypeInt, Comment: "筛选条件关系 1 满足所有条件(and) 2 满足任意条件(or)", Default: 1}, {Name: "condition_list", Type: field.TypeJSON, Comment: "筛选条件列表"}, {Name: "action_message", Type: field.TypeJSON, Nullable: true, Comment: "命中后发送的消息内容"}, {Name: "action_label", Type: field.TypeJSON, Nullable: true, Comment: "命中后需要打的标签"}, {Name: "index_sort", Type: field.TypeInt, Nullable: true, Comment: "阶段顺序", Default: 1}, {Name: "task_id", Type: field.TypeUint64, Comment: "SOP 任务 ID"}, } // SopStageTable holds the schema information for the "sop_stage" table. SopStageTable = &schema.Table{ Name: "sop_stage", Columns: SopStageColumns, PrimaryKey: []*schema.Column{SopStageColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "sop_stage_sop_task_task_stages", Columns: []*schema.Column{SopStageColumns[12]}, RefColumns: []*schema.Column{SopTaskColumns[0]}, OnDelete: schema.NoAction, }, }, Indexes: []*schema.Index{ { Name: "sopstage_name", Unique: false, Columns: []*schema.Column{SopStageColumns[5]}, }, }, } // SopTaskColumns holds the columns for the "sop_task" table. SopTaskColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "name", Type: field.TypeString, Comment: "SOP 任务名称"}, {Name: "bot_wxid_list", Type: field.TypeJSON, Nullable: true, Comment: "机器人微信 id 列表"}, {Name: "type", Type: field.TypeInt, Comment: "标签类型:1好友,2群组,3企业微信联系人", Default: 1}, {Name: "plan_start_time", Type: field.TypeTime, Nullable: true, Comment: "任务计划开始时间"}, {Name: "plan_end_time", Type: field.TypeTime, Nullable: true, Comment: "任务计划结束时间"}, {Name: "creator_id", Type: field.TypeString, Nullable: true, Comment: "创建者 id"}, } // SopTaskTable holds the schema information for the "sop_task" table. SopTaskTable = &schema.Table{ Name: "sop_task", Columns: SopTaskColumns, PrimaryKey: []*schema.Column{SopTaskColumns[0]}, Indexes: []*schema.Index{ { Name: "soptask_name", Unique: false, Columns: []*schema.Column{SopTaskColumns[5]}, }, }, } // WxColumns holds the columns for the "wx" table. WxColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime, Comment: "Create Time | 创建日期"}, {Name: "updated_at", Type: field.TypeTime, Comment: "Update Time | 修改日期"}, {Name: "status", Type: field.TypeUint8, Nullable: true, Comment: "Status 1: normal 2: ban | 状态 1 正常 2 禁用", Default: 1}, {Name: "deleted_at", Type: field.TypeTime, Nullable: true, Comment: "Delete Time | 删除日期"}, {Name: "port", Type: field.TypeString, Comment: "端口号", Default: ""}, {Name: "process_id", Type: field.TypeString, Comment: "进程号", Default: ""}, {Name: "callback", Type: field.TypeString, Comment: "回调地址", Default: ""}, {Name: "wxid", Type: field.TypeString, Comment: "微信id", Default: ""}, {Name: "account", Type: field.TypeString, Comment: "微信账号", Default: ""}, {Name: "nickname", Type: field.TypeString, Comment: "微信昵称", Default: ""}, {Name: "tel", Type: field.TypeString, Comment: "手机号", Default: ""}, {Name: "head_big", Type: field.TypeString, Comment: "微信头像", Default: ""}, {Name: "server_id", Type: field.TypeUint64, Nullable: true, Comment: "服务器id", Default: 0}, } // WxTable holds the schema information for the "wx" table. WxTable = &schema.Table{ Name: "wx", Columns: WxColumns, PrimaryKey: []*schema.Column{WxColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "wx_server_wxs", Columns: []*schema.Column{WxColumns[13]}, RefColumns: []*schema.Column{ServerColumns[0]}, OnDelete: schema.SetNull, }, }, Indexes: []*schema.Index{ { Name: "wx_server_id_port", Unique: true, Columns: []*schema.Column{WxColumns[13], WxColumns[5]}, }, { Name: "wx_wxid", Unique: true, Columns: []*schema.Column{WxColumns[8]}, }, { Name: "wx_account", Unique: false, Columns: []*schema.Column{WxColumns[9]}, }, { Name: "wx_nickname", Unique: false, Columns: []*schema.Column{WxColumns[10]}, }, { Name: "wx_tel", Unique: false, Columns: []*schema.Column{WxColumns[11]}, }, }, } // Tables holds all the tables in the schema. Tables = []*schema.Table{ BatchMsgTable, ContactTable, LabelTable, LabelRelationshipTable, MessagesTable, MessageRecordsTable, ServerTable, SopNodeTable, SopStageTable, SopTaskTable, WxTable, } ) func init() { BatchMsgTable.Annotation = &entsql.Annotation{ Table: "batch_msg", } ContactTable.Annotation = &entsql.Annotation{ Table: "contact", } LabelTable.Annotation = &entsql.Annotation{ Table: "label", } LabelRelationshipTable.ForeignKeys[0].RefTable = ContactTable LabelRelationshipTable.ForeignKeys[1].RefTable = LabelTable LabelRelationshipTable.Annotation = &entsql.Annotation{ Table: "label_relationship", } MessagesTable.Annotation = &entsql.Annotation{ Table: "messages", } MessageRecordsTable.ForeignKeys[0].RefTable = ContactTable MessageRecordsTable.ForeignKeys[1].RefTable = SopNodeTable MessageRecordsTable.ForeignKeys[2].RefTable = SopStageTable MessageRecordsTable.Annotation = &entsql.Annotation{ Table: "message_records", } ServerTable.Annotation = &entsql.Annotation{ Table: "server", } SopNodeTable.ForeignKeys[0].RefTable = SopStageTable SopNodeTable.Annotation = &entsql.Annotation{ Table: "sop_node", } SopStageTable.ForeignKeys[0].RefTable = SopTaskTable SopStageTable.Annotation = &entsql.Annotation{ Table: "sop_stage", } SopTaskTable.Annotation = &entsql.Annotation{ Table: "sop_task", } WxTable.ForeignKeys[0].RefTable = ServerTable WxTable.Annotation = &entsql.Annotation{ Table: "wx", } }