815cbf9d8c
- 更新 .gitignore:全面覆盖环境变量、数据库、日志、缓存、上传文件 - 移除误跟踪的 server/venv/、crm_data.db、.env 文件 - 新增 server/.env.example 模板 - 新增合同管理、利润核算、AI教练等功能模块 - 新增 Playwright e2e 测试套件 - 前后端多项功能升级和 bug 修复
50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
"""Phase D: AI coaching engine (JSONB fields only, pgvector table deferred)
|
|
|
|
Revision ID: a7b8c9d0e1f2
|
|
Revises: f6a7b8c9d0e1
|
|
Create Date: 2026-03-27
|
|
|
|
Note: kb_obsidian_vectors (pgvector) 表需要先安装 postgresql-16-pgvector 包,
|
|
安装后手动执行:
|
|
CREATE EXTENSION IF NOT EXISTS vector;
|
|
然后运行: alembic upgrade pgvector_head
|
|
"""
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
from sqlalchemy.dialects.postgresql import UUID, JSONB
|
|
|
|
revision = "a7b8c9d0e1f2"
|
|
down_revision = "f6a7b8c9d0e1"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
# ── 1. sales_logs 新增 ai_coaching_feedback ──
|
|
op.add_column(
|
|
"sales_logs",
|
|
sa.Column("ai_coaching_feedback", JSONB, nullable=True,
|
|
comment="AI 教练引擎回写的指导反馈"),
|
|
)
|
|
|
|
# ── 2. crm_customers 新增 health_score / meddic_status ──
|
|
op.add_column(
|
|
"crm_customers",
|
|
sa.Column("health_score", sa.Numeric(5, 2), server_default="0",
|
|
comment="客户健康度评分 (AI 教练引擎计算)"),
|
|
)
|
|
op.add_column(
|
|
"crm_customers",
|
|
sa.Column("meddic_status", JSONB, nullable=True,
|
|
comment="MEDDIC 六维评估状态"),
|
|
)
|
|
|
|
# ── 3. kb_obsidian_vectors 表暂不在此迁移创建 ──
|
|
# 需先安装 pgvector 扩展,见单独迁移脚本
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_column("crm_customers", "meddic_status")
|
|
op.drop_column("crm_customers", "health_score")
|
|
op.drop_column("sales_logs", "ai_coaching_feedback")
|