From e4dd2808dab946cac7b62ed266ba1190f98a55c2 Mon Sep 17 00:00:00 2001 From: jlj <3042504846@qq.com> Date: Thu, 5 Jun 2025 14:31:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migrations/0002_delete_brandcampaign.py | 16 +++++++ apps/daren_detail/models.py | 45 ------------------- .../0002_creatorconversationtracker.py | 39 ++++++++++++++++ 3 files changed, 55 insertions(+), 45 deletions(-) create mode 100644 apps/daren_detail/migrations/0002_delete_brandcampaign.py create mode 100644 apps/feishu/migrations/0002_creatorconversationtracker.py diff --git a/apps/daren_detail/migrations/0002_delete_brandcampaign.py b/apps/daren_detail/migrations/0002_delete_brandcampaign.py new file mode 100644 index 0000000..ee72cc8 --- /dev/null +++ b/apps/daren_detail/migrations/0002_delete_brandcampaign.py @@ -0,0 +1,16 @@ +# Generated by Django 5.2.1 on 2025-06-05 06:28 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('daren_detail', '0001_initial'), + ] + + operations = [ + migrations.DeleteModel( + name='BrandCampaign', + ), + ] diff --git a/apps/daren_detail/models.py b/apps/daren_detail/models.py index 6aa9024..b428e6e 100644 --- a/apps/daren_detail/models.py +++ b/apps/daren_detail/models.py @@ -287,51 +287,6 @@ class CreatorCampaign(models.Model): return f"{self.creator.name} - {self.campaign.name}" -class BrandCampaign(models.Model): - """品牌活动数据模型""" - BRAND_CHOICES = [ - ('U', 'U品牌'), - ('R', 'R品牌'), - ('X', 'X品牌'), - ('Q', 'Q品牌'), - ('A', 'A品牌'), - ('M', 'M品牌'), - ] - - STATUS_CHOICES = [ - ('completed', '已完成'), - ('in_progress', '进行中'), - ('rejected', '已拒绝'), - ] - - brand_id = models.CharField(max_length=10, choices=BRAND_CHOICES, verbose_name="品牌ID") - brand_name = models.CharField(max_length=255, default="brand", verbose_name="品牌名称") - brand_color = models.CharField(max_length=20, default="#000000", verbose_name="品牌颜色") - - # 添加关联到Campaign模型的外键 - campaign = models.ForeignKey(BrandCampaign, on_delete=models.SET_NULL, null=True, blank=True, verbose_name="关联活动", - related_name="brand_campaigns") - - pricing_detail = models.CharField(max_length=50, verbose_name="价格详情") - start_date = models.DateField(verbose_name="开始日期") - end_date = models.DateField(verbose_name="结束日期") - - status = models.CharField(max_length=20, choices=STATUS_CHOICES, verbose_name="状态") - gmv_achieved = models.CharField(max_length=50, verbose_name="实现GMV") - views_achieved = models.CharField(max_length=50, verbose_name="实现观看量") - video_link = models.URLField(max_length=255, blank=True, null=True, verbose_name="视频链接") - - # 时间戳 - create_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间") - update_time = models.DateTimeField(auto_now=True, verbose_name="更新时间") - - class Meta: - verbose_name = "品牌活动数据" - verbose_name_plural = verbose_name - db_table = "brand_campaigns" - - def __str__(self): - return f"{self.brand_id} - {self.brand_name}" class CreatorVideo(models.Model): diff --git a/apps/feishu/migrations/0002_creatorconversationtracker.py b/apps/feishu/migrations/0002_creatorconversationtracker.py new file mode 100644 index 0000000..e43c8eb --- /dev/null +++ b/apps/feishu/migrations/0002_creatorconversationtracker.py @@ -0,0 +1,39 @@ +# Generated by Django 5.2.1 on 2025-06-05 06:28 + +import django.db.models.deletion +import uuid +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('daren_detail', '0002_delete_brandcampaign'), + ('feishu', '0001_initial'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='CreatorConversationTracker', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), + ('conversation_id', models.CharField(max_length=100, verbose_name='对话ID')), + ('has_replied', models.BooleanField(default=False, verbose_name='是否已回复')), + ('goal_achieved', models.BooleanField(default=False, verbose_name='是否达成目标')), + ('user_email', models.EmailField(max_length=254, verbose_name='用户邮箱')), + ('influencer_email', models.EmailField(max_length=254, verbose_name='达人邮箱')), + ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')), + ('updated_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')), + ('creator_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='daren_detail.creatorprofile', verbose_name='创作者')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='用户')), + ], + options={ + 'verbose_name': '创作者对话跟踪', + 'verbose_name_plural': '创作者对话跟踪', + 'db_table': 'creator_conversation_tracker', + 'unique_together': {('creator_profile', 'conversation_id')}, + }, + ), + ]