diff --git a/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java b/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java index 813361a..798381a 100644 --- a/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java +++ b/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java @@ -214,6 +214,7 @@ public class SysMenuRest { } sysRoleAuthorizeQuery.setRoleSids(roleSids); sysRoleAuthorizeQuery.setSourceSid(query.getSourceSid()); + sysRoleAuthorizeQuery.setMenuType("2"); list = sysRoleAuthorizeService.getSourceMenuTreeOfRoles(sysRoleAuthorizeQuery, null); return rb.success().setData(list); } @@ -279,6 +280,11 @@ public class SysMenuRest { if (sysSource == null) { return rb.setMsg("资源不存在"); } + if(!dto.getMenuType().equals("0")){ + if(StringUtils.isBlank(dto.getName())){ + return rb.setMsg("菜单名不能为空"); + } + } // dto.setMenuType("0"); sysMenuService.saveMenu(dto); return rb.success(); diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetail.java b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetail.java new file mode 100644 index 0000000..0ccfa06 --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetail.java @@ -0,0 +1,22 @@ +package com.yxt.portal.biz.sysauthorizegroupdetail; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + + +@ApiModel(value = "权限组表", description = "权限组表") +@TableName("sys_authorize_group_detail") +@Data +public class SysAuthorizeGroupDetail extends BaseEntity { + private static final long serialVersionUID = 1L; + + + @ApiModelProperty("权限组名") + private String groupName; + + + +} diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailDto.java b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailDto.java new file mode 100644 index 0000000..73dd90e --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailDto.java @@ -0,0 +1,61 @@ +package com.yxt.portal.biz.sysauthorizegroupdetail; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + + +@ApiModel(value = "权限组表 数据传输对象", description = "权限组表 数据传输对象") +@Data +public class SysAuthorizeGroupDetailDto implements Dto { + + + private static final long serialVersionUID = -8143707488992909267L; + @ApiModelProperty(value = "菜单名称", required = true) + @NotBlank(message = "菜单名称不能为空") + private String name; + + @ApiModelProperty("菜单路由路径(VUE)") + private String menuUrl; + + @ApiModelProperty("菜单对应的前端页面路径") + private String pageUrl; + + @ApiModelProperty("菜单图标地址") + private String iconUrl; + + @ApiModelProperty(value = "资源sid", required = true) + @NotBlank(message = "资源不能为空") + private String sourceSid; + + @ApiModelProperty(value = "是否显示,默认为1显示,0为不显示", required = true) + @NotBlank(message = "是否显示不能为空") + private String isShow; + + @ApiModelProperty("排序号") + private Integer sortNo; + + @ApiModelProperty(value = "上级sid", example = "0", required = true) + @NotBlank(message = "上级菜单不能为空") + private String pSid; + + @ApiModelProperty(value = "前端页面路径重定向", required = false) + private Integer pageUrlRedirect; + + @ApiModelProperty("前端页面名称(vue组件名)") + private String pageName; + + @ApiModelProperty(value = "前端页面别名", required = false) + private String pageAliasName; + + @ApiModelProperty("菜单类型(0左侧当行菜单,1页面中功能)") + private String menuType="0"; + + @ApiModelProperty(value = "备注") + private String remarks; + private String cid; +} \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailMapper.java b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailMapper.java new file mode 100644 index 0000000..304ede5 --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailMapper.java @@ -0,0 +1,27 @@ +package com.yxt.portal.biz.sysauthorizegroupdetail; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysMenuMapper.java
+ * Class: com.yxt.anrui.portal.biz.sysmenu.SysMenuMapper
+ * Description: 菜单表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:28
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface SysAuthorizeGroupDetailMapper extends BaseMapper { + + + List getGroupByOrgSid(@Param("orgSid") String orgSid, @Param("sourceSid") String sourceSid); +} \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailMapper.xml b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailMapper.xml new file mode 100644 index 0000000..8c2a0cf --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailMapper.xml @@ -0,0 +1,15 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailQuery.java b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailQuery.java new file mode 100644 index 0000000..52d4013 --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailQuery.java @@ -0,0 +1,19 @@ +package com.yxt.portal.biz.sysauthorizegroupdetail; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + + +@ApiModel(value = "权限组表 查询条件 功能菜单设置查询用", description = "权限组表 查询条件 功能菜单设置查询用") +@Data +public class SysAuthorizeGroupDetailQuery implements Query { + + + @ApiModelProperty("资源sid") + private String sourceSid; + private String orgSid; + +} diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailService.java b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailService.java new file mode 100644 index 0000000..159caf7 --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailService.java @@ -0,0 +1,32 @@ +package com.yxt.portal.biz.sysauthorizegroupdetail; + +import com.yxt.common.base.service.MybatisBaseService; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysMenuService.java
+ * Class: com.yxt.user.biz.sysmenu.SysMenuService
+ * Description: 菜单表 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:28
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class SysAuthorizeGroupDetailService extends MybatisBaseService { + + + + + public List getGroupByOrgSid(SysAuthorizeGroupDetailQuery query) { + + return baseMapper.getGroupByOrgSid(query.getOrgSid(),query.getSourceSid()); + } + +} \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailVo.java b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailVo.java new file mode 100644 index 0000000..d0524f8 --- /dev/null +++ b/src/main/java/com/yxt/portal/biz/sysauthorizegroupdetail/SysAuthorizeGroupDetailVo.java @@ -0,0 +1,75 @@ +package com.yxt.portal.biz.sysauthorizegroupdetail; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysMenuVo.java
+ * Class: com.yxt.anrui.portal.api.sysmenu.SysMenuVo
+ * Description: 菜单表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:28
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "菜单表 视图数据对象", description = "菜单表 视图数据对象") +@Data +public class SysAuthorizeGroupDetailVo implements Vo { + + + @ApiModelProperty("菜单名称") + private String name; + + @ApiModelProperty("菜单路由路径(VUE)") + private String menuUrl; + + @ApiModelProperty("菜单对应的前端页面路径") + private String pageUrl; + + @ApiModelProperty("菜单图标地址") + private String iconUrl; + + @ApiModelProperty("资源sid") + private String sourceSid; + + @ApiModelProperty("是否显示,默认为1显示,0为不显示") + private String isShow; + + @ApiModelProperty("排序号") + private Integer sortNo; + + @ApiModelProperty("上级sid") + private String pSid; + @ApiModelProperty("上级名称") + private String pName; + @ApiModelProperty("sid") + private String sid; + + @ApiModelProperty("前端页面路径重定向") + private Integer pageUrlRedirect; + + @ApiModelProperty("前端页面名称(vue组件名)") + private String pageName; + + @ApiModelProperty("前端页面别名") + private String pageAliasName; + + @ApiModelProperty("菜单类型(0左侧当行菜单,1页面中功能)") + private String menuType; + @ApiModelProperty("子菜单") + private List children; + @ApiModelProperty("是否选中,1:未选中,0:选中") + private String checked; + @ApiModelProperty("资源名称") + private String sourceName; + private String cid; +} diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenu.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenu.java index dcd853e..c910d8e 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenu.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenu.java @@ -62,4 +62,5 @@ public class SysMenu extends BaseEntity { @ApiModelProperty("菜单类型(0左侧当行菜单,1页面中功能)") private String menuType; private String cid; + private String btnKey; } diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuDto.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuDto.java index 78d7f20..8774ec1 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuDto.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuDto.java @@ -28,7 +28,7 @@ public class SysMenuDto implements Dto { private static final long serialVersionUID = -8143707488992909267L; @ApiModelProperty(value = "菜单名称", required = true) - @NotBlank(message = "菜单名称不能为空") +// @NotBlank(message = "菜单名称不能为空") private String name; @ApiModelProperty("菜单路由路径(VUE)") @@ -70,4 +70,5 @@ public class SysMenuDto implements Dto { @ApiModelProperty(value = "备注") private String remarks; private String cid; + private String btnKey; } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml index 0ccdc5f..751ab2a 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml @@ -33,8 +33,9 @@ SELECT menu.*, ISNULL(menuRole.sid) as checked FROM sys_menu menu left join sys_role_authorize menuRole on menu.sid = menuRole.menuSid AND menuRole.roleSid = #{param1} - left join sys_authorize_group a on a.menuSid=menu.sid - left join sys_org_authorize b on b.ahthorizeGroupSid=a.sid + left join sys_authorize_group_detail a on a.menuSid=menu.sid + left join sys_authorize_group c on c.sid =a.groupSid + left join sys_org_authorize b on b.ahthorizeGroupSid=c.sid where menu.pSid = #{param2} and a.sourceSid = #{sourceSid} @@ -80,7 +81,7 @@ when 2 then '按钮' end as menuTypeValue, menu.isShow, - menu.cId as cId, + menu.cId as cId,menu.btnKey, (select name from sys_menu where sid=menu.pSid) as pName FROM sys_menu menu left join sys_source source on source.sid = menu.sourceSid @@ -122,7 +123,7 @@ when 2 then '按钮' end as menuTypeValue, menu.isShow, - menu.cId as cId, + menu.cId as cId,menu.btnKey, if(menu.pSid=0,'顶级菜单','' )as pName FROM sys_menu menu LEFT JOIN sys_source source ON menu.sourceSid = source.sid diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java index 66cfd74..25135bd 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java @@ -135,11 +135,11 @@ public class SysMenuService extends MybatisBaseService { }*/ public List listAllVoForSource(SysMenuQuery query) { //查询所有的资源列表 - List sysSourceVos = sysSourceService.listMenuTreeVo(query.getSourceSid()); + List sysSourceVos = sysSourceService.listMenuTreeVo(""); for (SysMenuTreeVo s : sysSourceVos) { //根据资源sid查询该资源下的所有一级菜单 //List sysMenuVoList = sysSourceMenuService.fetchRootMenuBySourceSid(s.getSourceSid()); - List sysMenuVoList = sysMenuService.fetchRootMenuBySourceSid(""); + List sysMenuVoList = sysMenuService.fetchRootMenuBySourceSid(s.getSourceSid()); s.setChildren(sysMenuVoList); s.setIsSource("1"); //判断该资源下的菜单是否有可用的状态 @@ -437,8 +437,6 @@ public class SysMenuService extends MybatisBaseService { sysRoleAuthorize.setSourceSid(dto.getSourceSid()); sysRoleAuthorizeService.save(sysRoleAuthorize); } - SysRoleAuthorize sysRoleAuthorize=new SysRoleAuthorize(); - sysRoleAuthorizeService.save(sysRoleAuthorize); } public List selectByMenuUrl(String menuUrl) { diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuTreeVo.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuTreeVo.java index 99fe0ba..dba60ba 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuTreeVo.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuTreeVo.java @@ -61,4 +61,5 @@ public class SysMenuTreeVo implements Vo { @ApiModelProperty("子菜单") private List children; private String orgSid; + private String btnKey; } diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuVo.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuVo.java index 53ba103..6b71b7b 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuVo.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuVo.java @@ -72,4 +72,5 @@ public class SysMenuVo implements Vo { @ApiModelProperty("资源名称") private String sourceName; private String cid; + private String btnKey; } diff --git a/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeQuery.java b/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeQuery.java index b7127db..67e8182 100644 --- a/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeQuery.java +++ b/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeQuery.java @@ -36,5 +36,6 @@ public class SysRoleAuthorizeQuery implements Query { private String sourceSid; @ApiModelProperty("是否是系统管理员") private String isAdmin; + private String menuType; } diff --git a/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeService.java b/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeService.java index deea6ab..84b4ef3 100644 --- a/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeService.java +++ b/src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeService.java @@ -62,6 +62,9 @@ public class SysRoleAuthorizeService extends MybatisBaseService 0) { qw.in("rm.roleSid", query.getRoleSids()); } + if (StringUtils.isNotBlank(query.getMenuType())) { + qw.ne("m.menuType", query.getMenuType()); + } qw.eq("m.isShow", 1); qw.orderByAsc("m.sortNo"); } diff --git a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java index 6a75ec3..5349d80 100644 --- a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java +++ b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java @@ -35,7 +35,7 @@ public interface SysSourceMapper extends BaseMapper { List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); - @Select("select * from sys_source where sid=#{sourceSid}") +// @Select("select * from sys_source where sid=#{sourceSid}") List selectListVo(@Param("sourceSid") String sourceSid); @Select("select * from sys_source where sid=#{sid}") @@ -48,7 +48,7 @@ public interface SysSourceMapper extends BaseMapper { * * @return */ - List listMenuTreeVo(String sourceSid); + List listMenuTreeVo(@Param("sourceSid") String sourceSid); List listFunctionTreeVo(String name); } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml index 12ec503..38d7bb9 100644 --- a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml +++ b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml @@ -22,7 +22,7 @@ SELECT * FROM sys_source - sid=#{sourceSid} + where sid=#{sourceSid} \ No newline at end of file