Browse Source

完善功能中设置菜单列表的查询

master
yxt_djz 2 years ago
parent
commit
5d73a39e55
  1. 7
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmenu/SysMenuFeign.java
  2. 6
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmenu/SysMenuFeignFallback.java
  3. 30
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmenu/SysMenuFunctionQuery.java
  4. 31
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuRest.java

7
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmenu/SysMenuFeign.java

@ -50,6 +50,13 @@ public interface SysMenuFeign {
@ApiOperation("菜单列表:根据资源归类")
@PostMapping("/listAllVoForSource")
public ResultBean<List<SysMenuTreeVo>> listAllVoForSource(@RequestBody SysMenuQuery query);
/**
* 菜单列表根据资源归类 设置功能的url用
* @return
*/
@ApiOperation("菜单列表:根据资源归类 设置功能的url用")
@PostMapping("/getMenusForFunction")
public ResultBean<List<Map<String,String>>> getMenusForFunction(@RequestBody SysMenuFunctionQuery sysMenuFunctionQuery);
@ApiOperation("根据资源sid查询所有数据列表 ")
@PostMapping("/sourcemenutree")

6
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmenu/SysMenuFeignFallback.java

@ -4,6 +4,7 @@ import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Map;
@ -42,6 +43,11 @@ public class SysMenuFeignFallback implements SysMenuFeign {
return rb.setMsg("接口anrui_portal/sysmenu/listAllVoForSource无法访问");
}
@Override
public ResultBean<List<Map<String, String>>> getMenusForFunction( SysMenuFunctionQuery sysMenuFunctionQuery) {
return null;
}
@Override
public ResultBean<List<Map<String, Object>>> sourcemenutree(SysMenuQuery query) {
ResultBean rb = ResultBean.fireFail();

30
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmenu/SysMenuFunctionQuery.java

@ -0,0 +1,30 @@
package com.yxt.anrui.portal.api.sysmenu;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui_portal(门户建设) <br/>
* File: SysMenuQuery.java <br/>
* Class: com.yxt.anrui.portal.api.sysmenu.SysMenuQuery <br/>
* Description: 菜单表 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-08-03 00:24:28 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@ApiModel(value = "菜单表 查询条件 功能菜单设置查询用", description = "菜单表 查询条件 功能菜单设置查询用")
@Data
public class SysMenuFunctionQuery implements Query {
@ApiModelProperty("资源sid")
private String sourceSid;
}

31
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmenu/SysMenuRest.java

@ -25,6 +25,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@ -82,6 +83,36 @@ public class SysMenuRest implements SysMenuFeign {
return rb.success().setData(list);
}
@Override
public ResultBean<List<Map<String, String>>> getMenusForFunction(@RequestBody SysMenuFunctionQuery sysMenuFunctionQuery) {
ResultBean rb = ResultBean.fireFail();
SysMenuQuery smq= new SysMenuQuery();
smq.setSourceSid(sysMenuFunctionQuery.getSourceSid());
List<SysMenuTreeVo> list = sysMenuService.listAllVoForSource(smq);
List<Map<String,String>> l=new ArrayList<>();
list.forEach(f->{
if(sysMenuFunctionQuery.getSourceSid().equals(f.getSourceSid())){
makeMenuListForChildren(f,l);
}
});
return rb.success().setData(l);
}
private void makeMenuListForChildren(SysMenuTreeVo s, List<Map<String,String>> l){
List<SysMenuTreeVo> children = s.getChildren();
int size = children.size();
for (int i=0;i<size;i++){
makeMenuListForChildren( children.get(i), l) ;
}
String menuUrl = s.getMenuUrl();
if(StringUtils.isNotBlank(menuUrl)){
Map<String,String> m=new HashMap<>();
m.put("name",s.getName());
m.put("url",s.getMenuUrl());
m.put("sid",s.getSid());
l.add(m);
}
}
@Override
public ResultBean<List<Map<String, Object>>> sourcemenutree(SysMenuQuery query) {
ResultBean<List<Map<String, Object>>> rb = ResultBean.fireFail();

Loading…
Cancel
Save