Files
2026-06-12 18:25:01 +08:00

112 lines
3.4 KiB
Markdown

# 模块 6:若依编码规则重点
<div class="mt-6 text-sm">
前端 api 分层 · 后端 Controller/Service/Mapper 分层 · 权限注解 · 操作日志注解 · 数据权限 · 字典使用 · 代码生成规范
</div>
<!--
若依的编码规则要结合它的项目结构。
前端接口应放在 api 目录,不应该页面里直接写请求。
后端要遵守 Controller、Service、Mapper 分层。
敏感接口要关注权限注解和操作日志注解。
列表查询要关注数据权限。
固定枚举值尽量使用字典。
代码生成结果不能直接上线,要人工检查权限、日志、校验和测试。
-->
---
# 编码 rules 片段
<div class="mt-4 p-4 rounded-xl bg-blue-500/10 border border-blue-500/30 text-sm">
```md
## 若依编码规则
- 前端页面不得直接手写请求地址;新增接口调用必须放入对应 api 模块。
- 后端新增业务必须保持 Controller -> Service -> Mapper 分层,不得把 SQL 或复杂业务逻辑写入 Controller。
- 新增枚举/状态类字段时,优先检查项目是否已有字典配置;不要在页面硬编码展示文本。
- 代码生成结果必须经过权限、日志、校验、异常处理和测试审查后才能合入。
```
</div>
<!--
这里给出的是编码规则的可落地版本。
它不是抽象说“代码要规范”,而是明确若依前后端分层、字典使用和代码生成后的审查要求。
-->
---
# 代码生成 Review 清单
<div class="mt-5 text-sm">
| 检查项 | 必看位置 | 常见问题 |
|---|---|---|
| 权限控制 | Controller、菜单权限字符 | 只生成页面,没配后端权限 |
| 操作日志 | 新增/修改/删除/导出方法 | 敏感操作缺日志 |
| 表单校验 | 前端 rules、后端参数校验 | 前端校验有,后端缺 |
| 数据权限 | 列表查询、部门/用户过滤 | 不同角色看到同一批数据 |
| 异常处理 | Service、前端 catch/finally | 失败后 loading 不恢复 |
</div>
<!--
若依代码生成器能提高效率,但生成结果不能直接上线。
这张清单就是让 AI 和人工一起做生成代码 Review。
讲师可以要求学员把它放进 checklists 目录。
-->
---
# 若依测试规则重点
<div class="mt-6 text-sm">
- 登录成功/失败
- 无权限访问接口
- 按钮权限显示
- 角色授权变化
- 数据权限范围
- 操作日志记录
- 代码生成 CRUD
</div>
<!--
若依测试规则应该围绕权限和后台管理流程。
登录要测成功和失败。
无权限访问接口要返回拒绝。
按钮权限显示要和权限字符匹配。
角色授权变化后,菜单和按钮权限应变化。
数据权限要验证不同角色看到的数据范围。
敏感操作要验证操作日志记录。
代码生成 CRUD 要验证增删改查、权限和日志。
-->
---
# 测试 Prompt 模板
<div class="mt-4 p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30 text-sm">
```md
@workspace 请为“用户管理删除用户”设计测试清单。
要求:
1. 覆盖正常删除、取消删除、删除失败
2. 覆盖无权限账号访问后端删除接口
3. 覆盖删除后列表刷新和错误提示
4. 覆盖操作日志是否记录
5. 输出表格:场景、前置条件、操作步骤、预期结果、验证位置
```
</div>
<!--
测试规则也要能落到 Prompt。
让 TRAE 设计测试清单时,必须要求它覆盖权限、前端状态、日志和失败分支。
这比让它泛泛“写测试用例”可靠得多。
-->