operations_project/apps/gmail/migrations/0001_initial.py
2025-05-07 18:01:48 +08:00

83 lines
4.7 KiB
Python

# Generated by Django 5.2 on 2025-05-07 03:40
import django.db.models.deletion
import uuid
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
('chat', '0001_initial'),
('knowledge_base', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='GmailAttachment',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('gmail_message_id', models.CharField(max_length=100, verbose_name='Gmail消息ID')),
('filename', models.CharField(max_length=255, verbose_name='文件名')),
('filepath', models.CharField(max_length=500, verbose_name='文件路径')),
('mimetype', models.CharField(max_length=100, verbose_name='MIME类型')),
('filesize', models.IntegerField(default=0, verbose_name='文件大小')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('chat_message', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='gmail_attachments', to='chat.chathistory')),
],
options={
'verbose_name': 'Gmail附件',
'verbose_name_plural': 'Gmail附件',
'db_table': 'gmail_attachments',
},
),
migrations.CreateModel(
name='GmailCredential',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('gmail_email', models.EmailField(default='your_default_email@example.com', max_length=255, verbose_name='Gmail邮箱')),
('name', models.CharField(default='默认Gmail', max_length=100, verbose_name='名称')),
('credentials', models.TextField(blank=True, null=True, verbose_name='凭证JSON')),
('token_path', models.CharField(blank=True, max_length=255, null=True, verbose_name='令牌路径')),
('is_default', models.BooleanField(default=False, verbose_name='是否默认')),
('last_history_id', models.CharField(blank=True, max_length=100, null=True, verbose_name='最后历史ID')),
('watch_expiration', models.DateTimeField(blank=True, null=True, verbose_name='监听过期时间')),
('is_active', models.BooleanField(default=True, verbose_name='是否活跃')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
('gmail_credential_id', models.CharField(blank=True, max_length=255, null=True, verbose_name='Gmail凭证ID')),
('needs_reauth', models.BooleanField(default=False, verbose_name='需要重新授权')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='gmail_credentials', to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name': 'Gmail凭证',
'verbose_name_plural': 'Gmail凭证',
'ordering': ['-is_default', '-updated_at'],
'unique_together': {('user', 'gmail_email')},
},
),
migrations.CreateModel(
name='GmailTalentMapping',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('talent_email', models.EmailField(max_length=254, verbose_name='达人邮箱')),
('conversation_id', models.CharField(max_length=100, verbose_name='对话ID')),
('is_active', models.BooleanField(default=True, verbose_name='是否激活')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')),
('knowledge_base', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='gmail_mappings', to='knowledge_base.knowledgebase')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='gmail_talent_mappings', to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name': 'Gmail达人映射',
'verbose_name_plural': 'Gmail达人映射',
'db_table': 'gmail_talent_mappings',
'unique_together': {('user', 'talent_email')},
},
),
]