瀏覽代碼

组卷bug

huangtf 1 年之前
父節點
當前提交
49772ac4f3

+ 4 - 0
blade-common/src/main/java/org/springblade/common/utils/ForestNodeMergerEx.java

@@ -224,8 +224,12 @@ public class ForestNodeMergerEx {
         }
 
         String localTreeSort = treeSort + localSort;
+        if (tree.getTreeSort()== null || !tree.getTreeSort().equals(localTreeSort)){
+            tree.setFlag(1);
+        }
         tree.setTreeSort(localTreeSort);
 
+
         List<T> childrens = tree.getChildren();
         int index = 1;
         if (childrens != null) {

+ 2 - 0
blade-common/src/main/java/org/springblade/common/utils/INodeEx.java

@@ -40,4 +40,6 @@ public interface INodeEx<T> extends Serializable {
 
     default void clearChildren() {
     }
+
+    default void setFlag(Integer flag) {};
 }

+ 2 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/entity/ArchiveTreeContract.java

@@ -343,6 +343,8 @@ public class ArchiveTreeContract extends BaseEntity {
         this.archiveAutoGroupSelect = archiveTree.getArchiveAutoGroupSelect();
         this.isUploadFileDisplayConfigurationTree = archiveTree.getIsDisplayTree();
         this.classify = archiveTree.getClassify();
+        this.treeSort =  archiveTree.getTreeSort();
+        this.ancestors =  archiveTree.getAncestors();
     }
 
 

+ 17 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/feign/ArchiveTreeContractImpl.java

@@ -10,7 +10,10 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+import java.util.logging.Handler;
 
 @RestController
 @AllArgsConstructor
@@ -47,10 +50,23 @@ public class ArchiveTreeContractImpl implements ArchiveTreeContractClient {
     @Override
     public List<ArchiveTreeContract> getHavedFileNodeByProjectID(Long projectId) {
         List<ArchiveTreeContract> list = archiveTreeContractMapper.getHavedFileNodeByProjectID(projectId);
+        Map<Long,String> map = new HashMap<>();
+        for (ArchiveTreeContract box: list) {
+            map.put(box.getId(),"1");
+        }
 
         List<ArchiveTreeContract> boxList = archiveTreeContractMapper.getHavedBoxFileNodeByProjectID(projectId);
+        if (boxList!= null && boxList.size() > 0) {
+            for (ArchiveTreeContract box: boxList) {
+                if (map.get(box.getId()) != null) {
+                    continue;
+                }
+                list.add(box);
+            }
+        }
+
 
-        list.addAll(boxList);
+        //list.addAll(boxList);
         return list;
     }
 

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/ArchiveTreeContractMapper.xml

@@ -359,7 +359,7 @@
               AND is_deleted = 0
               AND ( is_archive = 0 OR is_archive IS NULL )
               AND node_id IS NOT NULL
-              AND box_number IS NOT NULL
+              AND (box_number IS NOT NULL and box_number != -1 )
         )
         order by ancestors asc,tree_sort asc
     </select>