dcs 4 mesi fa
parent
commit
7789556c8e

+ 29 - 11
virgo.api/src/main/java/com/bosshand/virgo/api/workark/service/ProductLevelService.java

@@ -7,6 +7,7 @@ import org.springframework.stereotype.Service;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
+import java.util.stream.Collectors;
 
 
 @Service
 @Service
 public class ProductLevelService {
 public class ProductLevelService {
@@ -101,25 +102,42 @@ public class ProductLevelService {
         return list;
         return list;
     }
     }
 
 
+    /**
+     * 获取目录上的所有id
+     */
     public List<Long> getAllIds(long id) {
     public List<Long> getAllIds(long id) {
+        List<ProductLevel> ls = productLevelDao.getList();
+        ProductLevel productLevel = null;
+        for (ProductLevel p : ls) {
+            if (p.getId() == id) {
+                productLevel = p;
+            }
+        }
+        List<ProductLevel> list = new ArrayList<>();
+        getMaximumParent(list, ls, productLevel);
+        list.add(productLevel);
+
         List<Long> ids = new ArrayList<>();
         List<Long> ids = new ArrayList<>();
-        ProductLevel productLevel = this.get(id);
-        getIds(ids, productLevel);
-        ids.add(id);
+        list.forEach(ll -> ids.add(ll.getId()));
         return ids;
         return ids;
     }
     }
 
 
     /**
     /**
-     * 获取目录下的所有id
+     * 根据当前目录获取目录
      */
      */
-    private void getIds(List<Long> ids, ProductLevel productLevel) {
-        List<ProductLevel> children = productLevel.getChildren();
-        if (children.size() > 0) {
-            for (ProductLevel p : children) {
-                ids.add(p.getId());
-                getIds(ids, p);
-            }
+    public ProductLevel getMaximumParent(List<ProductLevel> list, List<ProductLevel> deptAll, ProductLevel deptChild) {
+        ProductLevel dept = null;
+        long parentId = deptChild.getParentId();
+        if (parentId == -1) {
+            dept = deptChild;
+        } else {
+            List<ProductLevel> parent = deptAll.stream().filter(item -> item.getId() == parentId).collect(Collectors.toList());
+            list.addAll(parent);
+            ProductLevel maximumParent = getMaximumParent(list, deptAll, parent.get(0));
+            dept = maximumParent;
         }
         }
+        return dept;
     }
     }
 
 
+
 }
 }

+ 28 - 0
virgo.api/src/main/resources/apiclient_key.pem

@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDneLiv6hR8eMmA
+65dWA8dGkpLNehtVZZVYriuvTFbtyVSbx6U6BkZmJ4MDEWiAhctedEzzQK9R6Kmd
+zPbPFsG+okcF3QKrjvYBB61n2mnFi7kQPmARbvDF5L55F1LzDyTjz16290Tx0wDM
+GXE4gTxralz4D3eaodlEnCpA4dOX+hLJ8gMfr9PkPl7scnv29nz+HbOcdoWbEVAi
+ejBz3z6u0SDER3ZOZ5QGbUEps6hoG2dNp8w1onUte6OuICATqkVL5QsT4Z2P8jLG
+ROs8sB5PHKJdLg+vzRrgEBImn7qnVL7mhIExCBWiMGpgCkBoBGGTFHsb0vOi5Yjv
+QezivQT3AgMBAAECggEBAJGuYhadbZ1VbAUOwaWqJR5em7Rk+JULpS42GFpw4nkv
+8GdHBM97KY2bqpIgv7O8AV4GNnQWrwEPPMmLOX7m5LN1cNvY2JhfFqdZTKMDTPS+
+1o/Joi72suTp7ZNKwbMmQeJ7HjJrd+H3GhZaoO6eMAeu3qplGbKh0Juk6dcCCmko
+EYEXXcju8hwDHtONy0Qtdogz1l64clWEuObwWoW8kIvJ8iP166PEtJKdsBpWofAr
+pRQMWo0lavyoDQmRZZ5y9qRxQbU9NzmnxqRcuJE0IXxhn/oof3JpB2I7V/aZr2fx
+Om0DWklDWmngR/WSc1HLkLZKGWPgevbmXkijo//njEkCgYEA9l5wlTGCUP7gjtJI
+Q3bXPy47/SKAdn+c7XkaasFyZUW/2uxrCcSIgXobf8r9927Jj2nHa6uZeMTSljkz
+3tjSorvttAbewJ0TyKWwQA9FsMZ08oiGdy+NGV2dXPRrqBHQ8PZgcRAPRC+Q395z
+n2rjD2IrK0HjClUl2fTaz2Vfa6MCgYEA8IUx9K8u8ERy5Ca5GhhOsSmB9IaRVuLB
+/savlctn5qJhrbp3c+UsWP1zNc9nK8b02X/hdAyjkIVEFKoz/Q74mOPdzjZ4ncks
+Z1u5/rxz8CvneznDEwr8yNFSdrjBrio80XsAI0pqQa9UvCcrXMWAfRKf8MYe3VXP
+F9fji6uoFp0CgYBvf7Y8DzgHKBLBEHIb9kDcGzSTD3ZMKtz+rHxELGB1bOezUKPw
+u717u6OOZnQh80XNXfYeyH6gpZMY4bKT/FT3yU1+2E0fpvc5K6NkmoTTyD1NNnSE
+pESbYj7BvuyqF8YUB60F/lqqZUyPxMFXOKyiXa9j2GHEX1zOE36jtiFFOQKBgQDm
+jIZKKPIxVStcDtI3dT1ZDJSJM8R1KH8UHJeKWqOJq/U9dhOyf+Z2ltuspNYcXGWv
+ZqlReBwBF/0eYdfbplIdG68tT4FmncN2f7JVv4bSnQMSV1fqFQoh5KPLMWZV8B7E
+HccQDPC1bb8na9Rg5OA5A3VUclR7jRkpncN7ylsg8QKBgBnYKGYG0+jNlqsBhuj5
+nQZO4uw8gImNyOGqGfmaGbPrzcfbD8CjO03ibXqvUAODQgPF1odeeBNQbLxvf/ud
+oNtJ/MT/yJZzNYhSt915jukmCsnzknbHlG4HGR9rRkiapfrsV0LztWa0b5zzNjh3
+ljY5rrqw3jM6iYe/WSoFeXiU
+-----END PRIVATE KEY-----