From 69131ae7c372ed714b7a621ef5f46e1908585f21 Mon Sep 17 00:00:00 2001 From: rdpnr_puzhi <13060209078@163.com> Date: Thu, 14 Aug 2025 11:12:47 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E5=90=8E=E7=AB=AF):=20=E8=81=94=E8=B0=83?= =?UTF-8?q?=E4=BF=AE=E6=94=B911?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/entity/dao/UserDeviceGroup.java | 11 +++++-- .../entity/res/UserDeviceGroupRes.java | 8 +++++ .../impl/DeviceImageMappingServiceImpl.java | 32 ++++++++++--------- .../service/impl/DeviceServiceImpl.java | 6 ++++ .../impl/DeviceUserMappingServiceImpl.java | 8 ++++- .../service/impl/ImageServiceImpl.java | 6 ++++ .../impl/UserDeviceGroupServiceImpl.java | 3 +- .../project/service/impl/UserServiceImpl.java | 6 ++++ .../main/resources/db/user_device_group.sql | 18 ++++++++--- 9 files changed, 73 insertions(+), 25 deletions(-) diff --git a/nex-be/src/main/java/com/unisinsight/project/entity/dao/UserDeviceGroup.java b/nex-be/src/main/java/com/unisinsight/project/entity/dao/UserDeviceGroup.java index 7b87ad6..825dd1d 100644 --- a/nex-be/src/main/java/com/unisinsight/project/entity/dao/UserDeviceGroup.java +++ b/nex-be/src/main/java/com/unisinsight/project/entity/dao/UserDeviceGroup.java @@ -7,16 +7,15 @@ import java.io.Serializable; import java.util.Date; /** - * * @TableName user_device_group */ -@TableName(value ="user_device_group") +@TableName(value = "user_device_group") @Data public class UserDeviceGroup implements Serializable { /** * ID */ - @TableId(value = "id",type = IdType.AUTO) + @TableId(value = "id", type = IdType.AUTO) private Long id; /** @@ -86,6 +85,12 @@ public class UserDeviceGroup implements Serializable { @TableField(value = "deleted") private Integer deleted; + /** + * 分组是否删除: 0-否,1-是 + */ + @TableField(value = "is_deleted") + private Integer isDeleted; + /** * 描述 */ diff --git a/nex-be/src/main/java/com/unisinsight/project/entity/res/UserDeviceGroupRes.java b/nex-be/src/main/java/com/unisinsight/project/entity/res/UserDeviceGroupRes.java index 780284f..ad15ee4 100644 --- a/nex-be/src/main/java/com/unisinsight/project/entity/res/UserDeviceGroupRes.java +++ b/nex-be/src/main/java/com/unisinsight/project/entity/res/UserDeviceGroupRes.java @@ -54,6 +54,14 @@ public class UserDeviceGroupRes implements Serializable { @ApiModelProperty("全路径") private String path; + /** + * 分组是否删除: 0-否,1-是 + */ + @ApiModelProperty("分组是否删除: 0-否,1-是") + @JsonProperty("is_deleted") + private Integer isDeleted; + + @JsonProperty("children") @ApiModelProperty("下级数据") private List children; diff --git a/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceImageMappingServiceImpl.java b/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceImageMappingServiceImpl.java index d8091fd..00d682c 100644 --- a/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceImageMappingServiceImpl.java +++ b/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceImageMappingServiceImpl.java @@ -65,13 +65,11 @@ public class DeviceImageMappingServiceImpl extends ServiceImpl imageLambdaQueryWrapper = new QueryWrapper().lambda().in(Image::getId, imageIds); List images = imageMapper.selectList(imageLambdaQueryWrapper); if (CollectionUtil.isNotEmpty(images)) { - deviceImageMappingRes.forEach(deviceImage -> { - images.forEach(image -> { - if (ObjectUtil.isNotEmpty(deviceImage.getImageId()) && image.getId().equals(deviceImage.getImageId())) { - deviceImage.setImageName(image.getImageName()); - } - }); - }); + deviceImageMappingRes.forEach(deviceImage -> images.forEach(image -> { + if (ObjectUtil.isNotEmpty(deviceImage.getImageId()) && image.getId().equals(deviceImage.getImageId())) { + deviceImage.setImageName(image.getImageName()); + } + })); } } List groupIdList = deviceImageMappingRes.stream().map(DeviceImageMappingRes::getDeviceGroupId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); @@ -79,16 +77,20 @@ public class DeviceImageMappingServiceImpl extends ServiceImpl groupLambdaQueryWrapper = new QueryWrapper().lambda().in(UserDeviceGroup::getId, groupIdList); List userDeviceGroups = groupMapper.selectList(groupLambdaQueryWrapper); if (CollectionUtil.isNotEmpty(userDeviceGroups)) { - deviceImageMappingRes.forEach(deviceImage -> { - userDeviceGroups.forEach(userDeviceGroup -> { - if (ObjectUtil.isNotEmpty(deviceImage.getImageId()) && userDeviceGroup.getId().equals(deviceImage.getImageId())) { - deviceImage.setDeviceGroupName(userDeviceGroup.getName()); - } - }); - }); + deviceImageMappingRes.forEach(deviceImage -> userDeviceGroups.forEach(userDeviceGroup -> { + if (ObjectUtil.isNotEmpty(deviceImage.getImageId()) && userDeviceGroup.getId().equals(deviceImage.getImageId())) { + deviceImage.setDeviceGroupName(userDeviceGroup.getName()); + } + })); } } - + deviceImageMappingRes = deviceImageMappingRes.stream().sorted((u1, u2) -> { + // 对结果按主键排序 + if (u1.getId() != null && u2.getId() != null) { + return u1.getId().compareTo(u2.getId()); + } + return 0; + }).collect(Collectors.toList()); return Result.successResult(deviceImageMappingRes); } } diff --git a/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceServiceImpl.java b/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceServiceImpl.java index 34f4086..8d9486f 100644 --- a/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceServiceImpl.java +++ b/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceServiceImpl.java @@ -127,6 +127,12 @@ public class DeviceServiceImpl extends ServiceImpl device.setDeviceGroupName(userDeviceGroup.getName()); } } + }).sorted((u1, u2) -> { + // 对结果按主键排序 + if (u1.getId() != null && u2.getId() != null) { + return u1.getId().compareTo(u2.getId()); + } + return 0; }).collect(Collectors.toList()); convert.setData(resList); return Result.successResult(convert); diff --git a/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceUserMappingServiceImpl.java b/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceUserMappingServiceImpl.java index deba327..55b88eb 100644 --- a/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceUserMappingServiceImpl.java +++ b/nex-be/src/main/java/com/unisinsight/project/service/impl/DeviceUserMappingServiceImpl.java @@ -110,7 +110,13 @@ public class DeviceUserMappingServiceImpl extends ServiceImpl { + // 对结果按主键排序 + if (u1.getId() != null && u2.getId() != null) { + return u1.getId().compareTo(u2.getId()); + } + return 0; + }).collect(Collectors.toList()); return Result.successResult(deviceUserMappingRes); } diff --git a/nex-be/src/main/java/com/unisinsight/project/service/impl/ImageServiceImpl.java b/nex-be/src/main/java/com/unisinsight/project/service/impl/ImageServiceImpl.java index 9dc803a..2f9ef3c 100644 --- a/nex-be/src/main/java/com/unisinsight/project/service/impl/ImageServiceImpl.java +++ b/nex-be/src/main/java/com/unisinsight/project/service/impl/ImageServiceImpl.java @@ -81,6 +81,12 @@ public class ImageServiceImpl extends ServiceImpl e.setBtPath(btUrl + "/api/vdi/file/down/" + fileName); } } + }).sorted((u1, u2) -> { + // 对结果按主键排序 + if (u1.getId() != null && u2.getId() != null) { + return u1.getId().compareTo(u2.getId()); + } + return 0; }).collect(Collectors.toList()); convert.setData(collect); return Result.successResult(convert); diff --git a/nex-be/src/main/java/com/unisinsight/project/service/impl/UserDeviceGroupServiceImpl.java b/nex-be/src/main/java/com/unisinsight/project/service/impl/UserDeviceGroupServiceImpl.java index 36fc4e4..49ff81a 100644 --- a/nex-be/src/main/java/com/unisinsight/project/service/impl/UserDeviceGroupServiceImpl.java +++ b/nex-be/src/main/java/com/unisinsight/project/service/impl/UserDeviceGroupServiceImpl.java @@ -54,7 +54,7 @@ public class UserDeviceGroupServiceImpl extends ServiceImpl user.setUserGroupName(userDeviceGroup.getName()); } } + }).sorted((u1, u2) -> { + // 对结果按主键排序 + if (u1.getId() != null && u2.getId() != null) { + return u1.getId().compareTo(u2.getId()); + } + return 0; }).collect(Collectors.toList()); convert.setData(resList); return Result.successResult(convert); diff --git a/nex-be/src/main/resources/db/user_device_group.sql b/nex-be/src/main/resources/db/user_device_group.sql index b2ddefe..2d9771c 100644 --- a/nex-be/src/main/resources/db/user_device_group.sql +++ b/nex-be/src/main/resources/db/user_device_group.sql @@ -1,11 +1,19 @@ -- 数据初始化 -INSERT INTO "public"."user_device_group" ("id", "name", "type", "path", "deleted") -VALUES (1, '用户顶级组织a', '1', '1', 0), - (2, '终端顶级组织b', '2', '2', 0) +INSERT INTO "public"."user_device_group" ("id", "name", "type", "deleted", "is_deleted") +VALUES (1, '用户顶级组织a', '1', 0, 0), + (2, '终端顶级组织b', '2', 0, 0) ON CONFLICT (id) DO NOTHING; -INSERT INTO "public"."user_device_group" ("id", "name", "parent_id", "parent_name", "index", "type", "path", "deleted") -VALUES (3, '默认终端分组', 2, '终端顶级组织', '3', 2, '2', 0) +INSERT INTO "public"."user_device_group" ("id", "name", "parent_id", "parent_name", "type", "path", "deleted", "is_deleted") +VALUES (3, '默认终端分组', 2, '终端顶级组织', 2, '2', 0, 0) + ON CONFLICT (id) DO NOTHING; + +INSERT INTO "public"."user_device_group" ("id", "name", "parent_id", "parent_name", "type", "path", "deleted", "is_deleted") +VALUES (4, '黑名单', 1, '用户顶级组织a', 1, '1', 0, 0) + ON CONFLICT (id) DO NOTHING; + +INSERT INTO "public"."user_device_group" ("id", "name", "parent_id", "parent_name", "type", "path", "deleted", "is_deleted") +VALUES (5, '黑名单', 2, '终端顶级组织b', 2, '2', 0, 0) ON CONFLICT (id) DO NOTHING; -- 更新序列