修改
This commit is contained in:
parent
cbe13c319b
commit
e4dd2808da
16
apps/daren_detail/migrations/0002_delete_brandcampaign.py
Normal file
16
apps/daren_detail/migrations/0002_delete_brandcampaign.py
Normal file
@ -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',
|
||||||
|
),
|
||||||
|
]
|
@ -287,51 +287,6 @@ class CreatorCampaign(models.Model):
|
|||||||
return f"{self.creator.name} - {self.campaign.name}"
|
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):
|
class CreatorVideo(models.Model):
|
||||||
|
39
apps/feishu/migrations/0002_creatorconversationtracker.py
Normal file
39
apps/feishu/migrations/0002_creatorconversationtracker.py
Normal file
@ -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')},
|
||||||
|
},
|
||||||
|
),
|
||||||
|
]
|
Loading…
Reference in New Issue
Block a user