| | |
| | | package com.qianwen.smartman.modules.system.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.Wrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import java.lang.invoke.SerializedLambda; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import javax.validation.Valid; |
| | | import com.qianwen.smartman.common.cache.RegionCache; |
| | | import com.qianwen.smartman.common.constant.ExtCacheConstant; |
| | | import com.qianwen.smartman.common.constant.MenuConstant; |
| | | import com.qianwen.smartman.common.enums.MenuCategoryEnum; |
| | | |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import com.qianwen.core.boot.ctrl.BladeController; |
| | | import com.qianwen.core.cache.utils.CacheUtil; |
| | | import com.qianwen.core.mp.support.Condition; |
| | |
| | | import com.qianwen.core.tool.api.R; |
| | | import com.qianwen.core.tool.support.Kv; |
| | | import com.qianwen.core.tool.utils.Func; |
| | | import com.qianwen.smartman.common.cache.RegionCache; |
| | | import com.qianwen.smartman.common.constant.ExtCacheConstant; |
| | | import com.qianwen.smartman.common.constant.MenuConstant; |
| | | import com.qianwen.smartman.common.enums.MenuCategoryEnum; |
| | | import com.qianwen.smartman.modules.system.entity.Menu; |
| | | import com.qianwen.smartman.modules.system.entity.TopMenu; |
| | | import com.qianwen.smartman.modules.system.service.IMenuService; |
| | |
| | | import com.qianwen.smartman.modules.system.vo.GrantTreeVO; |
| | | import com.qianwen.smartman.modules.system.vo.MenuVO; |
| | | import com.qianwen.smartman.modules.system.wrapper.MenuWrapper; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import springfox.documentation.annotations.ApiIgnore; |
| | | |
| | | @Api(value = "菜单", tags = {"菜单"}) |
| | |
| | | public class MenuController extends BladeController { |
| | | private final IMenuService menuService; |
| | | private final ITopMenuService topMenuService; |
| | | |
| | | private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) { |
| | | String implMethodName = lambda.getImplMethodName(); |
| | | boolean z = true; |
| | | switch (implMethodName.hashCode()) { |
| | | case -75145708: |
| | | if (implMethodName.equals("getSort")) { |
| | | z = false; |
| | | break; |
| | | } |
| | | break; |
| | | case 2128411252: |
| | | if (implMethodName.equals("getCategory")) { |
| | | z = true; |
| | | break; |
| | | } |
| | | break; |
| | | } |
| | | switch (z) { |
| | | case false: |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Menu") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { |
| | | return (v0) -> { |
| | | return v0.getSort(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Menu") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { |
| | | return (v0) -> { |
| | | return v0.getSort(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/TopMenu") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { |
| | | return (v0) -> { |
| | | return v0.getSort(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Menu") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { |
| | | return (v0) -> { |
| | | return v0.getSort(); |
| | | }; |
| | | } |
| | | break; |
| | | case true: |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Menu") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { |
| | | return (v0) -> { |
| | | return v0.getCategory(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Menu") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { |
| | | return (v0) -> { |
| | | return v0.getCategory(); |
| | | }; |
| | | } |
| | | break; |
| | | } |
| | | throw new IllegalArgumentException("Invalid lambda deserialization"); |
| | | } |
| | | |
| | | public MenuController(final IMenuService menuService, final ITopMenuService topMenuService) { |
| | | this.menuService = menuService; |
| | |
| | | @GetResource({"/list"}) |
| | | @ApiOperation(value = "列表", notes = "传入menu") |
| | | public R<List<MenuVO>> list(@RequestParam @ApiIgnore Map<String, Object> menu) { |
| | | List<Menu> list = this.menuService.list((Wrapper) Condition.getQueryWrapper(menu, Menu.class).lambda().orderByAsc((v0) -> { |
| | | List<Menu> list = this.menuService.list(Condition.getQueryWrapper(menu, Menu.class).lambda().orderByAsc((v0) -> { |
| | | return v0.getSort(); |
| | | })); |
| | | return R.data(MenuWrapper.build().listNodeVO(list)); |
| | |
| | | @GetResource({"/menu-list"}) |
| | | @ApiOperation(value = "菜单列表", notes = "传入menu") |
| | | public R<List<MenuVO>> menuList(@RequestParam @ApiIgnore Map<String, Object> menu) { |
| | | List<Menu> list = this.menuService.list(Condition.getQueryWrapper(menu, Menu.class).lambda().eq(Menu::getCategory, Integer.valueOf(1)).orderByAsc(Menu::getSort)); |
| | | /* |
| | | List<Menu> list = this.menuService.list((Wrapper) ((LambdaQueryWrapper) Condition.getQueryWrapper(menu, Menu.class).lambda().eq((v0) -> { |
| | | return v0.getCategory(); |
| | | }, 1)).orderByAsc((v0) -> { |
| | | return v0.getSort(); |
| | | })); |
| | | }));*/ |
| | | return R.data(MenuWrapper.build().listNodeVO(list)); |
| | | } |
| | | |
| | |
| | | @ApiOperation(value = "前端菜单数据", notes = "前端菜单数据") |
| | | public R<List<MenuVO>> routes(BladeUser user, Long topMenuId, String appCode) { |
| | | List<MenuVO> list = this.menuService.routes(user == null ? null : user.getRoleId(), topMenuId); |
| | | List<MenuVO> vos = (List) list.stream().filter(menu -> { |
| | | List<MenuVO> vos = list.stream().filter(menu -> { |
| | | return MenuConstant.DESK.equals(menu.getCode()) || Func.isNotEmpty(menu.getChildren()); |
| | | }).collect(Collectors.toList()); |
| | | if (Func.isNotEmpty(appCode)) { |
| | | vos = (List) vos.stream().filter(menuVO -> { |
| | | vos = vos.stream().filter(menuVO -> { |
| | | return appCode.equals(menuVO.getBelongApplication()); |
| | | }).collect(Collectors.toList()); |
| | | } |
| | |
| | | if (Func.isEmpty(user)) { |
| | | return null; |
| | | } |
| | | |
| | | List<TopMenu> list = this.topMenuService.list(Wrappers.<TopMenu>query().lambda().orderByAsc(TopMenu::getSort)); |
| | | /* |
| | | List<TopMenu> list = this.topMenuService.list((Wrapper) Wrappers.query().lambda().orderByAsc((v0) -> { |
| | | return v0.getSort(); |
| | | })); |
| | | }));*/ |
| | | return R.data(list); |
| | | } |
| | | |
| | |
| | | @GetResource({"/list-not-radio"}) |
| | | @ApiOperation(value = "列表(无按钮)", notes = "传入menu") |
| | | public R<List<MenuVO>> listNotRadio(@RequestParam @ApiIgnore Map<String, Object> menu) { |
| | | List<Menu> list = this.menuService.list(Condition.getQueryWrapper(menu, Menu.class).lambda().in(Menu::getCategory, MenuCategoryEnum.getMenus()).orderByAsc(Menu::getSort)); |
| | | /* |
| | | List<Menu> list = this.menuService.list((Wrapper) ((LambdaQueryWrapper) Condition.getQueryWrapper(menu, Menu.class).lambda().in((v0) -> { |
| | | return v0.getCategory(); |
| | | }, MenuCategoryEnum.getMenus())).orderByAsc((v0) -> { |
| | | return v0.getSort(); |
| | | })); |
| | | }));*/ |
| | | return R.data(MenuWrapper.build().listNodeVO(list)); |
| | | } |
| | | |