from datetime import date

from django.core.management.base import BaseCommand

from journal.models import Memory


class Command(BaseCommand):
    help = "Seed 2026 春季时间线：遇见→争执→和好→租房→宜家，终章心窗。"

    def handle(self, *args, **options):
        Memory.objects.all().delete()

        Memory.objects.create(
            story_order=20260420,
            date=date(2026, 4, 20),
            event_title="第一条私信",
            main_text=(
                "**2026 年 4 月 20 日**，故事从屏幕亮起的那一刻开始。\n\n"
                "成电、读博、课题组……你把担心和好奇都写进了陌生人私信里。"
                "我被你的文字吸引，于是我们开始了聊天。"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET,
            nepal_art_style=Memory.NepalArtStyle.NIGHT_STAR,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260422,
            date=date(2026, 4, 22),
            event_title="集电院",
            main_text=(
                "**2026 年 4 月 22 日**，给你拍下了集电院，了解到你最害怕冷暴力了。\n\n"
                "集电，冷暴力，摩斯密码，凌晨2点还在聊。"
                "万水千山总会有人陪你去看。"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET_JU,
            nepal_art_style=Memory.NepalArtStyle.NIGHT_STAR,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260423,
            date=date(2026, 4, 24),
            event_title="瑞幸咖啡",
            main_text=(
                "**2026 年 4 月 24 日**，你给我买了瑞幸咖啡，留意到我很喜欢喝橙C，桌角的灵笼也被你注意到了。\n\n"
                "咖啡，橙C，灵笼，喜欢你，喜欢我。"
                "桌角的细节总会有人注意到。"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET_RUI,
            nepal_art_style=Memory.NepalArtStyle.NIGHT_STAR,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260424,
            date=date(2026, 4, 24),
            event_title="第一次通电话",
            main_text=(
                "**2026 年 4 月 24 日**，第一次通电话，给你说起了我们学校集电事件。\n\n"
                "第一次听到你的声音，很温柔，很害羞。简单20分钟，希望能够帮助到你。"
                "这个就是爱情，但不是你们那种样子"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET_RUI,
            nepal_art_style=Memory.NepalArtStyle.NIGHT_STAR,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260430,
            date=date(2026, 4, 30),
            event_title="高铁相遇",
            main_text=(
                "**2026 年 4 月 30 日**，故事从这里开始。\n\n"
                "相识、相见、相遇——我把这一页留给那天的风与心跳。"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET_TRAIN,
            nepal_art_style=Memory.NepalArtStyle.DAWN_MEET,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260431,
            date=date(2026, 4, 30),
            event_title="出租牵手",
            main_text=(
                "**2026 年 4 月 30 日**，我们在车上开始牵手。\n\n"
                "心跳开始加速、见面的花倒成了我们之间的障碍。"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET_TAIX,
            nepal_art_style=Memory.NepalArtStyle.DAWN_MEET,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260432,
            date=date(2026, 4, 30),
            event_title="全季M爱",
            main_text=(
                "**2026 年 4 月 30 日**，下次见面还是全季。\n\n"
                "所以爱的开始就在全季，那么我们下次可以去四季嘛。"
            ),
            unique_feature_type=Memory.FeatureType.FIRST_MEET_QUANJI,
            nepal_art_style=Memory.NepalArtStyle.DAWN_MEET,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260501,
            date=date(2026, 5, 1),
            event_title="劳动节“劳动”",
            main_text=(
                "**2026 年 5 月 1 日**，劳动节我们倒是很累嘛，所以我身体真的很好吧。\n\n"
                "从那天开始，我们就开始了劳动节的“劳动”,各种姿势，我们缠绵。"
            ),
            unique_feature_type=Memory.FeatureType.MAKE_LOVE,
            nepal_art_style=Memory.NepalArtStyle.DAWN_MEET,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260503,
            date=date(2026, 5, 3),
            event_title="那天我们吵架了",
            main_text=(
                "**那天吵架，不是因为不在意，而是因为我越界了。**\n\n"
                "我把你和前任之间的事情告诉了别人。那些本该只停留在你我之间的话，"
                "被我轻率地说出口，最后变成了别人对你评头论足的谈资。\n\n"
                "我后来写了很长的一段话向你道歉，也向你解释：我不是想伤害你，"
                "只是我真的做错了。可是我也知道，解释不能抵消伤害，"
                "对不起这三个字也不该说得太轻。\n\n"
                "> 那天我最想做的，不是证明自己没有恶意，而是把你重新好好护回我的这一边。"
            ),
            unique_feature_type=Memory.FeatureType.FISSURE_PAGE,
            nepal_art_style=Memory.NepalArtStyle.BLUSH_ARGUE,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260504,
            date=date(2026, 5, 4),
            event_title="和好了，在一起吧",
            main_text=(
                "**5 月 4 日**：别扭说开以后，空气又变甜了。\n\n"
                "谢谢你愿意和我把话说完。"
            ),
            unique_feature_type=Memory.FeatureType.STANDARD_NEPAL,
            nepal_art_style=Memory.NepalArtStyle.MINT_RECONCILE,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260508,
            date=date(2026, 5, 8),
            event_title="一起租了房",
            main_text=(
                "钥匙圈上的小叮当，和阳台晒进来的光。\n\n"
                "> 这是我们共同的小宇宙开始成形的日子。"
            ),
            unique_feature_type=Memory.FeatureType.STANDARD_NEPAL,
            nepal_art_style=Memory.NepalArtStyle.SAFFRON_HOME,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260510,
            date=date(2026, 5, 10),
            event_title="逛宜家的小日子",
            main_text=(
                "推车里的热狗、桌子、盘子和杯子，"
                "都是以后会说「还记得吗」的碎片。"
            ),
            unique_feature_type=Memory.FeatureType.STANDARD_NEPAL,
            nepal_art_style=Memory.NepalArtStyle.INDIGO_IKEA,
            is_finale=False,
        )
        Memory.objects.create(
            story_order=20260520,
            date=date(2026, 5, 20),
            event_title="心墙与窗 · 终章",
            main_text=(
                "不开心就打开心墙。\n\n"
                "**我会在你身边。**\n\n"
                "—— *open when you need me*"
            ),
            unique_feature_type=Memory.FeatureType.HEART_WINDOW,
            nepal_art_style=Memory.NepalArtStyle.LOTUS_PETAL,
            is_finale=True,
        )

        self.stdout.write(self.style.SUCCESS("Seeded %s memories." % Memory.objects.count()))
