Skip to content

Commit 654db90

Browse files
committed
优化
1 parent 1daba72 commit 654db90

File tree

2 files changed

+20
-56
lines changed

2 files changed

+20
-56
lines changed

iBase4J-SYS-Service/src/main/java/org/ibase4j/service/impl/SysMenuServiceImpl.java

Lines changed: 20 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import org.springframework.beans.factory.annotation.Autowired;
1313
import org.springframework.cache.annotation.CacheConfig;
1414

15-
import com.alibaba.dubbo.config.annotation.Service;
1615
import com.weibo.api.motan.config.springsupport.annotation.MotanService;
1716

1817
import top.ibase4j.core.base.BaseServiceImpl;
@@ -23,7 +22,6 @@
2322
* @version 2016年5月20日 下午3:19:19
2423
*/
2524
@CacheConfig(cacheNames = "sysMenu")
26-
@Service(interfaceClass = SysMenuService.class)
2725
@MotanService(interfaceClass = SysMenuService.class)
2826
public class SysMenuServiceImpl extends BaseServiceImpl<SysMenu, SysMenuMapper> implements SysMenuService {
2927
@Autowired
@@ -50,90 +48,58 @@ public List<SysMenu> queryList(Map<String, Object> params) {
5048
params.put("orderBy", "parent_id,sort_no");
5149
List<SysMenu> pageInfo = super.queryList(params);
5250
Map<String, String> menuTypeMap = sysDicService.queryDicByType("MENUTYPE");
53-
Map<Long, Integer> leafMap = InstanceUtil.newHashMap();
5451
List<SysMenu> resultList = InstanceUtil.newArrayList();
5552
Map<Long, List<SysMenu>> map = InstanceUtil.newHashMap();
5653
for (SysMenu sysMenu : pageInfo) {
5754
if (sysMenu != null) {
5855
if (sysMenu.getMenuType() != null) {
5956
sysMenu.setTypeName(menuTypeMap.get(sysMenu.getMenuType().toString()));
6057
}
61-
if (leafMap.get(sysMenu.getParentId()) == null) {
62-
leafMap.put(sysMenu.getParentId(), 0);
63-
}
64-
leafMap.put(sysMenu.getParentId(), leafMap.get(sysMenu.getParentId()) + 1);
65-
if (map.get(sysMenu.getParentId()) == null) {
66-
map.put(sysMenu.getParentId(), new ArrayList<SysMenu>());
67-
}
68-
map.get(sysMenu.getParentId()).add(sysMenu);
6958
if (sysMenu.getParentId() == null || sysMenu.getParentId() == 0) {
7059
resultList.add(sysMenu);
60+
} else {
61+
if (map.get(sysMenu.getParentId()) == null) {
62+
map.put(sysMenu.getParentId(), new ArrayList<SysMenu>());
63+
}
64+
map.get(sysMenu.getParentId()).add(sysMenu);
7165
}
7266
}
7367
}
7468
for (SysMenu sysMenu : pageInfo) {
7569
if (sysMenu != null) {
76-
if (leafMap.get(sysMenu.getId()) != null && leafMap.get(sysMenu.getId()) > 0) {
77-
sysMenu.setLeaf(0);
78-
}
7970
if (map.get(sysMenu.getId()) != null) {
71+
sysMenu.setLeaf(0);
8072
resultList.addAll(resultList.indexOf(sysMenu) + 1, map.get(sysMenu.getId()));
8173
}
8274
}
8375
}
84-
8576
return resultList;
8677
}
8778

8879
@Override
8980
public List<Object> queryTreeList(Map<String, Object> params) {
90-
params.put("orderBy", "parent_id,sort_no");
91-
List<SysMenu> pageInfo = super.queryList(params);
92-
Map<String, String> menuTypeMap = sysDicService.queryDicByType("MENUTYPE");
81+
List<SysMenu> menuList = queryList(params);
9382
Map<String, Object> dicParam = InstanceUtil.newHashMap();
9483
dicParam.put("type", "CRUD");
84+
dicParam.put("orderBy", "sort_no");
9585
List<SysDic> sysDics = sysDicService.queryList(dicParam);
96-
Map<Long, Integer> leafMap = InstanceUtil.newHashMap();
9786
List<Object> resultList = InstanceUtil.newArrayList();
98-
Map<Long, List<SysMenu>> map = InstanceUtil.newHashMap();
99-
for (SysMenu sysMenu : pageInfo) {
100-
if (sysMenu != null) {
101-
if (sysMenu.getMenuType() != null) {
102-
sysMenu.setTypeName(menuTypeMap.get(sysMenu.getMenuType().toString()));
103-
}
104-
if (leafMap.get(sysMenu.getParentId()) == null) {
105-
leafMap.put(sysMenu.getParentId(), 0);
106-
}
107-
leafMap.put(sysMenu.getParentId(), leafMap.get(sysMenu.getParentId()) + 1);
108-
if (map.get(sysMenu.getParentId()) == null) {
109-
map.put(sysMenu.getParentId(), new ArrayList<SysMenu>());
110-
}
111-
map.get(sysMenu.getParentId()).add(sysMenu);
112-
if (sysMenu.getParentId() == null || sysMenu.getParentId() == 0) {
113-
resultList.add(sysMenu);
114-
}
115-
}
116-
}
117-
for (SysMenu sysMenu : pageInfo) {
87+
resultList.addAll(menuList);
88+
for (SysMenu sysMenu : menuList) {
11889
if (sysMenu != null) {
119-
if (map.get(sysMenu.getId()) != null) {
120-
resultList.addAll(resultList.indexOf(sysMenu) + 1, map.get(sysMenu.getId()));
121-
}
122-
}
123-
}
124-
for (SysMenu sysMenu : pageInfo) {
125-
if (sysMenu != null) {
126-
if (leafMap.get(sysMenu.getId()) != null && leafMap.get(sysMenu.getId()) > 0) {
127-
sysMenu.setLeaf(0);
128-
} else {
90+
if (sysMenu.getLeaf() != 0) {
12991
List<Map<String, Object>> dicMaps = InstanceUtil.newArrayList();
13092
for (SysDic sysDic : sysDics) {
13193
if (!"read".equals(sysDic.getCode())) {
132-
Map<String, Object> dicMap = InstanceUtil.transBean2Map(sysDic);
133-
dicMap.put("id", "D" + sysDic.getId());
134-
dicMap.put("menuName", sysDic.getCodeText());
135-
dicMap.put("parentId", sysMenu.getId().toString());
136-
dicMaps.add(dicMap);
94+
if ("add".equals(sysDic.getCode()) || "update".equals(sysDic.getCode())
95+
|| "delete".equals(sysDic.getCode())
96+
|| "sys.task.scheduled".equals(sysMenu.getPermission())) {
97+
Map<String, Object> dicMap = InstanceUtil.transBean2Map(sysDic);
98+
dicMap.put("id", "D" + sysDic.getId());
99+
dicMap.put("menuName", sysDic.getCodeText());
100+
dicMap.put("parentId", sysMenu.getId().toString());
101+
dicMaps.add(dicMap);
102+
}
137103
}
138104
}
139105
resultList.addAll(resultList.indexOf(sysMenu) + 1, dicMaps);

iBase4J-SYS-Service/src/main/java/org/ibase4j/service/impl/SysUserServiceImpl.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,8 @@
2323
import com.weibo.api.motan.config.springsupport.annotation.MotanService;
2424

2525
import top.ibase4j.core.base.BaseServiceImpl;
26-
import top.ibase4j.core.exception.BusinessException;
2726
import top.ibase4j.core.support.Pagination;
2827
import top.ibase4j.core.support.login.ThirdPartyUser;
29-
import top.ibase4j.core.util.DataUtil;
3028
import top.ibase4j.core.util.InstanceUtil;
3129
import top.ibase4j.core.util.SecurityUtil;
3230

0 commit comments

Comments
 (0)