Files
akmon/doc_mall/README.md
2026-01-20 08:04:15 +08:00

205 lines
8.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 商城系统文档目录
## 📁 目录结构
```
doc_mall/
├── README.md # 本文件 - 文档目录索引
├── user_reuse_summary.md # 用户表复用方案总结
├── analysis/ # 分析文档
│ └── user_compatibility_analysis.md # 用户表兼容性详细分析
├── database/ # 数据库相关
│ ├── complete_mall_database.sql # 🎯 完整商城数据库(推荐使用)
│ ├── database_creation_report.md # 📊 数据库创建完成报告
│ ├── database_syntax_fix_report.md # 数据库语法修正报告
│ ├── user_compatibility_implementation.sql # 用户兼容性实施脚本
│ ├── product_database.sql # 商品数据库设计脚本
│ ├── mock_data_insert.sql # 模拟数据插入脚本
│ ├── mock_data_documentation.md # 模拟数据说明文档
│ ├── deployment_guide.md # 快速部署指南
│ ├── validation_test.sql # 数据库验证测试脚本
│ └── complete_deployment_guide.md # 完整部署与测试指南
└── reports/ # 生成报告
├── system_generation_report.md # 系统生成报告
├── detail_pages_report.md # 详情页生成报告
└── profile_pages_report.md # 个人中心页面报告
```
## 📋 文档说明
### 核心文档
#### 🎯 [用户表复用方案总结](./user_reuse_summary.md)
- **问题**: 商城系统是否可以复用运动训练平台的 `ak_users` 用户表?
- **结论**: ✅ 可以复用,采用混合扩展方案
- **方案**: 保持 `ak_users` 主表不变,增加商城扩展表
- **优势**: 单点登录、数据一致性、业务隔离
#### 🔍 [用户兼容性详细分析](./analysis/user_compatibility_analysis.md)
- 字段级兼容性对比分析
- 三种方案对比(共用/独立/混合)
- 风险评估和解决方案
- 具体实施步骤和建议
### 数据库脚本
#### 🎯 [完整商城数据库](./database/complete_mall_database.sql) **← 推荐使用**
- **全新设计**: 使用 `ml_` 前缀的独立商城数据库
- **复用优化**: 仅复用 `ak_users` 用户主表
- **功能完整**: 21张表覆盖所有商城功能
- **Supabase优化**: 包含RLS策略、触发器、函数、视图
- **性能优化**: 完整索引设计和查询优化
#### 📊 [数据库创建报告](./database/database_creation_report.md)
- 详细的数据库架构说明
- 21张表的功能分析和设计理念
- 索引、触发器、函数、视图的完整清单
- 部署步骤和性能优化建议
#### 🛠️ [数据库语法修正报告](./database/database_syntax_fix_report.md)
- 修正了RLS策略的语法错误
- 提供了修正前后的对比
- 包含常见问题解答和修正建议
#### 🔧 [类型错误修正报告](./database/type_error_fix_report.md)
- **问题分析**: auth_id 字段 UUID 类型错误的详细分析
- **修正措施**: 完整的问题解决方案和预防措施
- **验证工具**: 新增的验证脚本和部署指南
- **流程优化**: 改进的部署流程和错误监控建议
#### 🎯 [SEO 优化实施报告](./database/seo_optimization_report.md)
- **优化成果**: CID 自增字段的完整实施效果
- **性能提升**: URL 结构、查询性能、存储空间的全面优化
- **技术细节**: 索引、视图、函数的具体实现
- **收益分析**: SEO 表现、用户体验、开发效率的预期提升
#### 💾 [用户兼容性实施脚本](./database/user_compatibility_implementation.sql)
- 商城用户扩展表 `mall_user_profiles`
- 用户地址表 `ak_user_addresses`
- 用户收藏、搜索、浏览历史表
- 触发器、索引、RLS策略
- 数据迁移和权限设置
#### 🛍️ [商品数据库设计脚本](./database/product_database.sql)
- 完整的商品管理数据库设计
- 商品、SKU、分类、品牌、规格等表
- 支持多规格、库存管理、营销活动
- 推荐使用独立商品表,不复用 `ak_contents`
#### 🔍 [数据库验证测试脚本](./database/validation_test.sql)
- **环境检查**: 验证 PostgreSQL 扩展和依赖项
- **表结构验证**: 检查 `ak_users` 表和商城表的完整性
- **语法测试**: 验证 RLS 策略和 UUID 类型的正确性
- **数据统计**: 检查模拟数据的插入情况
#### 📚 [完整部署与测试指南](./database/complete_deployment_guide.md)
- **部署前检查**: 详细的环境要求和准备工作
- **分步骤部署**: PostgreSQL 和 Supabase 的完整部署流程
- **验证测试**: 部署后的功能验证和性能检查
- **问题解决**: 常见错误的详细解决方案和预防措施
- **维护建议**: 数据维护、备份和性能优化指导
#### 🧪 [模拟数据插入脚本](./database/mock_data_insert.sql)
- **测试专用**: 为开发和测试生成完整的模拟数据
- **数据丰富**: 包含8个测试用户、6个商品、多个订单等
- **场景完整**: 涵盖购物车、优惠券、评价、配送等业务场景
- **依赖**: 需要先执行 `complete_mall_database.sql`
#### 📋 [模拟数据说明文档](./database/mock_data_documentation.md)
- **详细说明**: 所有测试数据的详细说明和使用指南
- **用户角色**: 8个测试用户的账号信息和权限说明
- **测试场景**: 完整的业务流程测试建议
- **数据维护**: 数据更新和维护的最佳实践
#### 🚀 [快速部署指南](./database/deployment_guide.md)
- **部署步骤**: PostgreSQL 和 Supabase 的详细部署指南
- **执行顺序**: 脚本执行的正确顺序和注意事项
- **测试验证**: 部署后的功能验证和性能测试
- **问题排查**: 常见问题的解决方案和检查清单
#### 🔍 [SEO 优化指南](./database/seo_optimization_guide.md)
- **CID 自增字段**: 为主要表添加 SEO 友好的自增 ID
- **URL 结构优化**: 提供简洁、语义化的 URL 路径
- **函数工具**: 完整的 SEO 相关查询和工具函数
- **前端集成**: Vue Router 配置和 API 调用示例
- **性能监控**: 索引优化和查询性能监控指导
### 生成报告
#### 📊 [系统生成报告](./reports/system_generation_report.md)
- 6个角色端首页代码生成完成
- 类型定义和UTS Android兼容性说明
- 页面功能模块和技术特点总结
#### 📄 [详情页生成报告](./reports/detail_pages_report.md)
- 商品详情、订单详情、店铺详情等页面
- 具体功能实现和代码结构
- UTS Android语法规范遵循情况
#### 👤 [个人中心页面报告](./reports/profile_pages_report.md)
- 6个角色端个人中心页面生成
- 用户信息管理、设置、统计等功能
- 响应式设计和现代UI实现
## 🔗 相关文件
### 类型定义
- `../types/mall-types.uts` - 商城系统完整类型定义
### 页面代码
- `../pages/mall/` - 所有角色端页面代码
- `../pages/mall/pages-config.json` - 页面路由配置
### 订阅功能(本次实现)
- 数据库脚本:`./create_mall_subscription_tables.sql`
- RLS/权限:`./subscription_rls_policies.sql`
- 消费端页面:
- `../pages/mall/consumer/subscription/plan-list.uvue`
- `../pages/mall/consumer/subscription/plan-detail.uvue`
- `../pages/mall/consumer/subscription/subscribe-checkout.uvue`
- `../pages/mall/consumer/subscription/my-subscriptions.uvue`
- 管理端页面:
- `../pages/mall/admin/subscription/plan-management.uvue`
- `../pages/mall/admin/subscription/user-subscriptions.uvue`
### 业务需求
- `../mall.md` - 原始业务需求文档
## 🎯 核心结论
### 🆕 最新推荐方案
**使用完整商城数据库设计**
- 使用 `complete_mall_database.sql` 创建独立商城系统
- 仅复用 `ak_users` 用户主表,其他表全部独立
- 包含 20+ 张表,覆盖用户、商品、订单、营销、配送等全部功能
- 优化的 Supabase 兼容设计RLS、触发器、函数、视图
### 用户表复用方案
**推荐采用混合扩展方案**
- 保持 `ak_users` 表作为用户主表
- 创建 `ml_user_profiles` 商城扩展表
- 新建 `ml_user_addresses` 地址管理表
- 实现业务数据隔离的同时保持账号统一
### 商品表设计方案
**不推荐复用 `ak_contents` 表**
- 语义不匹配、字段冲突、业务逻辑差异
- 强烈建议使用独立的商品数据库设计
### 技术实现标准
**严格遵循UTS Android兼容性**
- 全部使用 `type` 声明,避免 `interface`
- 数组类型使用 `Array<Type>` 格式
-`undefined` 类型,变量类型明确
- JSON对象使用 `UTSJSONObject`
## 📞 支持
本文档集涵盖了商城系统与运动训练平台用户表复用的完整分析和实施方案。如需了解更多技术细节,请查看相应的具体文档文件。
---
**生成时间**: 2025年7月11日
**版本**: v1.0
**状态**: ✅ 已完成分析和实施方案