From afa5837160421d9a4e7c42b226c92210aa7c7e4e Mon Sep 17 00:00:00 2001 From: lzh Date: Thu, 29 Jan 2026 00:04:53 +0800 Subject: [PATCH] =?UTF-8?q?fix(ops):=20=E4=BF=AE=E5=A4=8D=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=E8=AE=BE=E5=A4=87=E7=B4=A2=E5=BC=95=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 问题:selectListByAreaIdAndRelationType(null, "BADGE") 生成 WHERE area_id = NULL 导致查询结果为空,索引无法初始化 修复:areaId 为 null 时不添加该查询条件,查询所有 BADGE 类型设备 Co-Authored-By: Claude Opus 4.5 --- .../mysql/area/OpsAreaDeviceRelationMapper.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/viewsh-module-ops/viewsh-module-ops-biz/src/main/java/com/viewsh/module/ops/dal/mysql/area/OpsAreaDeviceRelationMapper.java b/viewsh-module-ops/viewsh-module-ops-biz/src/main/java/com/viewsh/module/ops/dal/mysql/area/OpsAreaDeviceRelationMapper.java index 74f2d7a..f0c6c23 100644 --- a/viewsh-module-ops/viewsh-module-ops-biz/src/main/java/com/viewsh/module/ops/dal/mysql/area/OpsAreaDeviceRelationMapper.java +++ b/viewsh-module-ops/viewsh-module-ops-biz/src/main/java/com/viewsh/module/ops/dal/mysql/area/OpsAreaDeviceRelationMapper.java @@ -18,16 +18,20 @@ public interface OpsAreaDeviceRelationMapper extends BaseMapperX selectListByAreaIdAndRelationType(Long areaId, String relationType) { - return selectList(new LambdaQueryWrapperX() - .eq(OpsAreaDeviceRelationDO::getAreaId, areaId) + LambdaQueryWrapperX wrapper = new LambdaQueryWrapperX() .eq(OpsAreaDeviceRelationDO::getRelationType, relationType) - .eq(OpsAreaDeviceRelationDO::getEnabled, true) - .orderByDesc(OpsAreaDeviceRelationDO::getCreateTime)); + .eq(OpsAreaDeviceRelationDO::getEnabled, true); + + if (areaId != null) { + wrapper.eq(OpsAreaDeviceRelationDO::getAreaId, areaId); + } + + return selectList(wrapper.orderByDesc(OpsAreaDeviceRelationDO::getCreateTime)); } /**