1. 修复回滚父子角色功能时错误的代码逻辑,补全单元测试用例

2. 新增支持切换后业务菜单查询需限定只查询该公司业务数据能力
This commit is contained in:
chenbowen
2025-07-10 19:05:58 +08:00
parent 92959efdc6
commit 7f0957d9c4
60 changed files with 1749 additions and 64 deletions

View File

@@ -29,6 +29,8 @@ public class WebFrameworkUtils {
public static final String HEADER_VISIT_TENANT_ID = "visit-tenant-id";
public static final String HEADER_VISIT_COMPANY_ID = "visit-company-id";
public static final String HEADER_VISIT_COMPANY_NAME = "visit-company-name";
public static final String HEADER_VISIT_DEPT_ID = "visit-dept-id";
public static final String HEADER_VISIT_DEPT_NAME = "visit-dept-name";
/**
* 终端的 Header
@@ -199,13 +201,22 @@ public class WebFrameworkUtils {
}
/**
* 获得访问的公司名称,从 header 中
* 获得访问的公司名称,从 header 中,并进行 URL 解码
* @param request 请求
* @return 公司名称,解析失败或无效时返回空字符串
*/
public static String getCompanyName(HttpServletRequest request) {
String companyName = request.getHeader(HEADER_VISIT_COMPANY_NAME);
return StrUtil.isBlank(companyName) ? StrUtil.EMPTY : companyName;
if (StrUtil.isBlank(companyName)) {
return StrUtil.EMPTY;
}
try {
// URL 解码
return java.net.URLDecoder.decode(companyName, java.nio.charset.StandardCharsets.UTF_8);
} catch (Exception e) {
// 解码失败,返回原始值
return companyName;
}
}
/**
@@ -214,7 +225,7 @@ public class WebFrameworkUtils {
* @return 部门编号,解析失败或无效时返回 0
*/
public static Long getDeptId(HttpServletRequest request) {
String deptIdHeader = request.getHeader(WebFrameworkUtils.HEADER_VISIT_TENANT_ID);
String deptIdHeader = request.getHeader(WebFrameworkUtils.HEADER_VISIT_DEPT_ID);
if (StrUtil.isBlank(deptIdHeader)) {
return 0L;
}
@@ -228,12 +239,21 @@ public class WebFrameworkUtils {
}
/**
* 获得访问的部门名称,从 header 中
* 获得访问的部门名称,从 header 中,并进行 URL 解码
* @param request 请求
* @return 部门名称,解析失败或无效时返回空字符串
*/
public static String getDeptName(HttpServletRequest request) {
String deptName = request.getHeader(WebFrameworkUtils.HEADER_VISIT_COMPANY_NAME);
return StrUtil.isBlank(deptName) ? StrUtil.EMPTY : deptName;
String deptName = request.getHeader(WebFrameworkUtils.HEADER_VISIT_DEPT_NAME);
if (StrUtil.isBlank(deptName)) {
return StrUtil.EMPTY;
}
try {
// URL 解码
return java.net.URLDecoder.decode(deptName, java.nio.charset.StandardCharsets.UTF_8);
} catch (Exception e) {
// 解码失败,返回原始值
return deptName;
}
}
}