# 跨平台ERP系统 - 产品需求文档

## 概述
- **Summary**: 一个跨平台的ERP系统，以财务串通管理为核心，包含客户管理、供应商管理、分包商管理、项目管理、财务管理、施工管理、商品管理等功能，支持多币种汇率管理，实现所有收入支出既能从单个项目查看，又能从公司总账目中查看。
- **Purpose**: 解决企业在项目管理、财务管理、供应链管理等方面的效率问题，提供实时数据可视化，支持业务决策，特别强调财务数据的完整性和一致性。
- **Target Users**: 企业管理员、项目经理、财务人员、采购人员、施工人员等，初期由管理员兼任财务和采购工作。

## 目标

* 实现客户、供应商、分包商的全面管理

* 提供完整的项目管理功能，包括合同管理、付款节点设置、进度跟踪

* 实现财务管理，包括个人记账、公司账目、预支、报销、核销等功能

* 支持施工管理，包括进度跟踪、资料上传、付款申请等

* 实现多币种汇率管理，支持人民币、老挝基普、泰铢、美元

* 提供商品分类和管理功能，自动核算成本价

* 预留接口，支持后续扩展小工具

* 支持预算报价管理，跟踪项目达成率

## 非目标（超出范围）

* 不包含完整的HR管理功能

* 不包含复杂的生产制造管理

* 不包含CRM的市场营销功能

* 不包含完整的库存管理系统（后期加入进销存）

* 不包含高级BI分析功能

## 背景与上下文

* 公司目前没有专业的财务和采购人员，暂时由管理员替代

* 业务涉及跨境采购，需要多币种支持

* 项目涉及施工管理，需要进度跟踪和资料管理

* 未来计划加入进销存功能，需要预留接口

## 功能需求

* **FR-1**: 客户管理 - 支持客户信息录入、查询、编辑，显示客户过往项目记录和交易信息

* **FR-2**: 供应商管理 - 支持供应商信息录入、查询、编辑，显示供应商过往交易记录

* **FR-3**: 分包商管理 - 支持分包商信息录入、查询、编辑，显示分包商过往项目记录

* **FR-4**: 项目管理 - 支持新建项目、合同管理、付款节点设置、工期计算、项目状态跟踪

* **FR-5**: 分包管理 - 支持新建分包、选择分包商、设置结算方式、上传合同

* **FR-6**: 采购管理 - 支持新建采购、选择供应商、录入商品信息、设置付款节点、上传合同

* **FR-7**: 财务管理 - 支持员工个人记账、公司账目管理、预支、报销、核销流程

* **FR-8**: 施工管理 - 支持施工过程资料上传、进度跟踪、付款申请

* **FR-9**: 汇率管理 - 支持四种币种（人民币、老挝基普、泰铢、美元）的汇率设置和自动换算

* **FR-10**: 商品管理 - 支持商品分类、商品信息管理、成本价自动核算

* **FR-11**: 预算报价管理 - 支持预算报价创建、修改、模板管理、项目达成率跟踪

## 非功能需求

* **NFR-1**: 跨平台 - 支持Web端、移动端访问

* **NFR-2**: 性能 - 系统响应时间不超过2秒

* **NFR-3**: 安全 - 数据加密存储，角色权限控制

* **NFR-4**: 可扩展性 - 预留接口，支持后续功能扩展

* **NFR-5**: 易用性 - 界面友好，操作简单

## 约束
- **技术**: 采用PWA技术实现跨平台，支持Web端和移动端访问
- **业务**: 初期由管理员兼任财务和采购工作
- **依赖**: 后续需要接入进销存系统

## 假设

* 系统用户具备基本的计算机操作能力

* 网络环境稳定，支持系统正常运行

* 后续会有专业的财务和采购人员加入

## 验收标准

### AC-1: 客户管理功能

* **Given**: 系统已登录，用户具有客户管理权限

* **When**: 用户新建客户信息，录入客户详情

* **Then**: 系统保存客户信息，显示客户列表，支持客户详情查看，包括过往项目记录和交易信息

* **Verification**: `programmatic`

### AC-2: 项目管理功能

* **Given**: 系统已登录，用户具有项目管理权限

* **When**: 用户新建项目，录入合同信息、付款节点、工期要求

* **Then**: 系统保存项目信息，自动计算结束日期或天数，显示项目详情

* **Verification**: `programmatic`

### AC-3: 财务管理功能

* **Given**: 系统已登录，用户具有财务管理权限

* **When**: 用户提交预支、报销、核销申请

* **Then**: 系统按照流程进行审核、打款，自动更新财务数据

* **Verification**: `programmatic`

### AC-4: 施工管理功能

* **Given**: 系统已登录，用户具有施工管理权限

* **When**: 员工上传施工过程资料，申请付款

* **Then**: 系统保存资料，更新项目状态，处理付款申请

* **Verification**: `programmatic`

### AC-5: 汇率管理功能

* **Given**: 系统已登录，用户具有汇率管理权限

* **When**: 用户设置汇率，录入多币种金额

* **Then**: 系统自动换算等价人民币金额，显示对应币种符号和千分位

* **Verification**: `programmatic`

### AC-6: 商品管理功能

* **Given**: 系统已登录，用户具有商品管理权限

* **When**: 用户录入商品信息，记录进货费用

* **Then**: 系统自动核算成本价，更新商品信息

* **Verification**: `programmatic`

### AC-7: 预算报价管理功能

* **Given**: 系统已登录，用户具有预算报价权限

* **When**: 用户创建预算报价，修改报价，跟踪项目达成率

* **Then**: 系统保存报价信息，支持模板管理，显示项目达成率

* **Verification**: `programmatic`

## 未解决问题

* [ ] 系统的具体技术栈选择

* [ ] 数据备份和恢复策略

* [ ] 系统部署方式和环境要求

* [ ] 具体的权限管理方案

* [ ] 与后续进销存系统的集成方式

