Ver Fonte

中间计量申请部位排序2

qianxb há 1 ano atrás
pai
commit
78bf296c8a

+ 1 - 3
blade-service/blade-meter/src/main/java/org/springblade/meter/mapper/MiddleMeterApplyMapper.xml

@@ -149,9 +149,7 @@
     </select>
 
     <select id="getAllNode" resultType="org.springblade.meter.vo.NodeSortVO">
-        select id,parent_id
-        from s_meter_tree_contract where contract_id = #{contractId} and is_deleted = 0
-        ORDER BY sort,create_time
+        SELECT id,parent_id from m_wbs_tree_private  WHERE project_id  = 1578599210897772545 and is_deleted = 0 and type != 10 and wbs_type = 1
     </select>
     <select id="getLowestNodeBySort" resultType="org.springblade.meter.vo.NodeSortVO">
         SELECT id,parent_id

+ 15 - 1
blade-service/blade-meter/src/main/java/org/springblade/meter/service/impl/MiddleMeterApplyServiceImpl.java

@@ -307,12 +307,18 @@ public class MiddleMeterApplyServiceImpl extends BaseServiceImpl<MiddleMeterAppl
             //根据部位分页,先查出部位
             List<NodeSortVO> vos = baseMapper.getLowestNodeBySort(middleMeterApply.getContractId(),middleMeterApply.getContractUnitId());
             //转换为树
+            Long l1 = System.currentTimeMillis();
             List<NodeSortVO> list = ForestNodeMerger.merge(vos);
+            Long l2 = System.currentTimeMillis();
+            System.out.println(l2-l1);
             //递归循环树,存在子节点就深入,不存在子节点就add后返回上一层
             List<Long> ids = new ArrayList<>();
             gatherSortNode(list,ids);
             if (ids.size() != 0){
+                Long l3 = System.currentTimeMillis();
                 iPage = baseMapper.page3(iPage,middleMeterApply,ids);
+                Long l4 = System.currentTimeMillis();
+                System.out.println(l4-l3);
             }
         }else {
             iPage = baseMapper.page2(iPage, middleMeterApply);
@@ -429,14 +435,22 @@ public class MiddleMeterApplyServiceImpl extends BaseServiceImpl<MiddleMeterAppl
 
     @Override
     public String test() {
-        Long contractId = 1579773037233184770L;
+        Long contractId = 1612329251049537537L;
         //获取当前合同下所以计量单元
         List<NodeSortVO> vos = baseMapper.getAllNode(contractId);
         //转换为树
+        Long l1 = System.currentTimeMillis();
         List<NodeSortVO> list = ForestNodeMerger.merge(vos);
+        Long l2 = System.currentTimeMillis();
+        System.out.println("----------------------");
+        System.out.println(l2-l1);
         //递归循环树,存在子节点就深入,不存在子节点就add后返回上一层
         List<Long> ids = new ArrayList<>();
+        Long l3 = System.currentTimeMillis();
         gatherSortNode(list,ids);
+        Long l4 = System.currentTimeMillis();
+        System.out.println("---------------");
+        System.out.println(l4-l3);
         return "";
     }