diff --git a/src/main/java/cokr/xit/fims/base/web/UserController.java b/src/main/java/cokr/xit/fims/base/web/UserController.java index 3e9ade78..638a7977 100644 --- a/src/main/java/cokr/xit/fims/base/web/UserController.java +++ b/src/main/java/cokr/xit/fims/base/web/UserController.java @@ -14,6 +14,7 @@ import cokr.xit.base.code.CommonCode; import cokr.xit.base.code.service.CodeQuery; import cokr.xit.base.code.service.CodeService; import cokr.xit.base.code.service.bean.CodeBean; +import cokr.xit.base.security.Authority; import cokr.xit.base.security.SecuredUserInfo; import cokr.xit.base.security.access.service.AuthorityService; import cokr.xit.base.user.UserQuery; @@ -117,12 +118,16 @@ public class UserController extends cokr.xit.base.user.web.UserController taskList = codeBean.getCodeList(codeQuery); - String[] taskRoles = taskList.stream().map((item) -> { return "ROLE_"+item.string("CODE"); }) - .toList().toArray(new String[taskList.size()]); - boolean hasTaskAuth = userInfo.hasAuthorities(taskRoles); + List user_auths = userInfo.getAuthorities().stream().map(Authority::getAuthority).toList(); + List user_taskList = codeBean.getCodeList(new CodeQuery().setGroupIDs("FIM054")) + .stream().map(row -> row.string("CODE")).toList() + .stream().filter(task -> { + for (String auth: user_auths) + if (auth.contains(task)) + return true; + return false; + }).toList(); + boolean hasTaskAuth = !user_taskList.isEmpty(); userInfo.getInfo().put("hasTaskAuth", hasTaskAuth); diff --git a/src/main/java/cokr/xit/fims/cmmn/service/bean/StngBean.java b/src/main/java/cokr/xit/fims/cmmn/service/bean/StngBean.java index a4c5a307..de67d9fc 100644 --- a/src/main/java/cokr/xit/fims/cmmn/service/bean/StngBean.java +++ b/src/main/java/cokr/xit/fims/cmmn/service/bean/StngBean.java @@ -115,8 +115,10 @@ public class StngBean extends AbstractBean { for(int i=0; i