From f9114ffadfab1c01198dd980c3afb66d0c44a5ea Mon Sep 17 00:00:00 2001
From: zzw <228544128@qq.com>
Date: 星期二, 06 十月 2026 18:22:00 +0800
Subject: [PATCH] fix: limit equipment picker to selected X number

---
 emergency-repair-server/src/main/java/com/emergencyrepair/system/service/SystemService.java |   21 +--------------------
 1 files changed, 1 insertions(+), 20 deletions(-)

diff --git a/emergency-repair-server/src/main/java/com/emergencyrepair/system/service/SystemService.java b/emergency-repair-server/src/main/java/com/emergencyrepair/system/service/SystemService.java
index e06db50..1775f6e 100644
--- a/emergency-repair-server/src/main/java/com/emergencyrepair/system/service/SystemService.java
+++ b/emergency-repair-server/src/main/java/com/emergencyrepair/system/service/SystemService.java
@@ -414,30 +414,11 @@
         if (!StringUtils.hasText(xNo)) {
             return productTreeRoots();
         }
-        List<ProductNode> rootNodes = productNodeMapper.selectList(Wrappers.<ProductNode>lambdaQuery()
-                .and(wrapper -> wrapper.isNull(ProductNode::getParentId).or().eq(ProductNode::getParentId, 0L))
-                .orderByAsc(ProductNode::getSortNo).orderByAsc(ProductNode::getId));
         List<ProductNode> sideNodes = productNodeMapper.selectList(Wrappers.<ProductNode>lambdaQuery()
                 .in(ProductNode::getLayer, Arrays.asList("side", "SIDE"))
                 .eq(ProductNode::getName, xNo.trim())
                 .orderByAsc(ProductNode::getSortNo).orderByAsc(ProductNode::getId));
-        Map<Long, ProductNode> roots = uniqueProductNodes(rootNodes);
-        Map<Long, ProductNode> sides = uniqueProductNodes(sideNodes);
-        Set<Long> branchIds = new HashSet<>();
-        branchIds.addAll(roots.keySet());
-        branchIds.addAll(sides.keySet());
-        Map<Long, Map<String, Object>> rootRows = new LinkedHashMap<>();
-        for (ProductNode root : sortProductNodes(roots.values())) {
-            rootRows.put(root.getId(), mapProduct(root, branchIds));
-        }
-        for (ProductNode side : sortProductNodes(sides.values())) {
-            ProductNode root = findProductRoot(side);
-            Map<String, Object> rootRow = root == null ? null : rootRows.get(root.getId());
-            if (rootRow != null) {
-                children(rootRow).add(mapProduct(side, branchIds));
-            }
-        }
-        return new ArrayList<>(rootRows.values());
+        return mapProductTreeNodes(sideNodes, Collections.emptySet());
     }
 
     public List<String> productXNumbers() {

--
Gitblit v1.9.1