181 lines
5.1 KiB
Markdown
181 lines
5.1 KiB
Markdown
# 📦 doc_mall 迁移工作总览
|
||
|
||
## ✅ 已完成的准备工作
|
||
|
||
### 📄 迁移文档
|
||
- ✅ **MIGRATION_GUIDE.md** - 完整的迁移指南(543行)
|
||
- ✅ **MIGRATION_CHECKLIST.md** - 详细的迁移检查清单(255行)
|
||
- ✅ **QUICK_START_MIGRATION.md** - 快速开始指南
|
||
- ✅ **MIGRATION_SUMMARY.md** - 本文件,迁移工作总览
|
||
|
||
### 🔧 迁移工具
|
||
- ✅ **migrate.ps1** - Windows PowerShell 迁移脚本(191行)
|
||
- ✅ **migrate.sh** - Linux/Mac Bash 迁移脚本(179行)
|
||
|
||
### 📊 迁移统计
|
||
|
||
#### 文档和数据库脚本 (`doc_mall/`)
|
||
- **文件数量**: 约 48 个文件
|
||
- **主要目录**:
|
||
- `analysis/` - 分析文档
|
||
- `database/` - 数据库脚本(15+ SQL文件,12+ MD文档)
|
||
- `reports/` - 生成报告
|
||
|
||
#### 前端页面代码 (`pages/mall/`)
|
||
- **文件数量**: 约 45 个文件
|
||
- **主要目录**:
|
||
- `admin/` - 管理端页面(5个文件)
|
||
- `analytics/` - 数据分析端(3个文件)
|
||
- `consumer/` - 消费者端(9个文件,含订阅功能)
|
||
- `delivery/` - 配送端(3个文件)
|
||
- `merchant/` - 商家端(3个文件)
|
||
- `service/` - 客服端(3个文件)
|
||
- `nfc/` - NFC支付相关(8个文件,可选)
|
||
|
||
#### 类型定义文件
|
||
- ✅ `types/mall-types.uts` - 商城系统完整类型定义(必须)
|
||
|
||
---
|
||
|
||
## 🚀 执行迁移
|
||
|
||
### 方式 1: 使用自动化脚本(推荐)
|
||
|
||
#### Windows 系统
|
||
```powershell
|
||
# 1. 切换到项目目录
|
||
cd D:\datas\hfkj\akmon
|
||
|
||
# 2. 预览迁移(推荐先执行)
|
||
.\doc_mall\migrate.ps1 -TargetPath "D:\path\to\new-repo" -DryRun
|
||
|
||
# 3. 执行实际迁移
|
||
.\doc_mall\migrate.ps1 -TargetPath "D:\path\to\new-repo"
|
||
|
||
# 4. 如果需要包含 Supabase 组件
|
||
.\doc_mall\migrate.ps1 -TargetPath "D:\path\to\new-repo" -CopySupabaseComponents
|
||
|
||
# 5. 如果需要包含工具函数
|
||
.\doc_mall\migrate.ps1 -TargetPath "D:\path\to\new-repo" -CopyUtils
|
||
```
|
||
|
||
#### Linux/Mac 系统
|
||
```bash
|
||
# 1. 切换到项目目录
|
||
cd /path/to/akmon
|
||
|
||
# 2. 添加执行权限
|
||
chmod +x doc_mall/migrate.sh
|
||
|
||
# 3. 预览迁移
|
||
./doc_mall/migrate.sh /path/to/new-repo --dry-run
|
||
|
||
# 4. 执行实际迁移
|
||
./doc_mall/migrate.sh /path/to/new-repo
|
||
|
||
# 5. 包含可选组件
|
||
./doc_mall/migrate.sh /path/to/new-repo --copy-supabase --copy-utils
|
||
```
|
||
|
||
### 方式 2: 手动迁移
|
||
|
||
如果不想使用脚本,可以手动执行以下步骤:
|
||
|
||
```powershell
|
||
# 1. 创建目标目录结构
|
||
New-Item -ItemType Directory -Path "D:\path\to\new-repo\doc_mall\analysis" -Force
|
||
New-Item -ItemType Directory -Path "D:\path\to\new-repo\doc_mall\database" -Force
|
||
New-Item -ItemType Directory -Path "D:\path\to\new-repo\doc_mall\reports" -Force
|
||
New-Item -ItemType Directory -Path "D:\path\to\new-repo\pages\mall" -Force
|
||
New-Item -ItemType Directory -Path "D:\path\to\new-repo\types" -Force
|
||
|
||
# 2. 复制文件
|
||
Copy-Item -Path "doc_mall\*" -Destination "D:\path\to\new-repo\doc_mall\" -Recurse -Force
|
||
Copy-Item -Path "pages\mall\*" -Destination "D:\path\to\new-repo\pages\mall\" -Recurse -Force
|
||
Copy-Item -Path "types\mall-types.uts" -Destination "D:\path\to\new-repo\types\mall-types.uts" -Force
|
||
```
|
||
|
||
---
|
||
|
||
## 📋 迁移后必做事项
|
||
|
||
### 1. 验证文件完整性
|
||
|
||
使用检查清单验证所有文件已迁移:
|
||
- 打开 `MIGRATION_CHECKLIST.md`
|
||
- 逐项检查文件是否存在
|
||
- 确认文件数量和大小
|
||
|
||
### 2. 配置 Supabase
|
||
|
||
```typescript
|
||
// 创建 config/supabase.config.ts
|
||
export const supabaseConfig = {
|
||
url: 'https://your-project.supabase.co',
|
||
anonKey: 'your-anon-key',
|
||
}
|
||
```
|
||
|
||
### 3. 执行数据库脚本
|
||
|
||
按照 `database/complete_deployment_guide.md` 执行:
|
||
1. 执行 `complete_mall_database.sql` - 创建数据库结构
|
||
2. 执行 `subscription_rls_policies.sql` - RLS策略
|
||
3. 执行 `subscription_guard_trigger.sql` - 触发器
|
||
4. 执行 `validation_test.sql` - 验证数据库
|
||
|
||
### 4. 更新代码路径
|
||
|
||
检查并更新以下导入路径:
|
||
- `@/types/mall-types.uts`
|
||
- `@/components/supadb/*`
|
||
- `@/utils/*`(如需要)
|
||
|
||
### 5. 测试验证
|
||
|
||
- [ ] 项目可以编译
|
||
- [ ] 页面可以加载
|
||
- [ ] 数据库连接正常
|
||
- [ ] 核心功能测试通过
|
||
|
||
---
|
||
|
||
## 📚 文档结构
|
||
|
||
```
|
||
doc_mall/
|
||
├── MIGRATION_GUIDE.md # 详细迁移指南 ⭐
|
||
├── MIGRATION_CHECKLIST.md # 迁移检查清单 ⭐
|
||
├── QUICK_START_MIGRATION.md # 快速开始 ⭐
|
||
├── MIGRATION_SUMMARY.md # 本文档
|
||
├── migrate.ps1 # PowerShell 脚本 ⭐
|
||
├── migrate.sh # Bash 脚本 ⭐
|
||
└── [其他原有文档和脚本]
|
||
```
|
||
|
||
---
|
||
|
||
## 🎯 下一步
|
||
|
||
1. **确定目标路径**:决定新仓库的位置
|
||
2. **执行预览**:使用 `-DryRun` 参数预览迁移
|
||
3. **执行迁移**:运行迁移脚本
|
||
4. **验证文件**:使用检查清单验证
|
||
5. **配置环境**:设置 Supabase 和数据库
|
||
6. **测试验证**:确保一切正常工作
|
||
|
||
---
|
||
|
||
## 💡 提示
|
||
|
||
- **预览模式**:强烈建议先使用 `-DryRun` 预览,确认无误后再执行
|
||
- **备份重要数据**:迁移前备份重要文件
|
||
- **分批迁移**:如果文件很多,可以分批测试迁移
|
||
- **记录问题**:在 `MIGRATION_CHECKLIST.md` 中记录遇到的问题
|
||
|
||
---
|
||
|
||
**创建时间**: 2025年1月
|
||
**版本**: v1.0
|
||
**状态**: ✅ 迁移工具已准备就绪,可以开始迁移
|