wanshenmean
2026-03-27 b50c79d022c363b1d5ad582e9ef7d71fd7e7f427
feat(RouterService): 新增 QueryRoutersByDeviceCode 设备路由查询

根据设备编号查询经过该设备的所有路由。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
已修改1个文件
16 ■■■■■ 文件已修改
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/RouterService.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/Service/RouterService.cs
@@ -65,6 +65,22 @@
        }
        /// <summary>
        /// 根据设备编号查询经过该设备的所有路由(合并入口+出口类型)
        /// </summary>
        /// <param name="deviceCode">设备编号</param>
        /// <returns>经过该设备的路由列表</returns>
        public List<Dt_Router> QueryRoutersByDeviceCode(string deviceCode)
        {
            // 从缓存获取入口类型和出口类型的全量路由数据
            List<Dt_Router> inRouters = GetAllRoutersFromCache(RouterInOutType.In.ObjToInt());
            List<Dt_Router> outRouters = GetAllRoutersFromCache(RouterInOutType.Out.ObjToInt());
            // 合并后筛选出经过指定设备的路由(ChildPosiDeviceCode匹配)
            return inRouters.Concat(outRouters)
                .Where(x => x.ChildPosiDeviceCode == deviceCode)
                .ToList();
        }
        /// <summary>
        /// 根据起点/当前位置、终点获取下一个子节点。
        /// </summary>
        /// <param name="startPosi">起点/当前位置。</param>