# 内容管理模块 (CMS) 全量修复与数据库构建报告

## 摘要
本次对 Admin 侧内容管理模块（CMS）进行了深度的端到端修复，补齐了完全缺失的数据库表结构、行级安全策略（RLS）以及管理端 RPC 接口。同时重构了文章管理和分类管理两个核心页面，彻底解决了该模块此前的全量 Mock 问题。

## 修复范围

### 1. 数据库构建 (Schema & RLS)
- **核心表创建**：新增了 `ml_article_categories`（文章分类）和 `ml_articles`（文章主表）。
- **安全隔离**：配置了 RLS 策略，确保消费者端仅能查看“已发布”的内容，管理端通过 RPC 拥有全量管理权限。

### 2. RPC 接口补全 (SECURITY DEFINER)
- 实现了 9 个标准 RPC 接口，涵盖：
    - 文章分类的分页查询、保存、删除及状态切换。
    - 文章内容的分页查询、详情获取、内容保存、逻辑删除及发布状态管理。

### 3. 前端重构 (去 Mock)
- **服务层封装**：新建了 `services/admin/cmsService.uts`，统一封装了所有 CMS 相关的真实后端调用。
- **分类管理 (`category/list.uvue`)**：实现了分类的分页列表展示、新增/编辑抽屉、状态切换及物理删除交互。
- **文章管理 (`article/list.uvue`)**：实现了文章的分页列表、分类筛选、关键词搜索、发布状态切换及内容编辑保存。

## 变更清单

### 数据库 SQL
- `docs/sql/10_schema/cms/ml_cms_tables_v1.sql` (新增)
- `docs/sql/20_rls/cms/ml_cms_rls_v1.sql` (新增)
- `docs/sql/30_rpc/cms/` 目录下共 9 个接口 SQL 文件。

### 前端代码
- `services/admin/cmsService.uts` (新增)
- `pages/mall/admin/cms/article/list.uvue` (逻辑与 UI 重构)
- `pages/mall/admin/cms/category/list.uvue` (逻辑与 UI 重构)

## 验证说明
1. **数据库执行**：需依次执行 `10_schema` -> `20_rls` -> `30_rpc` 下的 CMS 模块脚本。
2. **功能验证**：
   - 进入文章分类：确认添加分类后，在文章管理中分类下拉列表能正确显示。
   - 文章发布：确认在文章列表切换发布开关后，状态能真实同步到数据库。
   - 筛选功能：确认分类筛选和标题搜索能过滤出正确的结果。

## 关联规范
- 遵循 `AGENT_PROJECT_SPEC.md` 规范。
- 遵循统一的 RPC 入口鉴权（admin/analytics 角色）。
