From 34ea140004d4787d874c024839bdbe2ccf007d2f Mon Sep 17 00:00:00 2001 From: lijiahang Date: Tue, 14 Nov 2023 19:28:51 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E8=A7=84=E8=8C=83=E5=8C=96?= =?UTF-8?q?=E4=BB=A3=E7=A0=81.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DataGroupRelServiceImpl.java | 17 +++-- .../host-group/host-group-tree-selector.vue | 62 +++++++++++++++++++ .../host-identity/host-identity-selector.vue | 17 ++--- .../asset/host-key/host-key-selector.vue | 16 ++--- .../meta/tag/tag-multi-selector.vue | 20 +++--- .../system/dict-key/dict-key-selector.vue | 17 ++--- .../user/role/user-role-selector.vue | 16 ++--- .../components/user/role/user-selector.vue | 18 +++--- orion-ops-ui/src/store/modules/cache/index.ts | 3 +- orion-ops-ui/src/store/modules/cache/types.ts | 4 +- .../asset/host/components/host-card-list.vue | 2 +- .../asset/host/components/host-form-modal.vue | 8 ++- .../asset/host/components/host-table.vue | 2 +- orion-ops-ui/src/views/asset/host/index.vue | 6 +- 14 files changed, 148 insertions(+), 60 deletions(-) create mode 100644 orion-ops-ui/src/components/asset/host-group/host-group-tree-selector.vue diff --git a/orion-ops-module-infra/orion-ops-module-infra-service/src/main/java/com/orion/ops/module/infra/service/impl/DataGroupRelServiceImpl.java b/orion-ops-module-infra/orion-ops-module-infra-service/src/main/java/com/orion/ops/module/infra/service/impl/DataGroupRelServiceImpl.java index 6e30e4f4..08956199 100644 --- a/orion-ops-module-infra/orion-ops-module-infra-service/src/main/java/com/orion/ops/module/infra/service/impl/DataGroupRelServiceImpl.java +++ b/orion-ops-module-infra/orion-ops-module-infra-service/src/main/java/com/orion/ops/module/infra/service/impl/DataGroupRelServiceImpl.java @@ -256,18 +256,27 @@ public class DataGroupRelServiceImpl implements DataGroupRelService { if (Strings.isBlank(type) || Lists.isEmpty(relIdList)) { return 0; } - // 查询 group - List groupIdList = dataGroupRelDAO.of() + // 查询需要删除的数据 + List rows = dataGroupRelDAO.of() .createWrapper() .eq(DataGroupRelDO::getType, type) .in(DataGroupRelDO::getRelId, relIdList) .then() - .stream() + .list(); + if (rows.isEmpty()) { + return 0; + } + // 需要删除的 id + List idList = rows.stream() + .map(DataGroupRelDO::getId) + .collect(Collectors.toList()); + // 需要删除的 groupId + List groupIdList = rows.stream() .map(DataGroupRelDO::getGroupId) .distinct() .collect(Collectors.toList()); // 删除数据库 - int effect = dataGroupRelDAO.deleteBatchIds(relIdList); + int effect = dataGroupRelDAO.deleteBatchIds(idList); // 删除缓存 this.deleteCache(type, groupIdList); return effect; diff --git a/orion-ops-ui/src/components/asset/host-group/host-group-tree-selector.vue b/orion-ops-ui/src/components/asset/host-group/host-group-tree-selector.vue new file mode 100644 index 00000000..62ad26f5 --- /dev/null +++ b/orion-ops-ui/src/components/asset/host-group/host-group-tree-selector.vue @@ -0,0 +1,62 @@ + + + + + + + diff --git a/orion-ops-ui/src/components/asset/host-identity/host-identity-selector.vue b/orion-ops-ui/src/components/asset/host-identity/host-identity-selector.vue index a8302287..bf0ce623 100644 --- a/orion-ops-ui/src/components/asset/host-identity/host-identity-selector.vue +++ b/orion-ops-ui/src/components/asset/host-identity/host-identity-selector.vue @@ -1,6 +1,6 @@ @@ -13,7 +13,7 @@