diff --git a/microservices-modules/microservices-modules-system/src/main/java/com/microservices/system/service/impl/SystemRequestCustomServiceImpl.java b/microservices-modules/microservices-modules-system/src/main/java/com/microservices/system/service/impl/SystemRequestCustomServiceImpl.java index c9af3aec1..f2e3ce304 100644 --- a/microservices-modules/microservices-modules-system/src/main/java/com/microservices/system/service/impl/SystemRequestCustomServiceImpl.java +++ b/microservices-modules/microservices-modules-system/src/main/java/com/microservices/system/service/impl/SystemRequestCustomServiceImpl.java @@ -3,6 +3,7 @@ package com.microservices.system.service.impl; import com.alibaba.fastjson2.JSONObject; import com.microservices.common.core.constant.SecurityConstants; import com.microservices.common.core.utils.ServletUtils; +import com.microservices.common.core.utils.StringUtils; import com.microservices.common.security.service.IRequestCustomService; import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Service; @@ -18,12 +19,13 @@ import javax.servlet.http.HttpServletRequest; public class SystemRequestCustomServiceImpl implements IRequestCustomService { @Override public String processRequestDeptId(HttpServletRequest request) { - Object attributeObj = request.getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE); - JSONObject jsonObject = JSONObject.from(attributeObj); - Long deptId = jsonObject.getLong("currentDeptId"); - if (deptId == null) { - return ServletUtils.getHeader(request, SecurityConstants.DEPT_ID); + String deptId = ServletUtils.getHeader(request, SecurityConstants.DEPT_ID); + if (StringUtils.isNotEmpty(deptId)) { + return deptId; + } else { + Object attributeObj = request.getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE); + JSONObject jsonObject = JSONObject.from(attributeObj); + return jsonObject.getString("currentDeptId"); } - return deptId.toString(); } }