28 lines
1.2 KiB
Markdown
28 lines
1.2 KiB
Markdown
|
|
## 规则与规范(AI 执行细则)
|
|||
|
|
|
|||
|
|
### 总则
|
|||
|
|
- 框架层: 按 NestJS 规范;业务/数据层: 与 PHP 项目 100% 一致
|
|||
|
|
- 禁止自创 DB 字段/索引;实体必须与 `sql/wwjcloud.sql` 一致
|
|||
|
|
|
|||
|
|
### 分层与依赖
|
|||
|
|
- 目录: Controller / Application / Core / Infrastructure / Entities / DTO
|
|||
|
|
- 依赖方向: App → Common → Core → Vendor(严格单向)
|
|||
|
|
- Repository: 接口在 Core,实现放 Infrastructure;Controller 不直接用 ORM
|
|||
|
|
|
|||
|
|
### 路由与权限
|
|||
|
|
- 管理端: `/adminapi/{module}/...`,前台: `/api/{module}/...`
|
|||
|
|
- 管理端控制器统一: `JwtAuthGuard + RolesGuard`
|
|||
|
|
|
|||
|
|
### 数据与配置
|
|||
|
|
- 配置表: `sys_config.value(JSON)`;禁止 `config_value`、`app_type`
|
|||
|
|
- 时间戳: int;软删: `is_del`, `delete_time`; JSON: `@Column('json')` 或 text + JSON 序列化
|
|||
|
|
|
|||
|
|
### 验证与错误
|
|||
|
|
- DTO: `class-validator` 必须;必要时启用 `JsonTransformPipe`、`TimestampPipe`
|
|||
|
|
- 异常: 全局过滤器统一错误响应;拦截器记录 request-id/trace
|
|||
|
|
|
|||
|
|
### 事件与队列
|
|||
|
|
- 用例完成后发布领域事件(如 `system.settings.*`);耗时逻辑入队处理
|
|||
|
|
|
|||
|
|
### 文档与测试
|
|||
|
|
- Swagger 注解完善;单测/集成/e2e 覆盖关键用例;`npm run build` 必须通过
|