# 用户/客户资产后端任务

## 任务列表

| Task ID  | 闭环关联      | 任务描述     | 输入         | 输出   | 触发条件 | 状态          | 优先级 | 依赖       | 预计耗时 | 负责人          | 完成时间 |
| -------- | --------- | -------- | ---------- | ---- | ---- | ----------- | --- | -------- | ---- | ------------ | -------- |
| BE-UA001 | 用户/客户资产闭环 | 用户资产计算接口 | 用户ID       | 资产数据 | 前端请求 | ✅ completed | P1  | -        | 10h  | AI-Backend-7 | 2026-03-20 |
| BE-UA002 | 用户/客户资产闭环 | 积分管理引擎   | 用户ID, 积分操作 | 积分记录 | 前端提交 | ✅ completed | P1  | BE-UA001 | 10h  | AI-Backend-7 | 2026-03-20 |
| BE-UA003 | 用户/客户资产闭环 | 会员等级系统   | 用户ID, 等级规则 | 等级信息 | 定时任务 | ✅ completed | P1  | BE-UA001 | 12h  | AI-Backend-7 | 2026-03-20 |

## 相关闭环

- 用户/客户资产闭环

## 依赖关系

```
BE-UA001 ─┬─► BE-UA002
          └─► BE-UA003
```

## 数据库表结构

### cf_user_asset
| 字段 | 类型 | 说明 |
| ---- | ---- | ---- |
| id | string | 资产记录ID |
| tenant_id | string | 租户ID |
| user_id | string | 用户ID |
| total_assets | decimal(10,2) | 总资产 |
| available_balance | decimal(10,2) | 可用余额 |
| frozen_balance | decimal(10,2) | 冻结余额 |
| last_updated | datetime | 最后更新时间 |
| created_at | datetime | 创建时间 |

### cf_user_points
| 字段 | 类型 | 说明 |
| ---- | ---- | ---- |
| id | string | 积分记录ID |
| tenant_id | string | 租户ID |
| user_id | string | 用户ID |
| points | integer | 积分数量 |
| type | enum | EARNED/USED/EXPIRED |
| reason | string | 积分变动原因 |
| created_at | datetime | 创建时间 |

### cf_user_membership
| 字段 | 类型 | 说明 |
| ---- | ---- | ---- |
| id | string | 会员记录ID |
| tenant_id | string | 租户ID |
| user_id | string | 用户ID |
| level | string | 会员等级 |
| points_required | integer | 所需积分 |
| benefits | json | 会员权益 |
| effective_date | datetime | 生效日期 |
| expiry_date | datetime | 到期日期 |
| created_at | datetime | 创建时间 |
| updated_at | datetime | 更新时间 |

## API端点

### 用户资产管理API
- `GET /api/user/assets/:userId` - 获取用户资产信息
- `POST /api/user/assets/calculate` - 计算用户资产
- `GET /api/user/points/:userId` - 获取用户积分
- `POST /api/user/points` - 操作用户积分
- `GET /api/user/membership/:userId` - 获取用户会员等级
- `POST /api/user/membership/update` - 更新会员等级

## 验收标准

- [ ] 用户资产计算接口能正确计算用户资产
- [ ] 积分管理引擎能准确管理用户积分
- [ ] 会员等级系统能正确评估和更新会员等级
- [ ] 所有接口响应时间不超过1秒
- [ ] 数据一致性得到保证

## 测试要求

- [ ] 单元测试：覆盖资产计算和积分管理逻辑
- [ ] 集成测试：验证与用户系统的交互
- [ ] 端到端测试：模拟完整的资产管理流程
- [ ] 边界测试：测试异常数据和边界情况

## 风险提示

- **风险点1**：资产计算错误 - 应对措施：实现双重校验和审计机制
- **风险点2**：积分过期管理 - 应对措施：实现自动过期处理和提醒机制
- **风险点3**：会员等级计算不准确 - 应对措施：建立等级规则引擎和定期更新机制

## 性能要求

- 响应时间：平均响应时间 < 1秒
- 并发处理：支持150个并发请求
- 数据处理：能处理10000条资产记录/小时

## 安全要求

- 权限控制：只有用户本人和ADMIN角色可访问用户资产数据
- 数据加密：敏感资产数据加密存储
- 审计日志：所有资产操作需记录详细日志
- 输入验证：严格验证所有资产相关输入