Просмотр исходного кода

😒菜单修改增加判断-禁止本节点与父节点相同

zuohuaijun 2 лет назад
Родитель
Сommit
a2ef309366

+ 6 - 0
Admin.NET/Admin.NET.Core/Enum/ErrorCodeEnum.cs

@@ -316,6 +316,12 @@ public enum ErrorCodeEnum
     [ErrorCodeItemMetadata("不能移动根节点")]
     D4007,
 
+    /// <summary>
+    /// 禁止本节点与父节点相同
+    /// </summary>
+    [ErrorCodeItemMetadata("禁止本节点与父节点相同")]
+    D4008,
+
     /// <summary>
     /// 已存在同名或同编码应用
     /// </summary>

+ 3 - 0
Admin.NET/Admin.NET.Core/Service/Menu/SysMenuService.cs

@@ -136,6 +136,9 @@ public class SysMenuService : IDynamicApiController, ITransient
     [DisplayName("更新菜单")]
     public async Task UpdateMenu(UpdateMenuInput input)
     {
+        if (input.Id == input.Pid)
+            throw Oops.Oh(ErrorCodeEnum.D4008);
+
         var isExist = input.Type != MenuTypeEnum.Btn
             ? await _sysMenuRep.IsAnyAsync(u => u.Title == input.Title && u.Type == input.Type && u.Id != input.Id)
             : await _sysMenuRep.IsAnyAsync(u => u.Permission == input.Permission && u.Type == input.Type && u.Id != input.Id);