diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysLogininforController.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysLogininforController.java index 45181b9..148dba2 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysLogininforController.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysLogininforController.java @@ -88,7 +88,7 @@ public class SysLogininforController extends BaseController { return success(); } - @InnerAuth + /*@InnerAuth*/ @PostMapping public Result add (@RequestBody SysLogininforAddReq logininforAddReq) { logininforService.insertLogininfor(SysLogininforAddModel.of(logininforAddReq)); diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysMenuController.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysMenuController.java index f5d6fd7..dddce6a 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysMenuController.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysMenuController.java @@ -9,8 +9,12 @@ import com.muyu.common.log.enums.BusinessType; import com.muyu.common.security.annotation.RequiresPermissions; import com.muyu.common.security.utils.SecurityUtils; import com.muyu.system.domain.SysMenu; +import com.muyu.system.domain.model.SysMenuAddModel; import com.muyu.system.domain.model.SysMenuListModel; +import com.muyu.system.domain.model.SysMenuUpdModel; +import com.muyu.system.domain.rep.SysMenuAddReq; import com.muyu.system.domain.rep.SysMenuListReq; +import com.muyu.system.domain.rep.SysMenuUpdReq; import com.muyu.system.domain.resp.RoleMenuTreeResp; import com.muyu.system.domain.resp.SysMenuListResp; import com.muyu.system.service.SysMenuService; @@ -84,14 +88,16 @@ public class SysMenuController extends BaseController { @RequiresPermissions("system:menu:add") @Log(title = "菜单管理", businessType = BusinessType.INSERT) @PostMapping - public Result add (@Validated @RequestBody SysMenu menu) { - if (!menuService.checkMenuNameUnique(menu)) { - return error("新增菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); - } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { - return error("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); + public Result add (@Validated @RequestBody SysMenuAddReq sysMenuAddReq) { + SysMenuAddModel sysMenuAddModel = SysMenuAddModel.of(sysMenuAddReq); + if (!menuService.checkMenuNameUnique(sysMenuAddModel)) { + return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,菜单名称已存在"); + } else if (UserConstants.YES_FRAME.equals(sysMenuAddModel.getIsFrame()) && !StringUtils.ishttp(sysMenuAddModel.getPath())) { + return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,地址必须以http(s)://开头"); } + SysMenu menu = SysMenu.buildSysMenu(sysMenuAddReq); menu.setCreateBy(SecurityUtils.getUsername()); - menuService.insertMenu(menu); + menuService.insertMenu(SysMenuAddModel.of(sysMenuAddReq)); return Result.success(); } @@ -101,16 +107,17 @@ public class SysMenuController extends BaseController { @RequiresPermissions("system:menu:edit") @Log(title = "菜单管理", businessType = BusinessType.UPDATE) @PutMapping - public Result edit (@Validated @RequestBody SysMenu menu) { - if (!menuService.checkMenuNameUnique(menu)) { - return error("修改菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); - } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { - return error("修改菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); - } else if (menu.getMenuId().equals(menu.getParentId())) { - return error("修改菜单'" + menu.getMenuName() + "'失败,上级菜单不能选择自己"); + public Result edit (@Validated @RequestBody SysMenuUpdReq sysMenuUpdReq) { + SysMenuAddModel sysMenuAddModel = SysMenuAddModel.buildSysMenuAddModel(sysMenuUpdReq); + if (!menuService.checkMenuNameUnique(sysMenuAddModel)) { + return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,菜单名称已存在"); + } else if (UserConstants.YES_FRAME.equals(sysMenuAddModel.getIsFrame()) && !StringUtils.ishttp(sysMenuAddModel.getPath())) { + return error("新增菜单'" + sysMenuAddModel.getMenuName() + "'失败,地址必须以http(s)://开头"); } + SysMenu menu = SysMenu.buildSysMenu(sysMenuAddModel); + menu.setCreateBy(SecurityUtils.getUsername()); menu.setUpdateBy(SecurityUtils.getUsername()); - menuService.updateMenu(menu); + menuService.updateMenu(SysMenuUpdModel.of(sysMenuUpdReq)); return Result.success(); } diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/SysMenu.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/SysMenu.java index 5a2f09f..6c5a2b5 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/SysMenu.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/SysMenu.java @@ -5,7 +5,10 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.system.domain.model.SysMenuAddModel; import com.muyu.system.domain.model.SysMenuListModel; +import com.muyu.system.domain.model.SysMenuUpdModel; +import com.muyu.system.domain.rep.SysMenuAddReq; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; @@ -123,6 +126,7 @@ public class SysMenu extends BaseEntity { * 子菜单 */ @Builder.Default + @TableField(exist = false) private List children = new ArrayList(); @NotBlank(message = "菜单名称不能为空") @@ -197,4 +201,65 @@ public class SysMenu extends BaseEntity { .children(sysMenuListModel.getChildren()) .build(); } + + public static SysMenu buildSysMenu(SysMenuAddReq sysMenuAddReq) { + return SysMenu.builder() + .menuId(sysMenuAddReq.getMenuId()) + .menuName(sysMenuAddReq.getMenuName()) + .parentName(sysMenuAddReq.getParentName()) + .parentId(sysMenuAddReq.getParentId()) + .orderNum(sysMenuAddReq.getOrderNum()) + .path(sysMenuAddReq.getPath()) + .component(sysMenuAddReq.getComponent()) + .query(sysMenuAddReq.getQuery()) + .isFrame(sysMenuAddReq.getIsFrame()) + .isCache(sysMenuAddReq.getIsCache()) + .menuType(sysMenuAddReq.getMenuType()) + .visible(sysMenuAddReq.getVisible()) + .status(sysMenuAddReq.getStatus()) + .perms(sysMenuAddReq.getPerms()) + .icon(sysMenuAddReq.getIcon()) + .children(sysMenuAddReq.getChildren()) + .build(); + } + + public static SysMenu buildSysMenu(SysMenuAddModel sysMenuAddModel) { + return SysMenu.builder() + .menuName(sysMenuAddModel.getMenuName()) + .parentId(sysMenuAddModel.getParentId()) + .orderNum(sysMenuAddModel.getOrderNum()) + .path(sysMenuAddModel.getPath()) + .component(sysMenuAddModel.getComponent()) + .query(sysMenuAddModel.getQuery()) + .isFrame(sysMenuAddModel.getIsFrame()) + .isCache(sysMenuAddModel.getIsCache()) + .menuType(sysMenuAddModel.getMenuType()) + .visible(sysMenuAddModel.getVisible()) + .status(sysMenuAddModel.getStatus()) + .perms(sysMenuAddModel.getPerms()) + .icon(sysMenuAddModel.getIcon()) + .children(sysMenuAddModel.getChildren()) + .build(); + } + + public static SysMenu buildSysMenu(SysMenuUpdModel sysMenuUpdModel) { + return SysMenu.builder() + .menuId(sysMenuUpdModel.getMenuId()) + .menuName(sysMenuUpdModel.getMenuName()) + .parentId(sysMenuUpdModel.getParentId()) + .orderNum(sysMenuUpdModel.getOrderNum()) + .path(sysMenuUpdModel.getPath()) + .component(sysMenuUpdModel.getComponent()) + .query(sysMenuUpdModel.getQuery()) + .isFrame(sysMenuUpdModel.getIsFrame()) + .isCache(sysMenuUpdModel.getIsCache()) + .menuType(sysMenuUpdModel.getMenuType()) + .visible(sysMenuUpdModel.getVisible()) + .status(sysMenuUpdModel.getStatus()) + .perms(sysMenuUpdModel.getPerms()) + .icon(sysMenuUpdModel.getIcon()) + .children(sysMenuUpdModel.getChildren()) + .build(); + } + } diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/model/SysMenuAddModel.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/model/SysMenuAddModel.java new file mode 100644 index 0000000..e2303c7 --- /dev/null +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/model/SysMenuAddModel.java @@ -0,0 +1,140 @@ +package com.muyu.system.domain.model; + +import com.muyu.system.domain.SysMenu; +import com.muyu.system.domain.rep.SysMenuAddReq; +import com.muyu.system.domain.rep.SysMenuUpdReq; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.ArrayList; +import java.util.List; + +/** + * @description: 菜单添加模型 + * @author yangchoashun + * @date 2025/2/23 17:24 + * @version 1.0 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SysMenuAddModel { + /** + * 菜单ID + */ + private Long menuId; + /** + * 菜单名称 + */ + private String menuName; + + /** + * 父菜单ID + */ + + private Long parentId; + + /** + * 显示顺序 + */ + private Integer orderNum; + + /** + * 路由地址 + */ + private String path; + + /** + * 组件路径 + */ + private String component; + + /** + * 路由参数 + */ + private String query; + + /** + * 是否为外链(0是 1否) + */ + private String isFrame; + + /** + * 是否缓存(0缓存 1不缓存) + */ + private String isCache; + + /** + * 类型(M目录 C菜单 F按钮) + */ + private String menuType; + + /** + * 显示状态(0显示 1隐藏) + */ + private String visible; + + /** + * 菜单状态(0正常 1停用) + */ + private String status; + + /** + * 权限字符串 + */ + private String perms; + + /** + * 菜单图标 + */ + private String icon; + + /** + * 子菜单 + */ + private List children = new ArrayList(); + + public static SysMenuAddModel of(SysMenuAddReq sysMenuAddReq) { + return SysMenuAddModel.builder() + .menuName(sysMenuAddReq.getMenuName()) + .parentId(sysMenuAddReq.getParentId()) + .orderNum(sysMenuAddReq.getOrderNum()) + .path(sysMenuAddReq.getPath()) + .component(sysMenuAddReq.getComponent()) + .query(sysMenuAddReq.getQuery()) + .isFrame(sysMenuAddReq.getIsFrame()) + .isCache(sysMenuAddReq.getIsCache()) + .menuType(sysMenuAddReq.getMenuType()) + .visible(sysMenuAddReq.getVisible()) + .status(sysMenuAddReq.getStatus()) + .perms(sysMenuAddReq.getPerms()) + .icon(sysMenuAddReq.getIcon()) + .children(sysMenuAddReq.getChildren()) + .build(); + } + + public static SysMenuAddModel buildSysMenuAddModel(SysMenuUpdReq sysMenuUpdReq){ + return SysMenuAddModel.builder() + .menuName(sysMenuUpdReq.getMenuName()) + .parentId(sysMenuUpdReq.getParentId()) + .orderNum(sysMenuUpdReq.getOrderNum()) + .path(sysMenuUpdReq.getPath()) + .component(sysMenuUpdReq.getComponent()) + .query(sysMenuUpdReq.getQuery()) + .isFrame(sysMenuUpdReq.getIsFrame()) + .isCache(sysMenuUpdReq.getIsCache()) + .menuType(sysMenuUpdReq.getMenuType()) + .visible(sysMenuUpdReq.getVisible()) + .status(sysMenuUpdReq.getStatus()) + .perms(sysMenuUpdReq.getPerms()) + .icon(sysMenuUpdReq.getIcon()) + .children(sysMenuUpdReq.getChildren()) + .build(); + } + +} diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/model/SysMenuUpdModel.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/model/SysMenuUpdModel.java new file mode 100644 index 0000000..36a8866 --- /dev/null +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/model/SysMenuUpdModel.java @@ -0,0 +1,119 @@ +package com.muyu.system.domain.model; + +import com.muyu.system.domain.SysMenu; +import com.muyu.system.domain.rep.SysMenuAddReq; +import com.muyu.system.domain.rep.SysMenuUpdReq; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.ArrayList; +import java.util.List; + +/** + * @description: 菜单修改模型 + * @author yangchoashun + * @date 2025/2/23 17:24 + * @version 1.0 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SysMenuUpdModel { + /** + * 菜单ID + */ + private Long menuId; + /** + * 菜单名称 + */ + private String menuName; + + /** + * 父菜单ID + */ + + private Long parentId; + + /** + * 显示顺序 + */ + private Integer orderNum; + + /** + * 路由地址 + */ + private String path; + + /** + * 组件路径 + */ + private String component; + + /** + * 路由参数 + */ + private String query; + + /** + * 是否为外链(0是 1否) + */ + private String isFrame; + + /** + * 是否缓存(0缓存 1不缓存) + */ + private String isCache; + + /** + * 类型(M目录 C菜单 F按钮) + */ + private String menuType; + + /** + * 显示状态(0显示 1隐藏) + */ + private String visible; + + /** + * 菜单状态(0正常 1停用) + */ + private String status; + + /** + * 权限字符串 + */ + private String perms; + + /** + * 菜单图标 + */ + private String icon; + + /** + * 子菜单 + */ + private List children = new ArrayList(); + + public static SysMenuUpdModel of(SysMenuUpdReq sysMenuUpdReq) { + return SysMenuUpdModel.builder() + .menuName(sysMenuUpdReq.getMenuName()) + .parentId(sysMenuUpdReq.getParentId()) + .orderNum(sysMenuUpdReq.getOrderNum()) + .path(sysMenuUpdReq.getPath()) + .component(sysMenuUpdReq.getComponent()) + .query(sysMenuUpdReq.getQuery()) + .isFrame(sysMenuUpdReq.getIsFrame()) + .isCache(sysMenuUpdReq.getIsCache()) + .menuType(sysMenuUpdReq.getMenuType()) + .visible(sysMenuUpdReq.getVisible()) + .status(sysMenuUpdReq.getStatus()) + .perms(sysMenuUpdReq.getPerms()) + .icon(sysMenuUpdReq.getIcon()) + .children(sysMenuUpdReq.getChildren()) + .build(); + } + +} diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuAddReq.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuAddReq.java index 89f951c..10ebbc5 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuAddReq.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuAddReq.java @@ -1,6 +1,8 @@ package com.muyu.system.domain.rep; import com.muyu.system.domain.SysMenu; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -25,6 +27,7 @@ public class SysMenuAddReq { /** * 菜单名称 */ + @NotBlank(message = "菜单名称不能为空") private String menuName; /** @@ -41,19 +44,19 @@ public class SysMenuAddReq { /** * 显示顺序 */ - + @NotNull(message = "显示顺序不能为空") private Integer orderNum; /** * 路由地址 */ - + @NotBlank(message = "路由地址不能为空") private String path; /** * 组件路径 */ - + @NotBlank(message = "组件路径不能为空") private String component; /** @@ -64,26 +67,31 @@ public class SysMenuAddReq { /** * 是否为外链(0是 1否) */ + @NotBlank(message = "是否为外链不能为空") private String isFrame; /** * 是否缓存(0缓存 1不缓存) */ + @NotBlank(message = "是否缓存不能为空") private String isCache; /** * 类型(M目录 C菜单 F按钮) */ + @NotBlank(message = "类型不能为空") private String menuType; /** * 显示状态(0显示 1隐藏) */ + @NotBlank(message = "显示状态不能为空") private String visible; /** * 菜单状态(0正常 1停用) */ + @NotBlank(message = "菜单状态不能为空") private String status; /** @@ -94,10 +102,12 @@ public class SysMenuAddReq { /** * 菜单图标 */ + @NotBlank(message = "菜单图标不能为空") private String icon; /** * 子菜单 */ private List children = new ArrayList(); + } diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuUpdReq.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuUpdReq.java new file mode 100644 index 0000000..9b70a58 --- /dev/null +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/domain/rep/SysMenuUpdReq.java @@ -0,0 +1,113 @@ +package com.muyu.system.domain.rep; + +import com.muyu.system.domain.SysMenu; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.ArrayList; +import java.util.List; + +/** + * @description: 菜单添加请求 + * @author yangchoashun + * @date 2025/2/23 17:24 + * @version 1.0 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SysMenuUpdReq { + private Long menuId; + + /** + * 菜单名称 + */ + @NotBlank(message = "菜单名称不能为空") + private String menuName; + + /** + * 父菜单名称 + */ + private String parentName; + + /** + * 父菜单ID + */ + + private Long parentId; + + /** + * 显示顺序 + */ + @NotNull(message = "显示顺序不能为空") + private Integer orderNum; + + /** + * 路由地址 + */ + @NotBlank(message = "路由地址不能为空") + private String path; + + /** + * 组件路径 + */ + @NotBlank(message = "组件路径不能为空") + private String component; + + /** + * 路由参数 + */ + private String query; + + /** + * 是否为外链(0是 1否) + */ + @NotBlank(message = "是否为外链不能为空") + private String isFrame; + + /** + * 是否缓存(0缓存 1不缓存) + */ + @NotBlank(message = "是否缓存不能为空") + private String isCache; + + /** + * 类型(M目录 C菜单 F按钮) + */ + @NotBlank(message = "类型不能为空") + private String menuType; + + /** + * 显示状态(0显示 1隐藏) + */ + @NotBlank(message = "显示状态不能为空") + private String visible; + + /** + * 菜单状态(0正常 1停用) + */ + @NotBlank(message = "菜单状态不能为空") + private String status; + + /** + * 权限字符串 + */ + private String perms; + + /** + * 菜单图标 + */ + @NotBlank(message = "菜单图标不能为空") + private String icon; + + /** + * 子菜单 + */ + private List children = new ArrayList(); + +} diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysMenuService.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysMenuService.java index cc0a9ef..a99bace 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysMenuService.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysMenuService.java @@ -2,7 +2,9 @@ package com.muyu.system.service; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.system.domain.SysMenu; +import com.muyu.system.domain.model.SysMenuAddModel; import com.muyu.system.domain.model.SysMenuListModel; +import com.muyu.system.domain.model.SysMenuUpdModel; import com.muyu.system.domain.vo.RouterVo; import com.muyu.system.domain.vo.TreeSelect; @@ -127,16 +129,16 @@ public interface SysMenuService extends IService { /** * 新增保存菜单信息 * - * @param menu 菜单信息 + * @param sysMenuAddModel 菜单信息 */ - public void insertMenu (SysMenu menu); + public void insertMenu (SysMenuAddModel sysMenuAddModel); /** * 修改保存菜单信息 * - * @param menu 菜单信息 + * @param sysMenuUpdModel 菜单信息 */ - public void updateMenu (SysMenu menu); + public void updateMenu (SysMenuUpdModel sysMenuUpdModel); /** * 删除菜单管理信息 @@ -148,10 +150,10 @@ public interface SysMenuService extends IService { /** * 校验菜单名称是否唯一 * - * @param menu 菜单信息 + * @param sysMenuAddModel 菜单信息 * * @return 结果 */ - public boolean checkMenuNameUnique (SysMenu menu); + public boolean checkMenuNameUnique (SysMenuAddModel sysMenuAddModel); } diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysLogininforServiceImpl.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysLogininforServiceImpl.java index ed8580f..a5bd0c4 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysLogininforServiceImpl.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysLogininforServiceImpl.java @@ -15,6 +15,7 @@ import com.muyu.system.service.SysLogininforService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.List; /** @@ -36,6 +37,7 @@ public class SysLogininforServiceImpl extends ServiceImpl impl /** * 新增保存菜单信息 * - * @param menu 菜单信息 + * @param sysMenuAddModel 菜单信息 * * @return 结果 */ @Override - public void insertMenu (SysMenu menu) { + public void insertMenu (SysMenuAddModel sysMenuAddModel) { + SysMenu menu = SysMenu.buildSysMenu(sysMenuAddModel); this.save(menu); } /** * 修改保存菜单信息 * - * @param menu 菜单信息 + * @param sysMenuUpdModel 菜单信息 * * @return 结果 */ @Override - public void updateMenu (SysMenu menu) { - this.updateById(menu); + public void updateMenu (SysMenuUpdModel sysMenuUpdModel) { + this.updateById(SysMenu.buildSysMenu(sysMenuUpdModel)); } /** @@ -337,12 +340,13 @@ public class SysMenuServiceImpl extends ServiceImpl impl /** * 校验菜单名称是否唯一 * - * @param menu 菜单信息 + * @param sysMenuAddModel 菜单信息 * * @return 结果 */ @Override - public boolean checkMenuNameUnique (SysMenu menu) { + public boolean checkMenuNameUnique (SysMenuAddModel sysMenuAddModel) { + SysMenu menu = SysMenu.buildSysMenu(sysMenuAddModel); LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SysMenu::getMenuName, menu.getMenuName()); lambdaQueryWrapper.ne(menu.getMenuId() != null, SysMenu::getParentId, menu.getParentId());