---
description: Mapper 与 XML 规范（与 .cursor/rules/java-mapper.mdc 同步）
globs: ["**/*Mapper.java","**/*Mapper.xml"]
alwaysApply: false
---

# Mapper 层规范（MyBatis + 达梦 8）

## 接口

- 路径：`com.ruoyi.{module}.mapper`
- 命名：`selectXxxById`、`selectXxxList`、`insertXxx`、`updateXxx`、`deleteXxxByIds`
- 禁止继承 BaseMapper / BaseMapperX

## XML

- 路径：`resources/mapper/{module}/XxxMapper.xml`
- namespace 与接口全类名一致
- 动态条件：`<if test="...">`
- 数据权限：`${params.dataScope}`（配合 @DataScope）
- 模糊查询：`concat('%', #{name}, '%')`（若依现有写法）
- 分页：不在 XML 写 LIMIT，由 PageHelper 拦截

## 禁止

- MyBatis-Plus Wrapper（LambdaQueryWrapperX 等）
- SELECT *、MySQL 专属函数
- Mapper 上加 @Transactional 或业务逻辑
