@@ -566,8 +566,8 @@
|
|||||||
</h1><!-- /monitoring/images/top_logo.png -->
|
</h1><!-- /monitoring/images/top_logo.png -->
|
||||||
<div class="topmenu_box">
|
<div class="topmenu_box">
|
||||||
<ul>
|
<ul>
|
||||||
<li style="width:240px;" id="newDashboardShow">
|
<li style="width:240px;">
|
||||||
<a style="width:240px;"
|
<a style="width:240px; cursor: default"
|
||||||
href="#"><span><%=SessionManager.getUserName(request) %>(<%=SessionManager.getUserId(request) %>-<%=System.getProperty("inst.Name") %>)</span>
|
href="#"><span><%=SessionManager.getUserName(request) %>(<%=SessionManager.getUserId(request) %>-<%=System.getProperty("inst.Name") %>)</span>
|
||||||
<span onClick="javascript:openColorPopup();"><%=localeMessage.getString("screen.customer") %></span>
|
<span onClick="javascript:openColorPopup();"><%=localeMessage.getString("screen.customer") %></span>
|
||||||
<% if (!"".equals(LastLoginYms.trim())) { %>
|
<% if (!"".equals(LastLoginYms.trim())) { %>
|
||||||
|
|||||||
@@ -1,5 +1,9 @@
|
|||||||
package com.eactive.eai.rms.common.acl.sitemap;
|
package com.eactive.eai.rms.common.acl.sitemap;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.Model;
|
import org.springframework.ui.Model;
|
||||||
@@ -7,6 +11,7 @@ import org.springframework.web.bind.annotation.GetMapping;
|
|||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
import com.eactive.eai.rms.common.base.BaseAnnotationController;
|
import com.eactive.eai.rms.common.base.BaseAnnotationController;
|
||||||
|
import com.eactive.eai.rms.common.login.SessionManager;
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@@ -15,8 +20,10 @@ public class SitemapController extends BaseAnnotationController {
|
|||||||
private final SitemapService sitemapService;
|
private final SitemapService sitemapService;
|
||||||
|
|
||||||
@GetMapping(value = "/common/acl/sitemap/sitemapMan.view")
|
@GetMapping(value = "/common/acl/sitemap/sitemapMan.view")
|
||||||
public String view(@RequestParam(value = "serviceType", required = false) String serviceType, Model model) {
|
public String view(@RequestParam(value = "serviceType", required = false) String serviceType,
|
||||||
model.addAttribute("sitemapTree", sitemapService.getSitemapTree(serviceType));
|
HttpServletRequest request, Model model) {
|
||||||
|
List<String> roleIds = SessionManager.getRoleId(request);
|
||||||
|
model.addAttribute("sitemapTree", sitemapService.getSitemapTree(roleIds, serviceType));
|
||||||
return "/common/acl/sitemap/sitemapMan";
|
return "/common/acl/sitemap/sitemapMan";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,6 @@ import com.eactive.eai.rms.common.acl.sitemap.ui.SitemapNode;
|
|||||||
|
|
||||||
public interface SitemapService {
|
public interface SitemapService {
|
||||||
|
|
||||||
public List<SitemapNode> getSitemapTree(String serviceType);
|
public List<SitemapNode> getSitemapTree(List<String> roleIds, String serviceType);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ public class SitemapServiceImpl extends BaseService implements SitemapService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private RoleMenuAuthService roleMenuAuthService;
|
private RoleMenuAuthService roleMenuAuthService;
|
||||||
|
|
||||||
public List<SitemapNode> getSitemapTree(String serviceType) {
|
public List<SitemapNode> getSitemapTree(List<String> roleIds, String serviceType) {
|
||||||
Menu root = menuService.getById("ROOT_DEV");
|
Menu root = menuService.getById("ROOT_DEV");
|
||||||
Menu langRoot = findLangRoot(root);
|
Menu langRoot = findLangRoot(root);
|
||||||
List<SitemapNode> tree = new ArrayList<>();
|
List<SitemapNode> tree = new ArrayList<>();
|
||||||
@@ -38,7 +38,7 @@ public class SitemapServiceImpl extends BaseService implements SitemapService {
|
|||||||
|
|
||||||
Set<String> serviceTypeMenuIds = StringUtils.isBlank(serviceType)
|
Set<String> serviceTypeMenuIds = StringUtils.isBlank(serviceType)
|
||||||
? null
|
? null
|
||||||
: new HashSet<>(roleMenuAuthService.findMenuIdsByServiceType(serviceType));
|
: new HashSet<>(roleMenuAuthService.findMenuIdsByRoleIdsAndServiceType(roleIds, serviceType));
|
||||||
|
|
||||||
for (Menu menu : sortedChildren(langRoot)) {
|
for (Menu menu : sortedChildren(langRoot)) {
|
||||||
if (isVisible(menu) && matchesServiceType(menu, serviceTypeMenuIds)) {
|
if (isVisible(menu) && matchesServiceType(menu, serviceTypeMenuIds)) {
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ public class RoleMenuAuthService extends AbstractEMSDataSerivce<RoleMenuAuth, Ro
|
|||||||
.fetch();
|
.fetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<String> findMenuIdsByServiceType(String serviceType) {
|
public List<String> findMenuIdsByRoleIdsAndServiceType(List<String> roleIds, String serviceType) {
|
||||||
|
|
||||||
QRoleMenuAuth qRoleMenuAuth = QRoleMenuAuth.roleMenuAuth;
|
QRoleMenuAuth qRoleMenuAuth = QRoleMenuAuth.roleMenuAuth;
|
||||||
|
|
||||||
@@ -59,7 +59,9 @@ public class RoleMenuAuthService extends AbstractEMSDataSerivce<RoleMenuAuth, Ro
|
|||||||
.select(qRoleMenuAuth.id.menuId)
|
.select(qRoleMenuAuth.id.menuId)
|
||||||
.distinct()
|
.distinct()
|
||||||
.from(qRoleMenuAuth)
|
.from(qRoleMenuAuth)
|
||||||
.where(qRoleMenuAuth.id.serviceType.eq(serviceType))
|
.where(qRoleMenuAuth.id.roleId.in(roleIds),
|
||||||
|
qRoleMenuAuth.auth.in("R", "W"),
|
||||||
|
qRoleMenuAuth.id.serviceType.eq(serviceType))
|
||||||
.setHint(QueryHints.CACHEABLE, true)
|
.setHint(QueryHints.CACHEABLE, true)
|
||||||
.fetch();
|
.fetch();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user