using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEAWCS_Core; using WIDESEAWCS_Core.BaseServices; using WIDESEAWCS_DTO.BasicInfo; using WIDESEAWCS_QuartzJob.Models; namespace WIDESEAWCS_QuartzJob.Service { /// /// 路由配置业务接口层 /// public interface IRouterService : IService { /// /// 根据起点/当前位置、终点获取下一个子节点。 /// /// 起点/当前位置。 /// 终点。 /// 返回路由实体集合。 List QueryNextRoutes(string startPosi, string endPosi); /// /// 根据起点/当前位置、终点获取下一个子节点。 /// /// 起点/当前位置。 /// 终点。 /// 路由类型。 /// 返回路由实体集合。 List QueryNextRoutes(string startPosi, string endPosi, int routeType); /// /// 根据起点获取下一个单个子节点路由 /// /// 起点/当前位置 /// 返回下一个路由节点,如果没有则返回null public Dt_Router QueryNextRoute(string startPosi); /// /// 根据起点和路由类型获取下一个单个子节点路由 /// /// 起点/当前位置 /// 路由类型 /// 返回下一个路由节点,如果没有则返回null public Dt_Router QueryNextRoute(string startPosi, int routeType); /// /// 根据起点、终点方向和路由类型获取下一个单个子节点路由(智能选择朝向终点的路由) /// /// 起点/当前位置 /// 终点位置(用于方向判断) /// 路由类型 /// 返回下一个路由节点,优先返回朝向终点的路由,如果没有则返回null public Dt_Router QueryNextRoute(string startPosi, string endPosi, int routeType); /// /// 获取从起点到终点的完整路径(按顺序返回每个子节点路由) /// /// 起点位置 /// 终点位置 /// 路由类型 /// 返回有序的路由列表,如果找不到路径则返回空列表 public List QueryRoutePath(string startPosi, string endPosi, int routeType); /// /// 根据设备编号获取对应的路由点位编号(输送线站台编号)信息 /// /// 设备编号 /// 返回路由点位编号(输送线站台编号)集合 List QueryAllPositions(string deviceCode); /// /// 获取路由表中所有完整的路由信息(前端展示) /// /// 匿名对象集合 List GetAllWholeRouters(); /// /// 添加路由 /// /// 添加路由的DTO /// 路由类型 /// WebResponseContent AddRouters(List routersAddDTOs, int routerType); } }