feat: 完成sys模块迁移,对齐PHP/Java框架

- 重构sys模块架构,严格按admin/api/core分层
- 对齐所有sys实体与数据库表结构
- 实现完整的adminapi控制器,匹配PHP/Java契约
- 修复依赖注入问题,确保服务正确注册
- 添加自动迁移工具和契约验证
- 完善多租户支持和审计功能
- 统一命名规范,与PHP业务逻辑保持一致
This commit is contained in:
万物街
2025-09-21 21:29:28 +08:00
parent 2e361795d9
commit 127a4db1e3
839 changed files with 24932 additions and 57988 deletions

View File

@@ -0,0 +1,28 @@
import dotenv from 'dotenv';
dotenv.config();
process.env.NODE_ENV = process.env.NODE_ENV || 'test';
// 关闭噪声日志,便于测试输出阅读
if (!process.env.LOG_LEVEL) {
process.env.LOG_LEVEL = 'warn';
}
// 为单测提供最小必需配置占位(不连接真实中间件)
process.env.REDIS_HOST = process.env.REDIS_HOST || '127.0.0.1';
process.env.REDIS_PORT = process.env.REDIS_PORT || '6379';
// 满足配置校验的最小必需字段(不会真实连接 DB
process.env.DB_HOST = process.env.DB_HOST || '127.0.0.1';
process.env.DB_PORT = process.env.DB_PORT || '3306';
process.env.DB_USERNAME = process.env.DB_USERNAME || 'root';
process.env.DB_PASSWORD = process.env.DB_PASSWORD || '';
process.env.DB_DATABASE = process.env.DB_DATABASE || 'wwjcloud_test';
process.env.JWT_SECRET = process.env.JWT_SECRET || 'test_secret_key';
// 避免未处理的Promise拒绝中断测试进程
process.on('unhandledRejection', (err) => {
// eslint-disable-next-line no-console
console.warn('UnhandledRejection in tests:', err);
});