Files
2026-06-25 17:41:06 +08:00

73 lines
4.1 KiB
Python

from tortoise import fields
from .base import BaseModel, TimestampMixin
from .enums import MsgType, ActionType
class Msg(BaseModel, TimestampMixin):
hash_id = fields.CharField(max_length=64, null=True, description="消息哈希ID", index=True, unique=True)
title = fields.CharField(max_length=64, null=True, description="消息标题", index=True)
content = fields.TextField(null=True, description="消息内容")
detail = fields.JSONField(default={}, description="消息详情")
is_send = fields.BooleanField(default=False, description="是否已发送", index=True)
send_at = fields.DatetimeField(null=True, description="发送时间")
is_read = fields.BooleanField(default=False, description="是否已读", index=True)
read_at = fields.DatetimeField(null=True, description="已读时间")
is_delete = fields.BooleanField(default=False, description="是否已删除", index=True)
delete_at = fields.DatetimeField(null=True, description="删除时间")
type = fields.CharEnumField(MsgType, null=True, description="消息类型", index=True)
owner_id = fields.CharField(max_length=64, null=True, description="消息所有者ID", index=True)
owner_name = fields.CharField(max_length=64, null=True, description="消息所有者名称", index=True)
class Meta:
table = "system_msg"
class Follow(BaseModel, TimestampMixin):
order_id = fields.CharField(max_length=64, null=True, description="订单ID", index=True)
order_title = fields.TextField(null=True, description="订单标题")
order_pic = fields.CharField(max_length=256, null=True, description="订单图片")
pay_time = fields.DatetimeField(null=True, description="支付时间", index=True)
pay_price = fields.FloatField(null=True, description="支付金额", index=True)
remark = fields.TextField(null=True, description="erp额外备注")
customer_id = fields.CharField(max_length=64, null=True, description="客户ID", index=True)
customer_name = fields.CharField(max_length=64, null=True, description="客户名称", index=True)
customer_taobao_id = fields.CharField(max_length=64, null=True, description="客户淘宝ID", index=True)
staff_id = fields.CharField(max_length=64, null=True, description="企微员工ID", index=True)
staff_name = fields.CharField(max_length=64, null=True, description="企微员工名称", index=True)
staff_time = fields.DatetimeField(null=True, description="添加时间", index=True)
designer_id = fields.CharField(max_length=64, null=True, description="设计师ID", index=True)
designer_name = fields.CharField(max_length=64, null=True, description="设计师名称", index=True)
shop_name = fields.CharField(max_length=64, null=True, description="店铺名称", index=True)
kefu_id = fields.CharField(max_length=64, null=True, description="淘宝客服ID", index=True)
kefu_name = fields.CharField(max_length=64, null=True, description="淘宝客服名称", index=True)
is_delete = fields.BooleanField(default=False, description="是否已删除", index=True)
feishu_record_id = fields.CharField(max_length=64, null=True, description="飞书记录ID", index=True)
is_add_to_feishu = fields.BooleanField(default=False, description="是否已添加到飞书", index=True)
is_update_to_feishu = fields.BooleanField(default=False, description="是否已更新到飞书", index=True)
is_delete_from_feishu = fields.BooleanField(default=False, description="是否已从飞书删除", index=True)
class Meta:
table = "system_follow"
def to_feishu_record(self, fields: dict=None):
fields = fields or {}
return {
"record_id": self.feishu_record_id,
"fields": {
"付款时间": self.pay_time.strftime("%Y-%m-%d %H:%M:%S"),
"店铺名": self.shop_name,
"成交客服": self.kefu_name,
"旺旺id": self.customer_name,
"添加企微客服": self.staff_name,
"订单编号": self.order_id,
"设计师": self.designer_name,
**fields
}
}