"""
创建/更新"隐私政策"页面（apps.core.SimpleContentPage），挂载在首页下。
用于满足 PIPL 合规清单要求（详见 documents/设计方案分析与完善版.md §2.15）。

用法：
    python manage.py seed_privacy_policy
"""
from django.core.management.base import BaseCommand, CommandError

from apps.core.models import SimpleContentPage
from apps.home.models import HomePage

PRIVACY_POLICY_BODY = """
<h2>一、引言</h2>
<p>本公司（以下简称"我们"）非常重视用户的个人信息保护。本《隐私政策》适用于用户访问本网站及使用本网站提供的各项服务（包括但不限于在线留言、需求咨询表单提交等）。请在使用本网站前仔细阅读并充分理解本政策的全部内容。</p>

<h2>二、我们收集的信息</h2>
<p>当您通过本网站的留资表单（如产品咨询、方案咨询等）主动提交信息时，我们可能收集以下类型的个人信息：</p>
<ul>
  <li>姓名</li>
  <li>联系电话</li>
  <li>电子邮箱</li>
  <li>所在公司/单位名称</li>
  <li>您在留言/需求描述中主动提供的其他信息</li>
</ul>
<p>除上述信息外，我们不会主动收集与服务无关的个人敏感信息。</p>

<h2>三、我们如何使用您的信息</h2>
<p>我们收集上述信息仅用于以下目的：</p>
<ul>
  <li>响应并处理您通过表单提交的咨询或需求；</li>
  <li>与您联系以提供售前/售后服务、产品或方案介绍；</li>
  <li>改善本网站的内容与用户体验；</li>
  <li>履行法律法规要求的其他义务。</li>
</ul>
<p>未经您的同意，我们不会将您的个人信息用于上述目的以外的用途，也不会向无关第三方出售、共享您的个人信息。</p>

<h2>四、信息的存储与保护</h2>
<p>您的个人信息将存储于中国大陆境内的服务器，存储期限为实现收集目的所必需的期限，法律法规另有规定的除外。我们采取符合行业标准的技术措施（如访问控制、传输加密等）保护您的个人信息安全，防止信息被误用、未经授权访问、泄露、篡改或损毁。</p>

<h2>五、Cookie 的使用</h2>
<p>为提升用户体验，本网站可能使用 Cookie 或同类技术记录您的浏览偏好等非身份识别信息。您可以通过浏览器设置拒绝或清除 Cookie，但这可能影响部分网站功能的正常使用。</p>

<h2>六、您的权利</h2>
<p>依据《中华人民共和国个人信息保护法》（PIPL）等相关法律法规，您对我们持有的您的个人信息享有以下权利：</p>
<ul>
  <li><strong>查阅权</strong>：您有权查阅我们收集的与您相关的个人信息；</li>
  <li><strong>更正权</strong>：如您发现我们持有的个人信息有误，可要求我们更正；</li>
  <li><strong>删除权</strong>：在符合法律规定的情形下，您可要求我们删除您的个人信息；</li>
  <li><strong>撤回同意权</strong>：您可随时撤回此前提供个人信息时给予的同意。</li>
</ul>
<p>如需行使上述权利，请通过本政策"联系我们"部分列明的方式与我们联系，我们将在收到请求后的合理期限内予以处理。</p>

<h2>七、未成年人信息保护</h2>
<p>本网站主要面向企业客户提供产品与服务信息，不主动面向未成年人收集个人信息。如您是未成年人的监护人并发现其向我们提供了个人信息，请及时与我们联系，我们将尽快采取相应措施删除相关数据。</p>

<h2>八、政策的更新</h2>
<p>我们可能会根据法律法规变化或业务调整不时修订本政策，修订后的政策将在本页面公布并自公布之日起生效。如政策发生重大变更，我们会以网站公告等适当方式通知用户。</p>

<h2>九、联系我们</h2>
<p>如您对本隐私政策有任何疑问、意见或投诉，或需要行使您的个人信息相关权利，请通过网站留言表单与我们联系，我们将尽快回复处理。</p>

<p><em>本政策最近更新日期：2026 年 8 月。</em></p>
""".strip()


class Command(BaseCommand):
    help = "创建或更新隐私政策页面（挂载于首页下）"

    def handle(self, *args, **options):
        home_page = HomePage.objects.live().first() or HomePage.objects.first()
        if home_page is None:
            raise CommandError(
                "未找到 HomePage 实例，请先在 Wagtail 后台创建首页后再运行本命令。"
            )

        page = SimpleContentPage.objects.child_of(home_page).filter(slug="privacy-policy").first()
        if page is None:
            page = SimpleContentPage(
                title="隐私政策",
                slug="privacy-policy",
                body=PRIVACY_POLICY_BODY,
                seo_title_override="隐私政策",
                seo_description_override="了解我们如何收集、使用和保护您的个人信息。",
            )
            home_page.add_child(instance=page)
            page.save_revision().publish()
            self.stdout.write(self.style.SUCCESS(f"已创建隐私政策页面：{page.url}"))
        else:
            page.body = PRIVACY_POLICY_BODY
            page.save()
            page.save_revision().publish()
            self.stdout.write(self.style.SUCCESS(f"已更新隐私政策页面：{page.url}"))
