大屏项目初始化

This commit is contained in:
2026-03-07 12:13:00 +08:00
parent d887108e1a
commit b7bfdfd2bc
9 changed files with 222 additions and 71 deletions

View File

@@ -3,11 +3,15 @@ package com.mini.mybigscreen.biz.controller;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.mini.mybigscreen.Model.Menu;
import com.mini.mybigscreen.Model.Message;
import com.mini.mybigscreen.Model.Result;
import com.mini.mybigscreen.Model.TreeMenu;
import com.mini.mybigscreen.biz.domain.HomeMenu;
import com.mini.mybigscreen.biz.domain.HomeModule;
import com.mini.mybigscreen.biz.domain.HomeRoleMenu;
import com.mini.mybigscreen.biz.mapper.HomeMenuMapper;
import com.mini.mybigscreen.biz.service.HomeMenuService;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;
@@ -28,6 +32,9 @@ import java.util.stream.Collectors;
public class HomeMenuController {
@Resource
private HomeMenuMapper homeMenuMapper;
@Resource
private HomeMenuService menuService;
@@ -124,7 +131,6 @@ public class HomeMenuController {
return treeMenu;
})
.collect(Collectors.toList());
menuList.add(new TreeMenu(menu.getMenuId(), menu.getMenuName(), treeMenus));
}
return Result.success(menuList);
@@ -135,33 +141,38 @@ public class HomeMenuController {
* 用户角色菜单
*/
@GetMapping("userList")
public Result<?> getUserList() {
List<Menu> menuList = new ArrayList<>();
LambdaQueryWrapper<HomeMenu> parentQuery = new LambdaQueryWrapper<HomeMenu>()
.eq(HomeMenu::getUstatus, "1")
.eq(HomeMenu::getParentId, "0")
public Result<?> getUserList(String roleId) {
MPJLambdaWrapper<HomeMenu> wrapper = new MPJLambdaWrapper<HomeMenu>()
.selectAll(HomeMenu.class)
.leftJoin(HomeRoleMenu.class,
HomeRoleMenu::getMenuId,
HomeMenu::getMenuId)
.eq(HomeRoleMenu::getRoleId, roleId)
.eq(HomeRoleMenu::getUstatus, "1")
.isNotNull(HomeMenu::getMenuId)
.orderByAsc(HomeMenu::getSort);
List<HomeMenu> pMenus = menuService.list(parentQuery);
for (HomeMenu menu : pMenus) {
LambdaQueryWrapper<HomeMenu> childQuery = new LambdaQueryWrapper<HomeMenu>()
.eq(HomeMenu::getParentId, menu.getMenuId());
List<HomeMenu> childMenus = menuService.list(childQuery);
menuList.add(new Menu(
menu.getMenuId(),
menu.getParentId(),
menu.getMenuName(),
menu.getMenuType(),
menu.getPath(),
menu.getMenuIcon(),
menu.getSort(),
menu.getIsIframe(),
menu.getUstatus(),
childMenus
));
}
List<HomeMenu> allMenus = homeMenuMapper.selectJoinList(HomeMenu.class, wrapper);
Map<String, List<HomeMenu>> parentIdMap = allMenus.stream()
.collect(Collectors.groupingBy(HomeMenu::getParentId));
List<Menu> menuList = allMenus.stream()
.filter(menu -> menu.getParentId().equals("0"))
.map(homeMenu -> new Menu(
homeMenu.getMenuId(),
homeMenu.getParentId(),
homeMenu.getMenuName(),
homeMenu.getMenuType(),
homeMenu.getPath(),
homeMenu.getMenuIcon(),
homeMenu.getSort(),
homeMenu.getIsIframe(),
homeMenu.getUstatus(),
parentIdMap.getOrDefault(homeMenu.getMenuId(), new ArrayList<>())
))
.collect(Collectors.toList());
return Result.success(menuList);
}
/**
* 新增/修改
*/

View File

@@ -77,8 +77,9 @@ public class HomeRoleController {
return Result.success(roleMenuService.list(query));
}
public Result<Message> save() {
@PostMapping("save")
public Result<Message> save(@RequestBody HomeRole homeRole) {
roleService.save(homeRole);
return Result.success(new Message("数据新增成功", 200));
}