diff --git a/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormFilter.java b/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormFilter.java index b983e44e..1726a7c4 100644 --- a/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormFilter.java +++ b/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormFilter.java @@ -58,6 +58,7 @@ public class FormFilter extends org.apache.shiro.web.filter.authc.FormAuthentica public static final Boolean POST_ROLE_PERMI = Global.getConfigToBoolean("user.postRolePermi", "false"); public static final Boolean SWITCH_OFFICE = Global.getConfigToBoolean("user.switchOffice", "false"); + public static final Boolean LOGIN_AFTER_ACTIVE_MAIN_OFFICE = Global.getConfigToBoolean("user.loginAfterActiveMainOffice", "false"); private static final Logger logger = LoggerFactory.getLogger(FormFilter.class); @@ -497,7 +498,9 @@ public class FormFilter extends org.apache.shiro.web.filter.authc.FormAuthentica } if (SWITCH_OFFICE && User.USER_TYPE_EMPLOYEE.equals(user.getUserType())) { data.put("switchOffice", "true"); - data.put("officeCode", session.getAttribute("officeCode")); + // 登录后指定当前部门,即当前部门权限,否则为混合权限 + data.put("officeCode", LOGIN_AFTER_ACTIVE_MAIN_OFFICE ? EmpUtils.getCurrentOfficeCode() + : session.getAttribute("officeCode")); data.put("officeName", EmpUtils.getCurrentOfficeName()); } data.put("desktopUrl", desktopUrl != null ? desktopUrl : Global.getConfig("sys.index.desktopUrl")); diff --git a/modules/core/src/main/resources/config/jeesite-core.yml b/modules/core/src/main/resources/config/jeesite-core.yml index df5248ab..4c44e9cd 100644 --- a/modules/core/src/main/resources/config/jeesite-core.yml +++ b/modules/core/src/main/resources/config/jeesite-core.yml @@ -194,6 +194,9 @@ user: # 是否启用切换部门功能,再开启启用岗位角色后可支持 用户->附属部门->岗位->关联角色,纳入菜单和权限管理 v5.10.1 switchOffice: false + + # 登录后激活当前用户所在的主部门,默认为不激活即混合权限 + loginAfterActiveMainOffice: false # 多租户模式(SAAS模式)(专业版) useCorpModel: false diff --git a/web-api/src/main/resources/config/application.yml b/web-api/src/main/resources/config/application.yml index 8afdafaf..665fd248 100644 --- a/web-api/src/main/resources/config/application.yml +++ b/web-api/src/main/resources/config/application.yml @@ -384,6 +384,9 @@ user: # # # 是否启用切换部门功能,再开启启用岗位角色后可支持 用户->附属部门->岗位->关联角色,纳入菜单和权限管理 v5.10.1 # switchOffice: false +# +# # 登录后激活当前用户所在的主部门,默认为不激活即混合权限 +# loginAfterActiveMainOffice: false # 多租户模式(SAAS模式)(专业版) useCorpModel: false diff --git a/web/src/main/resources/config/application.yml b/web/src/main/resources/config/application.yml index 9792006b..475ec7c1 100644 --- a/web/src/main/resources/config/application.yml +++ b/web/src/main/resources/config/application.yml @@ -384,6 +384,9 @@ user: # # # 是否启用切换部门功能,再开启启用岗位角色后可支持 用户->附属部门->岗位->关联角色,纳入菜单和权限管理 v5.10.1 # switchOffice: false +# +# # 登录后激活当前用户所在的主部门,默认为不激活即混合权限 +# loginAfterActiveMainOffice: false # 多租户模式(SAAS模式)(专业版) useCorpModel: false