刘倡 2101b352f4 优化组织机构树构建逻辑,修改为根据根节点展示多条数据,支持多级机构并提升性能
1. 重构`getTreeByNode`方法:
   - 新增父节点到子节点的映射表(parentToChildrenMap),通过预处理将子节点查找时间从O(n)优化为O(1)
   - 使用StringBuilder累加部门ID,避免字符串拼接的性能损耗
   - 提前将SysOrg转换为SysOrgVO并应用树形结构字段(id/title/key/value),减少重复转换操作

2. 新增`buildMultiLevelTree`方法:
   - 独立递归构建多级树的核心逻辑,提升代码可读性
   - 通过映射表快速获取子节点列表,支持任意层级的组织机构树构建
   - 对每层级子节点按sort字段排序,保持原有展示顺序

3. 移除原低效递归方法`getChildrenNode`,消除全量数据遍历的性能瓶颈

影响范围:组织机构树形查询接口(对应Controller的`/queryAll`端点),显著提升大数据量(20000+条)时的响应速度。
2025-06-19 18:22:56 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-05-08 10:10:04 +08:00
2025-06-10 11:39:16 +08:00
2025-05-08 10:08:55 +08:00

项目建档微服务组件

项目建档组件主要完成项目建档操作,对项目涉及的字典和流程提供查询功能

组件模块

  1. baseoperlog 和外部接口调用日志(接收项目推送信息进行记录)

  2. common 公共字段或者辅助类存放位置

  3. dict 项目字典信息(前端使用进行缓存的数据)

  4. dictchooseprocess 项目的标段评审流程字典配置

  5. expand 外部推送项目信息记录信息(包括项目信息、标段信息、供应商信息、物资信息、附件信息)

  6. projectentrust 项目委托信息 项目委托单 代理机构进行分派项目等操作

  7. projectexception 项目异常处理信息 项目进行异常处理之后相应操作

  8. projectrecord 项目建档信息 项目经理对项目建档信息编辑

  9. projectsection 项目标段信息 项目标段记录

  10. projectupdatefield 项目建档字段发生改变进行记录(当前只记录更换项目经理进行记录)

  11. sectionmaterial 物资信息

  12. sectionsupplier 供应商信息

Description
No description provided
Readme 1 MiB
Languages
Java 99.8%
Shell 0.1%