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.
1.8 KiB
1.8 KiB
06 — RoleController 出入参规范化
What to build: RoleDetailVO 改名为 RoleDTO(继承 BaseDTO,加 fromEntity/toEntity)。新建 RoleParam extends BaseParam,RoleController.page 改用它并经 PageConverter 转换——修复分页绕过(当前自行 new Page<> 无页大小上限、排序字段可注入)。page 出参从 PageResult<SysRole>(实体直出)改为 PageResult<RoleDTO>——deleted/creatorId 不再泄露。saveOrUpdate 从 6 个 @RequestParam 改为 RoleDTO 入参(≥3 阈值触发封装)。assignResources(2 参数)和 delete(1 参数)保持 @RequestParam。
Blocked by: 01 (BaseDTO 重构), 02 (InitBinder)
Status: ready-for-agent
RoleDetailVO改名为RoleDTO,继承BaseDTO,加@EqualsAndHashCode(callSuper = true)RoleDTO上实现fromEntity(SysRole)静态方法和toEntity()实例方法- 新建
RoleParam extends BaseParam,放param/包,含keyword等角色查询字段 RoleController.page入参从 3 个@RequestParam改为RoleParam,经PageConverter.toMpPage转换RoleController.page出参从PageResult<SysRole>改为PageResult<RoleDTO>RoleController.saveOrUpdate从 6 个@RequestParam改为RoleDTO入参RoleController.detail出参从RoleDetailVO改为RoleDTORoleController.assignResources(2 参数)保持@RequestParamRoleController.delete(1 参数)保持@RequestParam- RoleController 不再 import
SysRole实体 - 测试:page 返回的 JSON 中不包含
deleted/creatorId/updaterId - 测试:page 经 PageConverter,页大小超过上限被收敛
- 测试:saveOrUpdate 入参为 RoleDTO,提交
createTime被 strip - 测试:assignResources 保持 @RequestParam 不变