| 31 | |
| 32 | |
| 33 | class Chat(AppModelMixin): |
| 34 | id = models.UUIDField(primary_key=True, max_length=128, default=uuid.uuid7, editable=False, verbose_name="主键id") |
| 35 | application = models.ForeignKey(Application, on_delete=models.CASCADE) |
| 36 | abstract = models.CharField(max_length=1024, verbose_name="摘要") |
| 37 | chat_user_id = models.CharField(verbose_name="对话用户id", default=None, null=True) |
| 38 | chat_user_type = models.CharField(max_length=64, verbose_name="客户端类型", choices=ChatUserType.choices, |
| 39 | default=ChatUserType.ANONYMOUS_USER) |
| 40 | is_deleted = models.BooleanField(verbose_name="逻辑删除", default=False) |
| 41 | asker = models.JSONField(verbose_name="访问者", default=default_asker, encoder=SystemEncoder) |
| 42 | meta = models.JSONField(verbose_name="元数据", default=dict) |
| 43 | star_num = models.IntegerField(verbose_name="点赞数量", default=0) |
| 44 | trample_num = models.IntegerField(verbose_name="点踩数量", default=0) |
| 45 | chat_record_count = models.IntegerField(verbose_name="对话次数", default=0) |
| 46 | mark_sum = models.IntegerField(verbose_name="标记数量", default=0) |
| 47 | source = models.JSONField(verbose_name="来源", default=dict) |
| 48 | ip_address = models.CharField(max_length=128, verbose_name="ip地址", default='') |
| 49 | |
| 50 | class Meta: |
| 51 | db_table = "application_chat" |
| 52 | |
| 53 | |
| 54 | class VoteChoices(models.TextChoices): |
no outgoing calls
no test coverage detected