From 1631a9cd06a9272dbc808551ce7f0682cde2ba71 Mon Sep 17 00:00:00 2001
From: luoyisheng <yangdongji@argo-ai.cn>
Date: 星期五, 21 三月 2025 17:01:07 +0800
Subject: [PATCH] bug

---
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDepartmentServiceImpl.java |   37 ++++++++++++++++++++++++++++++++-----
 1 files changed, 32 insertions(+), 5 deletions(-)

diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDepartmentServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDepartmentServiceImpl.java
index 9db5211..0ade275 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDepartmentServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/SysDepartmentServiceImpl.java
@@ -136,7 +136,6 @@
     private Map<Long, List<SysDepartment>> getChildrenDepartmentByOrgType(SysDepartment myDepartment, List<Integer> orgTypes) {
         List<SysDepartment> sysDepartmentList = this.lambdaQuery()
                 .likeRight(SysDepartment::getTreeCode, myDepartment.getTreeCode())
-                .in(CollUtils.isNotEmpty(orgTypes), SysDepartment::getOrgType, orgTypes)
                 .orderByDesc(SysDepartment::getCreateTime)
                 .list();
         return sysDepartmentList.stream()
@@ -194,16 +193,44 @@
     }
     public List<SysDepartmentVO> getRegionTree2(String keyword) {
 
+//        SysDepartment currentDepartment = getMyDepartment();
+
         List<SysDepartmentVO> root = new ArrayList<>();
-        SysDepartment currentDepartment = this.baseMapper.selectById(-1);
+        SysDepartment currentDepartment = getMyDepartment();
         if (Objects.isNull(currentDepartment)) {
             return root;
         }
-        if (!currentDepartment.getOrgType().equals(DepartmentEnum.REGION.getCode())) {
-            return root;
-        }
+//        if (!currentDepartment.getOrgType().equals(DepartmentEnum.REGION.getCode())) {
+//            return root;
+//        }
         Map<Long, List<SysDepartment>> childrenMap = getChildrenDepartmentByOrgType(currentDepartment, Collections.singletonList(DepartmentEnum.REGION.getCode()));
         SysDepartmentVO sysDepartmentVO = fillChildrenTreeModel(currentDepartment, childrenMap);
+        if (sysDepartmentVO.getTreeCode().length()==10){
+            SysDepartment sysDepartment = this.baseMapper.selectById(sysDepartmentVO.getParentId());
+            SysDepartmentVO sysDepartmentVO1 = new SysDepartmentVO();
+            BeanUtils.copyProperties(sysDepartment,sysDepartmentVO1);
+            List<SysDepartmentVO> root1 = new ArrayList<>();
+            root1.add(sysDepartmentVO);
+            sysDepartmentVO1.setChildren(root1);
+            sysDepartmentVO = sysDepartmentVO1;
+        }
+        if (sysDepartmentVO.getTreeCode().length()==14){
+            SysDepartment sysDepartment = this.baseMapper.selectById(sysDepartmentVO.getParentId());
+            SysDepartmentVO sysDepartmentVO1 = new SysDepartmentVO();
+            BeanUtils.copyProperties(sysDepartment,sysDepartmentVO1);
+            List<SysDepartmentVO> root1 = new ArrayList<>();
+            root1.add(sysDepartmentVO);
+            sysDepartmentVO1.setChildren(root1);
+
+
+            SysDepartment sysDepartment2 = this.baseMapper.selectById(sysDepartment.getParentId());
+            SysDepartmentVO sysDepartmentVO2 = new SysDepartmentVO();
+            BeanUtils.copyProperties(sysDepartment2,sysDepartmentVO2);
+            List<SysDepartmentVO> root2 = new ArrayList<>();
+            root2.add(sysDepartmentVO1);
+            sysDepartmentVO2.setChildren(root2);
+            sysDepartmentVO = sysDepartmentVO2;
+        }
         root.add(sysDepartmentVO);
         if (StringUtils.isNotBlank(keyword)) {
             treeMatch(root, keyword);

--
Gitblit v1.7.1