Browse Source

菜单管理

master
Mac 2 months ago
parent
commit
d5945d26a2
  1. 11
      src/main/java/com/water/watersys/controller/RouteController.java
  2. 9
      src/main/java/com/water/watersys/mapper/RouteSysMapper.java
  3. 57
      src/main/java/com/water/watersys/model/vo/RouteOv.java
  4. 5
      src/main/java/com/water/watersys/service/RouteSysService.java
  5. 8
      src/main/java/com/water/watersys/service/impl/RouteSysServiceImpl.java

11
src/main/java/com/water/watersys/controller/RouteController.java

@ -5,6 +5,7 @@ import com.water.watersys.components.Result;
import com.water.watersys.mapper.RouteSysMapper; import com.water.watersys.mapper.RouteSysMapper;
import com.water.watersys.model.domain.RoleSys; import com.water.watersys.model.domain.RoleSys;
import com.water.watersys.model.domain.RouteSys; import com.water.watersys.model.domain.RouteSys;
import com.water.watersys.model.vo.RouteOv;
import com.water.watersys.service.RoleSysService; import com.water.watersys.service.RoleSysService;
import com.water.watersys.service.RouteSysService; import com.water.watersys.service.RouteSysService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
@ -30,12 +31,16 @@ public class RouteController {
@Operation(summary = "获取路由信息", description = "获取路由信息") @Operation(summary = "获取路由信息", description = "获取路由信息")
@GetMapping("/getRoute") @GetMapping("/getRoute")
public Result<List<RouteSys>> getRoute() { public Result<List<RouteOv>> getRoute() {
String loginId = (String) StpUtil.getLoginId(); String loginId = (String) StpUtil.getLoginId();
List<RoleSys> role = roleSysService.getRole(loginId); List<RoleSys> role = roleSysService.getRole(loginId);
ArrayList<RouteSys> roleList = new ArrayList<>(); ArrayList<RouteOv> roleList = new ArrayList<>();
role.forEach(roleSys->{ role.forEach(roleSys->{
List<RouteSys> route = routeSysService.getRoute(roleSys.getId()); List<RouteOv> route = routeSysService.getRoute(roleSys.getId());
route.forEach(routeOv->{
List<RouteOv> routeChild = routeSysService.getRouteChildren(routeOv.getId());
routeOv.setChildren(routeChild);
});
roleList.addAll(route); roleList.addAll(route);
}); });
return Result.success(roleList); return Result.success(roleList);

9
src/main/java/com/water/watersys/mapper/RouteSysMapper.java

@ -2,6 +2,7 @@ package com.water.watersys.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.water.watersys.model.domain.RouteSys; import com.water.watersys.model.domain.RouteSys;
import com.water.watersys.model.vo.RouteOv;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
@ -16,8 +17,12 @@ import java.util.List;
@Mapper @Mapper
public interface RouteSysMapper extends BaseMapper<RouteSys> { public interface RouteSysMapper extends BaseMapper<RouteSys> {
@Select("select * from role_route_sys a left join route_sys b on a.route_id = b.id where a.role_id = #{loginId}") @Select("select b.id,b.parentId,b.component,b.create_time,b.meta,b.name,b.path,b.redirect,b.update_time " +
List<RouteSys> getRoute(Integer loginId); "from role_route_sys a left join route_sys b on a.route_id = b.id where a.role_id = #{loginId} and parentId is null")
List<RouteOv> getRoute(Integer loginId);
@Select("select * from route_sys where parentId = #{id}")
List<RouteOv> getRouteChildren(Integer id);
} }

57
src/main/java/com/water/watersys/model/vo/RouteOv.java

@ -0,0 +1,57 @@
package com.water.watersys.model.vo;
import lombok.Data;
import java.util.Date;
import java.util.List;
@Data
public class RouteOv {
/**
*
*/
private Integer id;
/**
* 子组件id
*/
private Integer parentid;
/**
* 路由路径
*/
private String path;
/**
* 路由名称
*/
private String name;
/**
* 重定向
*/
private String redirect;
/**
* 路由组件
*/
private String component;
/**
* 路由源信息
*/
private Object meta;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
private List<RouteOv> children;
}

5
src/main/java/com/water/watersys/service/RouteSysService.java

@ -2,6 +2,7 @@ package com.water.watersys.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.water.watersys.model.domain.RouteSys; import com.water.watersys.model.domain.RouteSys;
import com.water.watersys.model.vo.RouteOv;
import java.util.List; import java.util.List;
@ -13,5 +14,7 @@ import java.util.List;
public interface RouteSysService extends IService<RouteSys> { public interface RouteSysService extends IService<RouteSys> {
List<RouteSys> getRoute(Integer loginId); List<RouteOv> getRoute(Integer loginId);
List<RouteOv> getRouteChildren(Integer id);
} }

8
src/main/java/com/water/watersys/service/impl/RouteSysServiceImpl.java

@ -3,6 +3,7 @@ package com.water.watersys.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.water.watersys.mapper.RouteSysMapper; import com.water.watersys.mapper.RouteSysMapper;
import com.water.watersys.model.domain.RouteSys; import com.water.watersys.model.domain.RouteSys;
import com.water.watersys.model.vo.RouteOv;
import com.water.watersys.service.RouteSysService; import com.water.watersys.service.RouteSysService;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -22,9 +23,14 @@ public class RouteSysServiceImpl extends ServiceImpl<RouteSysMapper, RouteSys>
private RouteSysMapper routeSysMapper; private RouteSysMapper routeSysMapper;
@Override @Override
public List<RouteSys> getRoute(Integer loginId) { public List<RouteOv> getRoute(Integer loginId) {
return routeSysMapper.getRoute(loginId); return routeSysMapper.getRoute(loginId);
} }
@Override
public List<RouteOv> getRouteChildren(Integer id) {
return routeSysMapper.getRouteChildren(id);
}
} }

Loading…
Cancel
Save