# PRD文档更新总结 - 基于Product表的统一空间管理

## 更新概述

根据系统架构优化，所有PRD文档中的"空间管理"相关内容已更新为"空间设计产品管理"，基于Product表实现统一的空间设计产品管理。

## 核心变更

### 1. 术语变更

| 原术语 | 新术语 | 说明 |
|--------|--------|------|
| 空间管理 | 空间设计产品管理 | 基于Product表的产品化管理 |
| 空间 | 空间设计产品 | 每个Product代表一个空间的设计产品 |
| 空间分配 | 产品分配 | 设计师分配负责的空间设计产品 |
| 空间报价 | 产品报价 | 每个空间设计产品的独立报价 |
| 空间文件 | 产品文件 | 通过ProjectFile.fileCategory分类管理 |

### 2. 数据结构变更

#### 新：Product表统一结构
```typescript
// 新的Product表统一结构
interface Product {
  objectId: string;
  project: Pointer<Project>;
  profile: Pointer<Profile>;  // 负责设计师
  productName: string;        // "李总主卧设计"
  productType: string;        // "bedroom"
  space: {                   // 空间信息
    spaceName: string;
    area: number;
    dimensions: Object;
    features: string[];
  };
  quotation: {               // 产品报价
    price: number;
    currency: string;
    breakdown: Object;
  };
  requirements: {            // 设计需求
    colorRequirement: Object;
    materialRequirement: Object;
    specificRequirements: string[];
  };
  reviews: Array;           // 产品评价
}
```

### 3. 文件管理简化

#### 新：ProjectFile分类管理
```typescript
// 简化的ProjectFile分类管理
interface ProjectFile {
  project: Pointer<Project>;
  product: Pointer<Product>;     // 关联空间设计产品
  fileCategory: string;          // 文件分类
  // fileCategory 枚举值：
  // "quotation" - 报价文件
  // "panorama" - 全景图文件
  // "delivery" - 交付物文件
  // "reference" - 参考文件
  // "requirement" - 需求文件
}
```

## 各PRD文档主要更新内容

### 1. 项目-订单分配.md

**变更前**：
- 多空间项目识别与管理
- 空间分配系统
- 空间报价策略

**变更后**：
- **多空间产品设计管理**：基于Product表识别和管理
- **产品分配系统**：设计师直接关联Product.profile
- **产品报价策略**：每个Product独立的quotation字段

### 2. 项目-交付执行.md

**变更前**：
- 多空间交付协调
- 空间进度跟踪
- 空间交付物管理

**变更后**：
- **多产品设计交付协调**：通过Product表统一管理
- **产品进度跟踪**：Product.status + stage字段
- **产品交付物管理**：Product.fileUrl + ProjectFile分类

### 3. 项目-售后归档.md

**变更前**：
- 多空间全景图合成
- 空间评价收集
- 跨空间投诉处理

**变更后**：
- **多产品全景图管理**：通过ProjectFile.fileCategory="panorama"
- **产品评价收集**：Product.reviews字段存储评价数据
- **产品级反馈处理**：ProjectFeedback.product关联具体产品

### 4. 项目-空间任务逻辑.md

**变更前**：
- 空间任务分配逻辑
- 空间依赖管理
- 跨空间协作流程

**变更后**：
- **产品设计任务分配**：基于Product.profile直接分配
- **产品间依赖管理**：通过Product表metadata字段管理
- **产品协作流程**：简化为产品级协作管理

## 技术实现示例

### 1. 创建空间设计产品
```typescript
const Product = Parse.Object.extend("Product");
const product = new Product();
product.set("project", project.toPointer());
product.set("profile", designer.toPointer());  // 直接分配设计师
product.set("productName", "李总主卧设计");
product.set("productType", "bedroom");

// 设置空间信息
product.set("space", {
  spaceName: "主卧",
  area: 18.5,
  dimensions: { length: 4.5, width: 4.1, height: 2.8 }
});

// 设置产品报价
product.set("quotation", {
  price: 35000,
  breakdown: { design: 15000, modeling: 10000, rendering: 8000 }
});

await product.save();
```

### 2. 文件分类管理
```typescript
// 上传全景图文件
const panoramaFile = new ProjectFile();
panoramaFile.set("product", product.toPointer());
panoramaFile.set("fileCategory", "panorama");
panoramaFile.set("fileName", "主卧720全景图.jpg");
await panoramaFile.save();

// 上传报价文件
const quotationFile = new ProjectFile();
quotationFile.set("product", product.toPointer());
quotationFile.set("fileCategory", "quotation");
quotationFile.set("fileName", "主卧设计报价单.pdf");
await quotationFile.save();
```

### 3. 查询空间设计产品
```typescript
// 查询项目的所有空间设计产品
const productQuery = new Parse.Query("Product");
productQuery.equalTo("project", projectId);
productQuery.include("profile");  // 包含设计师信息
const products = await productQuery.find();

// 查询设计师负责的产品
const designerQuery = new Parse.Query("Product");
designerQuery.equalTo("profile", designerId);
designerQuery.equalTo("status", "in_progress");
const myProducts = await designerQuery.find();
```

## 业务流程优化

### 1. 订单分配流程
```
客户咨询 → 识别空间类型 → 创建空间设计产品(Product) → 分配设计师(Product.profile) → 确定产品报价(Product.quotation)
```

### 2. 交付执行流程
```
产品设计 → 文件上传(ProjectFile分类) → 进度更新(Product.status) → 交付物管理(Product.fileUrl)
```

### 3. 售后归档流程
```
项目完成 → 全景图收集(ProjectFile.panorama) → 产品评价(Product.reviews) → 文件归档
```

## 优势总结

### 1. 架构简化
- **表数量减少**：从15个空间相关表简化为1个Product表
- **查询效率提升**：单表查询替代复杂JOIN操作
- **维护成本降低**：减少表间关联关系

### 2. 业务语义清晰
- **产品化思维**：每个空间都是独立的设计产品
- **设计师直连**：Product.profile直接关联负责设计师
- **文件分类管理**：通过fileCategory清晰分类不同类型文件

### 3. 开发效率提升
- **统一接口**：所有空间相关操作都通过Product表
- **简化逻辑**：减少了复杂的多表操作逻辑
- **扩展性强**：Object字段支持灵活的功能扩展

## 迁移指南

### 数据迁移步骤
2. **文件分类标记**：为现有ProjectFile添加fileCategory分类
3. **删除冗余表**：清理不再需要的空间相关表
4. **更新业务逻辑**：调整代码以适应新的Product表结构

### 兼容性考虑
- **API接口调整**：更新相关API接口以支持Product表结构
- **前端界面更新**：调整UI组件以显示产品设计信息
- **业务流程适配**：确保业务流程与新产品化管理一致

---

**更新日期**: 2025-10-20
**版本**: v3.0 - Product表统一空间管理
**维护者**: YSS Development Team