You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

5 lines
711 B

1 month ago
本模块由三个独立的 Service 实现类组成,均继承自 `BaseServiceImpl<SysXxxMapper, SysXxx>`(MyBatis-Plus 提供的通用 CRUD),并通过 Spring `@Service` 装配:
- `SysDeptServiceImpl`:最复杂,负责部门树的增删改,维护 `ancestors` 祖级链字段,移动时递归重写后代祖先链并校验环引用;删除前检查主/兼职成员占用;通过 `DeptTreeCache.invalidate()` 失效缓存。
- `SysMenuServiceImpl`:基于 `SysRoleMenuMapper` 按角色 ID 查询关联的菜单 ID 列表。
- `SysRoleServiceImpl`:纯 CRUD 包装,无额外业务逻辑。
依赖方向单向向下:Service → Mapper → Entity,不反向依赖 Controller 或上层业务。