- 重构sys模块架构,严格按admin/api/core分层 - 对齐所有sys实体与数据库表结构 - 实现完整的adminapi控制器,匹配PHP/Java契约 - 修复依赖注入问题,确保服务正确注册 - 添加自动迁移工具和契约验证 - 完善多租户支持和审计功能 - 统一命名规范,与PHP业务逻辑保持一致
262 lines
10 KiB
Markdown
262 lines
10 KiB
Markdown
# PHP迁移完整性检查报告
|
||
|
||
生成时间: 2025-09-16T06:14:25.046Z
|
||
|
||
## 📊 总体统计
|
||
|
||
- **PHP模块总数**: 25
|
||
- **NestJS模块总数**: 48
|
||
- **迁移完整性**: 18%
|
||
- **缺失模块数**: 0
|
||
- **缺失控制器数**: 110
|
||
- **缺失方法数**: 7
|
||
|
||
## ❌ 缺失模块列表
|
||
|
||
✅ 所有模块已迁移
|
||
|
||
## ❌ 缺失控制器列表
|
||
|
||
- **addon/adminapi**: Addon (20 个方法)
|
||
- **addon/adminapi**: AddonDevelop (9 个方法)
|
||
- **addon/adminapi**: App (1 个方法)
|
||
- **addon/adminapi**: Backup (9 个方法)
|
||
- **addon/adminapi**: Upgrade (9 个方法)
|
||
- **addon/api**: Addon (1 个方法)
|
||
- **aliapp/adminapi**: Config (3 个方法)
|
||
- **applet/adminapi**: SiteVersion (4 个方法)
|
||
- **applet/adminapi**: Version (7 个方法)
|
||
- **applet/adminapi**: VersionDownload (1 个方法)
|
||
- **channel/adminapi**: H5 (2 个方法)
|
||
- **channel/adminapi**: Pc (2 个方法)
|
||
- **dict/adminapi**: Dict (8 个方法)
|
||
- **diy/adminapi**: Config (3 个方法)
|
||
- **diy/adminapi**: Diy (23 个方法)
|
||
- **diy/adminapi**: DiyForm (24 个方法)
|
||
- **diy/adminapi**: DiyRoute (8 个方法)
|
||
- **diy/api**: Diy (4 个方法)
|
||
- **diy/api**: DiyForm (6 个方法)
|
||
- **generator/adminapi**: Generator (12 个方法)
|
||
- **home/adminapi**: Site (6 个方法)
|
||
- **login/adminapi**: Captcha (3 个方法)
|
||
- **login/adminapi**: Config (2 个方法)
|
||
- **login/adminapi**: Login (3 个方法)
|
||
- **login/api**: Config (1 个方法)
|
||
- **login/api**: Login (6 个方法)
|
||
- **login/api**: Register (2 个方法)
|
||
- **member/adminapi**: Account (13 个方法)
|
||
- **member/adminapi**: Address (4 个方法)
|
||
- **member/adminapi**: CashOut (10 个方法)
|
||
- **member/adminapi**: Config (10 个方法)
|
||
- **member/adminapi**: Member (20 个方法)
|
||
- **member/adminapi**: MemberLabel (6 个方法)
|
||
- **member/adminapi**: MemberLevel (6 个方法)
|
||
- **member/adminapi**: MemberSign (4 个方法)
|
||
- **member/api**: Account (8 个方法)
|
||
- **member/api**: Address (5 个方法)
|
||
- **member/api**: CashOutAccount (6 个方法)
|
||
- **member/api**: Level (1 个方法)
|
||
- **member/api**: Member (8 个方法)
|
||
- **member/api**: MemberCashOut (7 个方法)
|
||
- **member/api**: MemberSign (6 个方法)
|
||
- **niucloud/adminapi**: Cloud (8 个方法)
|
||
- **niucloud/adminapi**: Module (6 个方法)
|
||
- **notice/adminapi**: NiuSms (28 个方法)
|
||
- **notice/adminapi**: Notice (7 个方法)
|
||
- **notice/adminapi**: NoticeLog (2 个方法)
|
||
- **notice/adminapi**: SmsLog (2 个方法)
|
||
- **pay/adminapi**: Pay (8 个方法)
|
||
- **pay/adminapi**: PayChannel (6 个方法)
|
||
- **pay/adminapi**: PayRefund (5 个方法)
|
||
- **pay/adminapi**: Transfer (3 个方法)
|
||
- **pay/api**: Pay (6 个方法)
|
||
- **pay/api**: Transfer (1 个方法)
|
||
- **poster/adminapi**: Poster (1 个方法)
|
||
- **poster/api**: Poster (1 个方法)
|
||
- **site/adminapi**: Site (17 个方法)
|
||
- **site/adminapi**: SiteAccount (4 个方法)
|
||
- **site/adminapi**: SiteGroup (7 个方法)
|
||
- **site/adminapi**: User (8 个方法)
|
||
- **site/adminapi**: UserLog (3 个方法)
|
||
- **stat/adminapi**: SiteStat (1 个方法)
|
||
- **stat/adminapi**: Stat (1 个方法)
|
||
- **sys/adminapi**: Agreement (3 个方法)
|
||
- **sys/adminapi**: App (1 个方法)
|
||
- **sys/adminapi**: Area (5 个方法)
|
||
- **sys/adminapi**: Attachment (9 个方法)
|
||
- **sys/adminapi**: Channel (1 个方法)
|
||
- **sys/adminapi**: Common (2 个方法)
|
||
- **sys/adminapi**: Config (14 个方法)
|
||
- **sys/adminapi**: Export (6 个方法)
|
||
- **sys/adminapi**: Menu (11 个方法)
|
||
- **sys/adminapi**: Poster (12 个方法)
|
||
- **sys/adminapi**: Printer (18 个方法)
|
||
- **sys/adminapi**: Role (7 个方法)
|
||
- **sys/adminapi**: Schedule (11 个方法)
|
||
- **sys/adminapi**: ScheduleLog (3 个方法)
|
||
- **sys/adminapi**: System (9 个方法)
|
||
- **sys/adminapi**: Ueditor (2 个方法)
|
||
- **sys/api**: Area (4 个方法)
|
||
- **sys/api**: Config (7 个方法)
|
||
- **sys/api**: Index (2 个方法)
|
||
- **sys/api**: Scan (1 个方法)
|
||
- **sys/api**: Task (2 个方法)
|
||
- **sys/api**: Verify (6 个方法)
|
||
- **upload/adminapi**: Storage (3 个方法)
|
||
- **upload/adminapi**: Upload (5 个方法)
|
||
- **upload/api**: Upload (4 个方法)
|
||
- **user/adminapi**: User (13 个方法)
|
||
- **verify/adminapi**: Verifier (7 个方法)
|
||
- **verify/adminapi**: Verify (2 个方法)
|
||
- **weapp/adminapi**: Config (5 个方法)
|
||
- **weapp/adminapi**: Delivery (1 个方法)
|
||
- **weapp/adminapi**: Package (2 个方法)
|
||
- **weapp/adminapi**: Template (2 个方法)
|
||
- **weapp/adminapi**: Version (6 个方法)
|
||
- **weapp/api**: Serve (1 个方法)
|
||
- **weapp/api**: Weapp (6 个方法)
|
||
- **wechat/adminapi**: Config (3 个方法)
|
||
- **wechat/adminapi**: Media (4 个方法)
|
||
- **wechat/adminapi**: Menu (2 个方法)
|
||
- **wechat/adminapi**: Reply (9 个方法)
|
||
- **wechat/adminapi**: Template (2 个方法)
|
||
- **wechat/api**: Serve (1 个方法)
|
||
- **wechat/api**: Wechat (10 个方法)
|
||
- **wxoplatform/adminapi**: Config (3 个方法)
|
||
- **wxoplatform/adminapi**: Oplatform (3 个方法)
|
||
- **wxoplatform/adminapi**: Server (2 个方法)
|
||
- **wxoplatform/adminapi**: WeappVersion (7 个方法)
|
||
- **agreement/api**: Agreement (1 个方法)
|
||
|
||
## ❌ 缺失方法列表
|
||
|
||
- **auth/Auth**: authMenuList()
|
||
- **auth/Auth**: getAuthAddonList()
|
||
- **auth/Auth**: get()
|
||
- **auth/Auth**: modify()
|
||
- **auth/Auth**: edit()
|
||
- **auth/Auth**: site()
|
||
- **auth/Auth**: getShowMenuList()
|
||
|
||
## ➕ 额外模块列表
|
||
|
||
- captcha
|
||
- cash_out
|
||
- common
|
||
- diy_form
|
||
- diy_form_export
|
||
- http
|
||
- install
|
||
- job
|
||
- member_export
|
||
- Menu
|
||
- notice_template
|
||
- paytype
|
||
- printer
|
||
- qrcode
|
||
- queue
|
||
- Resetpassword
|
||
- scan
|
||
- schedule
|
||
- system
|
||
- transfer
|
||
- upgrade
|
||
- WorkerCommand
|
||
- workerman
|
||
|
||
## 🎯 改进建议
|
||
|
||
- 需要创建 110 个缺失的控制器
|
||
- 需要实现 7 个缺失的方法
|
||
- 迁移完整性较低,建议优先完成核心模块的迁移
|
||
- 发现 23 个额外模块,请确认是否为新增功能
|
||
|
||
## 📋 详细模块对比
|
||
|
||
### PHP项目模块结构
|
||
- **addon**: 5 个管理端控制器, 1 个前台控制器
|
||
- **aliapp**: 1 个管理端控制器, 0 个前台控制器
|
||
- **applet**: 3 个管理端控制器, 0 个前台控制器
|
||
- **auth**: 1 个管理端控制器, 0 个前台控制器
|
||
- **channel**: 2 个管理端控制器, 0 个前台控制器
|
||
- **dict**: 1 个管理端控制器, 0 个前台控制器
|
||
- **diy**: 4 个管理端控制器, 2 个前台控制器
|
||
- **generator**: 1 个管理端控制器, 0 个前台控制器
|
||
- **home**: 1 个管理端控制器, 0 个前台控制器
|
||
- **login**: 3 个管理端控制器, 3 个前台控制器
|
||
- **member**: 8 个管理端控制器, 7 个前台控制器
|
||
- **niucloud**: 2 个管理端控制器, 0 个前台控制器
|
||
- **notice**: 4 个管理端控制器, 0 个前台控制器
|
||
- **pay**: 4 个管理端控制器, 2 个前台控制器
|
||
- **poster**: 1 个管理端控制器, 1 个前台控制器
|
||
- **site**: 5 个管理端控制器, 0 个前台控制器
|
||
- **stat**: 2 个管理端控制器, 0 个前台控制器
|
||
- **sys**: 16 个管理端控制器, 6 个前台控制器
|
||
- **upload**: 2 个管理端控制器, 1 个前台控制器
|
||
- **user**: 1 个管理端控制器, 0 个前台控制器
|
||
- **verify**: 2 个管理端控制器, 0 个前台控制器
|
||
- **weapp**: 5 个管理端控制器, 2 个前台控制器
|
||
- **wechat**: 5 个管理端控制器, 2 个前台控制器
|
||
- **wxoplatform**: 4 个管理端控制器, 0 个前台控制器
|
||
- **agreement**: 0 个管理端控制器, 1 个前台控制器
|
||
|
||
### NestJS项目模块结构
|
||
- **addon**: 0 个控制器, 0 个服务, 2 个实体
|
||
- **agreement**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **aliapp**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **applet**: 0 个控制器, 0 个服务, 2 个实体
|
||
- **auth**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **captcha**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **cash_out**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **channel**: 0 个控制器, 0 个服务, 4 个实体
|
||
- **common**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **dict**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **diy**: 0 个控制器, 0 个服务, 9 个实体
|
||
- **diy_form**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **diy_form_export**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **generator**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **home**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **http**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **install**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **job**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **login**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **member**: 0 个控制器, 0 个服务, 11 个实体
|
||
- **member_export**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **Menu**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **niucloud**: 0 个控制器, 0 个服务, 2 个实体
|
||
- **notice**: 0 个控制器, 0 个服务, 3 个实体
|
||
- **notice_template**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **pay**: 0 个控制器, 0 个服务, 4 个实体
|
||
- **paytype**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **poster**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **printer**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **qrcode**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **queue**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **Resetpassword**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **scan**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **schedule**: 0 个控制器, 0 个服务, 2 个实体
|
||
- **site**: 0 个控制器, 0 个服务, 7 个实体
|
||
- **stat**: 0 个控制器, 0 个服务, 2 个实体
|
||
- **sys**: 0 个控制器, 0 个服务, 26 个实体
|
||
- **system**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **transfer**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **upgrade**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **upload**: 0 个控制器, 3 个服务, 1 个实体
|
||
- **user**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **verify**: 0 个控制器, 0 个服务, 1 个实体
|
||
- **weapp**: 0 个控制器, 0 个服务, 2 个实体
|
||
- **wechat**: 0 个控制器, 0 个服务, 5 个实体
|
||
- **WorkerCommand**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **workerman**: 1 个控制器, 1 个服务, 1 个实体
|
||
- **wxoplatform**: 0 个控制器, 0 个服务, 2 个实体
|
||
|
||
## 🔧 下一步行动计划
|
||
|
||
1. **优先级1**: 完成缺失的核心模块迁移
|
||
2. **优先级2**: 补全缺失的控制器和方法
|
||
3. **优先级3**: 验证业务逻辑一致性
|
||
4. **优先级4**: 完善测试覆盖率
|
||
|
||
---
|
||
*报告由 PHP迁移完整性检查器 自动生成*
|