From d0d78d54c61f78db83a28e15461f1be10a20b19e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Fri, 16 Jan 2026 09:21:57 +0800 Subject: [PATCH] =?UTF-8?q?feat(filter):=20=E6=9B=B4=E6=96=B0=E7=99=BD?= =?UTF-8?q?=E5=90=8D=E5=8D=95=E5=B9=B6=E4=BC=98=E5=8C=96=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E6=9F=A5=E8=AF=A2=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在AppVersionFilter白名单中添加hangUp和exportPdf接口 - 优化DeviceTypeController中的数据库查询逻辑 - 使用Set替代List避免重复数据提高查询效率 - 添加CollectionUtil非空检查增强代码健壮性 - 减少不必要的流操作提升查询性能 --- .../gongfu/controller/DeviceTypeController.java | 7 +++++-- .../nflg/mobilebroken/starter/filter/AppVersionFilter.java | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/DeviceTypeController.java b/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/DeviceTypeController.java index 11b0e951..56792126 100644 --- a/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/DeviceTypeController.java +++ b/nflg-mobilebroken-gongfu/src/main/java/com/nflg/mobilebroken/gongfu/controller/DeviceTypeController.java @@ -30,6 +30,7 @@ import javax.validation.Valid; import java.time.LocalDateTime; import java.util.Collections; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; /** @@ -58,8 +59,9 @@ public class DeviceTypeController extends ControllerBase { .eq(GongfuDeviceType::getParentId, 0) .orderByDesc(GongfuDeviceType::getId) .page(new Page<>(query.getPage(), query.getPageSize())); + Set ids = result.getRecords().stream().map(GongfuDeviceType::getId).collect(Collectors.toSet()); List children = deviceTypeService.lambdaQuery() - .in(GongfuDeviceType::getParentId, result.getRecords().stream().map(GongfuDeviceType::getId).collect(Collectors.toList())) + .in(CollectionUtil.isNotEmpty(ids), GongfuDeviceType::getParentId, ids) .list(); return ApiResult.success(convert(query, result, children)); } else { @@ -70,8 +72,9 @@ public class DeviceTypeController extends ControllerBase { if (CollectionUtil.isEmpty(children)) { return ApiResult.success(new PageData<>()); } + Set ids = children.stream().map(GongfuDeviceType::getParentId).collect(Collectors.toSet()); Page result = deviceTypeService.lambdaQuery() - .in(GongfuDeviceType::getId, children.stream().map(GongfuDeviceType::getParentId).collect(Collectors.toSet())) + .in(CollectionUtil.isNotEmpty(ids), GongfuDeviceType::getId, ids) .orderByDesc(GongfuDeviceType::getId) .page(new Page<>(query.getPage(), query.getPageSize())); return ApiResult.success(convert(query, result, children)); diff --git a/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/AppVersionFilter.java b/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/AppVersionFilter.java index 7edb802e..00048443 100644 --- a/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/AppVersionFilter.java +++ b/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/AppVersionFilter.java @@ -30,7 +30,7 @@ public class AppVersionFilter extends OncePerRequestFilter { /** * 因前端部分接口遗漏App-Version参数,ios打包重新审核需要很久,所以需要排除掉,否则会导致接口无法访问 */ - private static final Set WHITE_LIST = Set.of("getTicket", "uploadSingleFile", "getInfoById"); + private static final Set WHITE_LIST = Set.of("getTicket", "uploadSingleFile", "getInfoById", "hangUp", "exportPdf"); private static final String MIN_SUPPER_VERSION = "1.0.9";