update 优化 skill 内容
This commit is contained in:
@@ -14,8 +14,8 @@ description: 公共基础模块专家。用于修改 ruoyi-common 下的 mybatis
|
||||
|
||||
## common-mybatis
|
||||
|
||||
- 链式查询能力沿用 `BaseMapperPlus#lambda()`、`LambdaCrudChainWrapper`、`LambdaQueryBuilder`、`LambdaQueryCondition`。
|
||||
- 条件辅助方法命名沿用 `eqIfPresent`、`eqIfText`、`likeIfText`、`betweenIfPresent`、`inIfNotEmpty`、`findInSetIfPresent`。
|
||||
- 链式查询能力沿用 `QueryBuilder.lambda(...)`、`QueryBuilder.lambdaJoin(...)`、`BaseMapperPlus#lambda()`、`LambdaCrudChainWrapper`、`LambdaQueryBuilder`、`LambdaJoinQueryBuilder`、`LambdaQueryCondition`。
|
||||
- 条件辅助方法命名沿用 `eqIfPresent`、`eqIfText`、`neIfPresent`、`likeIfText`、`betweenIfPresent`、`betweenParams`、`inIfNotEmpty`、`findInSetIfPresent`。
|
||||
- `LambdaCrudChainWrapper` 同时维护查询字段和更新 set 片段;新增状态时必须检查 `instance()` 与 `clear()`。
|
||||
- 返回链式对象时保持 `this` / `typedThis`,不要暴露底层 wrapper 破坏调用链。
|
||||
|
||||
|
||||
@@ -33,8 +33,8 @@ description: 标准后端 CRUD 专家。用于当前项目中的新增单表 CRU
|
||||
|
||||
## 查询规则
|
||||
|
||||
- 单表查询优先用 `LambdaQueryWrapper`
|
||||
- 项目公共链式查询可使用 `BaseMapperPlus#lambda()`、`LambdaCrudChainWrapper`、`LambdaQueryCondition` 的 `IfPresent` / `IfText` / `IfNotEmpty` 风格
|
||||
- 单表查询优先返回 `LambdaQueryWrapper`,新增 generator 风格代码优先用 `QueryBuilder.lambda(Entity.class).build()`
|
||||
- 项目公共链式查询可使用 `QueryBuilder.lambda(...)`、`BaseMapperPlus#lambda()`、`LambdaCrudChainWrapper`、`LambdaQueryCondition` 的 `IfPresent` / `IfText` / `IfNotEmpty` 风格
|
||||
- 日期范围默认从 `bo.getParams()` 中读取 begin/end
|
||||
- 分页优先返回 `PageResult<Vo>`
|
||||
- BO 转实体使用 `MapstructUtils.convert(bo, Entity.class)`
|
||||
|
||||
@@ -14,6 +14,14 @@ description: 后端工程总入口。用于在当前 RuoYi-Vue-Plus 项目中识
|
||||
5. 如果只要求补充或修正 JavaDoc 注释,优先使用 `backend-javadoc.md` 的规则。
|
||||
6. 如果同时要求同步前端接口或前端页面骨架,保持后端路由与 generator 风格稳定,便于前端 agent 对接。
|
||||
|
||||
文档读取顺序:
|
||||
|
||||
- 后端 Java、Mapper、Service、Controller、BO、VO、Entity、权限、查询、公共模块或 JavaDoc 任务,先读 `.codex/skills/ruoyi-plus-ai-coding/references/backend.md`。
|
||||
- 同步前端 Vue、TypeScript、api、types 或页面骨架时,再读 `.codex/skills/ruoyi-plus-ai-coding/references/frontend.md`。
|
||||
- 任务边界不清晰或需要标准场景示例时,再读 `.codex/skills/ruoyi-plus-ai-coding/references/examples.md`。
|
||||
- 只读取当前任务相关的 reference,不一次性展开全部文档。
|
||||
- reference 用来约束实现方式和检查范围;如果 reference、generator 模板和真实代码冲突,优先相信当前模块真实代码和实际调用点。
|
||||
|
||||
通用要求:
|
||||
|
||||
- 先读同模块最近似实现,再动代码。
|
||||
|
||||
@@ -16,18 +16,20 @@ description: 后端查询、联表与数据权限专家。用于当前项目中
|
||||
## 重点关注
|
||||
|
||||
- `BaseMapperPlus`
|
||||
- `QueryBuilder`
|
||||
- `LambdaCrudChainWrapper`
|
||||
- `LambdaQueryBuilder`
|
||||
- `LambdaJoinQueryBuilder`
|
||||
- `LambdaQueryCondition`
|
||||
- `@DataPermission`
|
||||
- `DataColumn`
|
||||
- `MPJBaseMapper`
|
||||
- `JoinWrappers.lambda(...)`
|
||||
- `QueryBuilder.lambdaJoin(...)`
|
||||
- 复杂分页与列表查询
|
||||
|
||||
## 项目写法
|
||||
|
||||
- MPJ 联表查询沿用别名风格,例如 `JoinWrappers.lambda("u", SysUser.class)`。
|
||||
- MPJ 联表查询沿用别名风格,例如 `QueryBuilder.lambdaJoin("u", SysUser.class)`。
|
||||
- 带别名字段条件使用 `.eq("u", Entity::getField, value)`、`.orderByAsc("m", SysMenu::getOrderNum)`。
|
||||
- 数据权限列名要和真实 SQL 别名一致,例如 `d.dept_id`、`u.create_by`。
|
||||
- `ruoyi-system` 的用户、角色、菜单、部门查询常带角色状态、删除标识、部门权限过滤,修改前先读对应 mapper/service。
|
||||
|
||||
Reference in New Issue
Block a user