project44的Full Truckload指南为路线、事件与位置记录安排了明确的连接方式:站点有自己的标识,两站之间的路段也有自己的标识,事件与位置再引用相应对象。[1]

路线里的stops是一组站点对象。指南说明,站点的id可由事件中的stopId引用;routeSegments则描述两个站点之间的一段旅程,每段另有id,并以fromStopId、toStopId说明起点与终点。这里至少有三个不同角色:站点标识指向一个点,路段标识指向两点间的一段,起讫字段将这一段接回两个站点。某位置记录引用一段路,则是把位置放到这段旅程中。[1]

事件条目另把type与description分开:前者是事件类型,后者提供描述,而且指南注明并非所有事件都有描述。因此,记录含有类别时,文字说明仍可能没有提供,不能靠类型名称自行补出一次真实事件的经过。states数组则包含货物曾经处于以及目前仍处于的状态;其中的stopId把某项状态关联到站点。起止时间表达状态的持续区间,这个站点字段表达该项状态关联的地点对象。[1]

状态记录另有持续区间。states的type说明状态类型,startDateTime记录开始时刻,endDateTime记录结束时刻。指南特别保留一种情况:货物仍处于该状态时,结束字段可能未填。因此,状态可以覆盖一段时间,而事件记录描述某个事件及其相关时间。[1]

事件本身又有三种时间口径。dateTime对应实际发生时刻,estimateDateTime是平台对该事件的最新估计,plannedDateTime则是承运方最新排定的时刻。指南明确说,这组事件时间目前不包含合同时间,也不包含承运方最初的计划时间。[1]

receivedDateTime尤其需要连着所属对象读。在事件表中,它被解释为事件信息最后一次修改的时间;旁边的estimatedLastCalculatedDateTime,才专指估计时间最后修改的时刻。位置表中的receivedDateTime却是平台收到该位置的时间,而positions.dateTime对应位置记录的时刻。相同字段名在两张表里承担的含义不同:修改事件信息与接收位置记录,不应在转述中合并成一个没有对象的“更新时间”。[1]

指南也按阅读对象提供四种视图:事件历史列出事件或里程碑,位置历史列出位置,路线信息只包含站点与路段,完整跟踪历史再将这些内容放在一起。页面同时说明数据按异步方式处理,所以提交信息后相关功能未必立即可得。[1]

信息来源

本文基于上述公开资料整理,未使用来源页面的图片、视频或嵌入媒体。