52 lines
1.5 KiB
Markdown
52 lines
1.5 KiB
Markdown
|
|
---
|
|||
|
|
title: 开发规范
|
|||
|
|
created: 2026-04-13
|
|||
|
|
updated: 2026-04-13
|
|||
|
|
type: concept
|
|||
|
|
tags: [convention, backend, frontend, database]
|
|||
|
|
sources: [CLAUDE.md]
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 开发规范
|
|||
|
|
|
|||
|
|
项目统一的编码约定和开发流程。
|
|||
|
|
|
|||
|
|
## 后端规范
|
|||
|
|
|
|||
|
|
| 规则 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| 文件名 | 下划线法:`model_channel.ts`、`time_log.ts` |
|
|||
|
|
| Entity 字段 | 驼峰法:`sessionId`、`createTime` |
|
|||
|
|
| Controller | 使用 `@CoolController` 自动生成 CRUD |
|
|||
|
|
| 业务逻辑 | 放 Service 层,不在 Controller |
|
|||
|
|
| 响应格式 | `this.ok(data)` 或 `this.fail('message')` |
|
|||
|
|
| API 路径 | `POST /admin/{module}/{entity}/{action}` |
|
|||
|
|
| Entity 注册 | 在 `src/entities.ts` 中添加 import |
|
|||
|
|
|
|||
|
|
## 前端规范
|
|||
|
|
|
|||
|
|
| 规则 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| 模块配置 | 必须有 `config.ts` 导出 `ModuleConfig` |
|
|||
|
|
| Service 调用 | 使用 `useCool()` 的 service 代理 |
|
|||
|
|
| 组件风格 | Vue 3 Composition API + `<script lang="ts" setup>` |
|
|||
|
|
| 样式 | Sass scoped |
|
|||
|
|
| 菜单 | 通过 `base_sys_menu` 表配置,不硬编码 |
|
|||
|
|
| 路由 | 动态路由由菜单驱动 |
|
|||
|
|
|
|||
|
|
## 数据库规范
|
|||
|
|
|
|||
|
|
| 规则 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| 自动建表 | 开发环境 `synchronize: true`,生产禁用 |
|
|||
|
|
| 索引 | 关键查询字段加 `@Index()` |
|
|||
|
|
| JSON 字段 | 用 `type: 'json'` 存储配置和元数据 |
|
|||
|
|
| 多租户 | 自动填充 `tenantId`(来自 JWT) |
|
|||
|
|
| 时间戳 | 自动填充 `createTime`、`updateTime` |
|
|||
|
|
|
|||
|
|
## 相关页面
|
|||
|
|
|
|||
|
|
- [[cool-admin-framework]] — 框架约定
|
|||
|
|
- [[project-overview]] — 项目总览
|
|||
|
|
- [[frontend-architecture]] — 前端架构
|