linwe
2023-12-18 13d838aea1c7983e8dfdcbe0047d2aaad1738cf7
公益报名+议事添加签名地址+菜单过滤
9 files modified
36 ■■■■■ changed files
src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/discuss/entity/TopicsEntity.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/discuss/entity/UserPublicEnrollEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/discuss/entity/UserTopicsEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/controller/MenuController.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/MenuMapper.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/MenuMapper.xml 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/IMenuService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/impl/MenuServiceImpl.java 10 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java
@@ -160,4 +160,8 @@
    @ApiModelProperty(value = "创建人", example = "")
    @TableField("create_by")
    private Long createBy;
    @ApiModelProperty(value = "0:未开启 1:已开启", example = "")
    @TableField("signature_flag")
    private Integer signatureFlag;
}
src/main/java/org/springblade/modules/discuss/entity/TopicsEntity.java
@@ -111,6 +111,8 @@
    @TableField("level")
    private Integer level;
    @ApiModelProperty(value = "选中", example = "")
    @TableField("selected")
    private String selected;
}
src/main/java/org/springblade/modules/discuss/entity/UserPublicEnrollEntity.java
@@ -75,5 +75,9 @@
    @TableField("deleted_flag")
    @TableLogic
    private Integer deletedFlag;
    @ApiModelProperty(value = "签名地址", example = "")
    @TableField("signature_path")
    private String  signaturePath;
}
src/main/java/org/springblade/modules/discuss/entity/UserTopicsEntity.java
@@ -91,5 +91,9 @@
    @TableField("selected")
    private String selected;
    @ApiModelProperty(value = "签名地址", example = "")
    @TableField("signature_path")
    private String  signaturePath;
}
src/main/java/org/springblade/modules/system/controller/MenuController.java
@@ -139,7 +139,7 @@
    @GetMapping("/dynamicMenu")
    @ApiOperation(value = "菜单列表", notes = "传入menu")
    public R<List<MenuVO>> dynamicMenu(String roleId, Long topMenuId, @RequestParam(value = "labelType", required = false) Integer labelType) {
        List<MenuVO> list = menuService.routes(roleId, topMenuId,labelType);
        List<MenuVO> list = menuService.routes(roleId, topMenuId,labelType,1);
        return R.data(list);
    }
@@ -200,7 +200,7 @@
    @ApiOperationSupport(order = 8)
    @ApiOperation(value = "前端菜单数据", notes = "前端菜单数据")
    public R<List<MenuVO>> routes(BladeUser user, Long topMenuId) {
        List<MenuVO> list = menuService.routes((user == null) ? null : user.getRoleId(), topMenuId,null);
        List<MenuVO> list = menuService.routes((user == null) ? null : user.getRoleId(), topMenuId,null,0);
        return R.data(list);
    }
src/main/java/org/springblade/modules/system/mapper/MenuMapper.java
@@ -139,7 +139,7 @@
     * @param roleId
     * @return
     */
    List<Menu> roleMenuByRoleId(List<Long> roleId);
    List<Menu> roleMenuByRoleId(List<Long> roleId,Integer menuType);
    /**
     * 权限配置菜单
src/main/java/org/springblade/modules/system/mapper/MenuMapper.xml
@@ -162,9 +162,9 @@
    </select>
    <select id="roleMenuByRoleId" resultMap="menuResultMap">
        select * from blade_menu where is_deleted = 0 and id IN
        select * from blade_menu where is_deleted = 0 and menu_type = #{param2} and id  IN
            ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
                <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
                <foreach collection="param1" index="index" item="item" open="(" separator="," close=")">
                    #{item}
                </foreach>
            )
src/main/java/org/springblade/modules/system/service/IMenuService.java
@@ -59,7 +59,7 @@
     * @param topMenuId
     * @return
     */
    List<MenuVO> routes(String roleId, Long topMenuId,Integer labelType);
    List<MenuVO> routes(String roleId, Long topMenuId,Integer labelType,Integer menuType);
    /**
     * 菜单树形结构
src/main/java/org/springblade/modules/system/service/impl/MenuServiceImpl.java
@@ -110,19 +110,19 @@
    @Override
    public List<MenuVO> routes(String roleId, Long topMenuId, Integer labelType) {
    public List<MenuVO> routes(String roleId, Long topMenuId, Integer labelType,Integer menuType) {
        if (StringUtil.isBlank(roleId)) {
            return null;
        }
        List<Menu> allMenus = baseMapper.allMenu();
        List<Menu> allMenus = baseMapper.selectList(Wrappers.<Menu>lambdaQuery().eq(Menu::getCategory,1).eq(Menu::getMenuType,menuType));
        List<Menu> roleMenus;
        // 超级管理员并且不是顶部菜单请求则返回全部菜单
        if (AuthUtil.isAdministrator() && Func.isEmpty(topMenuId)) {
            roleMenus = allMenus.stream().filter(a -> a.getMenuType().equals(0)).collect(Collectors.toList());
            roleMenus = allMenus;
        }
        // 非超级管理员并且不是顶部菜单请求则返回对应角色权限菜单
        else if (!AuthUtil.isAdministrator() && Func.isEmpty(topMenuId)) {
            roleMenus = tenantPackageMenu(baseMapper.roleMenuByRoleId(Func.toLongList(roleId)));
            roleMenus = tenantPackageMenu(baseMapper.roleMenuByRoleId(Func.toLongList(roleId), menuType));
            UserHouseLabelDTO userHouseLabelDTO = new UserHouseLabelDTO();
            userHouseLabelDTO.setUserId(AuthUtil.getUserId());
            userHouseLabelDTO.setLableType(labelType);
@@ -167,7 +167,7 @@
        // 顶部菜单请求返回对应角色权限菜单
        else {
            // 角色配置对应菜单
            List<Menu> roleIdMenus = baseMapper.roleMenuByRoleId(Func.toLongList(roleId));
            List<Menu> roleIdMenus = baseMapper.roleMenuByRoleId(Func.toLongList(roleId),menuType);
            // 反向递归角色菜单所有父级
            List<Menu> routes = new LinkedList<>(roleIdMenus);
            roleIdMenus.forEach(roleMenu -> recursion(allMenus, routes, roleMenu));