2101b352f4304076ef082b34dc35da240950aa08

1. 重构`getTreeByNode`方法: - 新增父节点到子节点的映射表(parentToChildrenMap),通过预处理将子节点查找时间从O(n)优化为O(1) - 使用StringBuilder累加部门ID,避免字符串拼接的性能损耗 - 提前将SysOrg转换为SysOrgVO并应用树形结构字段(id/title/key/value),减少重复转换操作 2. 新增`buildMultiLevelTree`方法: - 独立递归构建多级树的核心逻辑,提升代码可读性 - 通过映射表快速获取子节点列表,支持任意层级的组织机构树构建 - 对每层级子节点按sort字段排序,保持原有展示顺序 3. 移除原低效递归方法`getChildrenNode`,消除全量数据遍历的性能瓶颈 影响范围:组织机构树形查询接口(对应Controller的`/queryAll`端点),显著提升大数据量(20000+条)时的响应速度。
项目建档微服务组件
项目建档组件主要完成项目建档操作,对项目涉及的字典和流程提供查询功能
组件模块
-
baseoperlog 和外部接口调用日志(接收项目推送信息进行记录)
-
common 公共字段或者辅助类存放位置
-
dict 项目字典信息(前端使用进行缓存的数据)
-
dictchooseprocess 项目的标段评审流程字典配置
-
expand 外部推送项目信息记录信息(包括项目信息、标段信息、供应商信息、物资信息、附件信息)
-
projectentrust 项目委托信息 项目委托单 代理机构进行分派项目等操作
-
projectexception 项目异常处理信息 项目进行异常处理之后相应操作
-
projectrecord 项目建档信息 项目经理对项目建档信息编辑
-
projectsection 项目标段信息 项目标段记录
-
projectupdatefield 项目建档字段发生改变进行记录(当前只记录更换项目经理进行记录)
-
sectionmaterial 物资信息
-
sectionsupplier 供应商信息
Description
Languages
Java
99.8%
Shell
0.1%