task-57(账号/权限页面): 实现菜单删除前置校验
menu-manage-model.ts 增 menuDeleteReason 镜像后端仅删叶子约束(有子先删);menu-manage-api.ts
增 deleteMenu DELETE /api/admin/permission-menus/{id};MenusPage 行删除二次确认、
带子节点禁用/拦截并刷新。8 用例全过,419 单测 + build 绿。
This commit is contained in:
@@ -170,6 +170,13 @@ export function menuParentChangeReason(node: MenuManageNode, parentId: number |
|
||||
return undefined
|
||||
}
|
||||
|
||||
/** 删除前置校验(镜像后端:仅叶子可删,避免孤儿层级);可删返回 undefined。 */
|
||||
export function menuDeleteReason(node: MenuManageNode | null | undefined): string | undefined {
|
||||
const children = node?.children
|
||||
if (Array.isArray(children) && children.length > 0) return '请先删除该菜单下的子菜单'
|
||||
return undefined
|
||||
}
|
||||
|
||||
/** 新建/编辑表单空值工厂:默认菜单类型为 admin、排序 0、根父节点。 */
|
||||
export function emptyMenuManageForm(): MenuManageForm {
|
||||
return { name: '', columnKey: '', parentId: null, menuType: ADMIN_MENU_TYPE, routePath: '', sortOrder: 0 }
|
||||
|
||||
Reference in New Issue
Block a user