实施例一
如图1所示,其为本申请实施例一提供的确定物流信息的方法的流程,包括以下步骤:
步骤101:物流服务器接收定位设备发送的携带有定位设备的标识的位置信息;
这里的定位设备是放置在运载有业务对象的运输工具上的定位设备,接收的定位设备发送的位置信息即为该运输工具上的业务对象的位置信息。
为了确定位置信息是哪些业务对象的位置信息,可以事先建立定位设备的标识和与业务对象的标识之间的对应关系,其中,具有对应关系的定位设备的标识所表示的定位设备和业务对象的标识所表示的业务对象位于同一运输工具上。此时,就可以利用接收的定位设备发送的携带有定位设备的标识的位置信息,来确定与该定位设备的标识对应的业务对象的标识的位置信息。
这里的定位设备可以为GPS(Global Positioning System,全球定位系统)定位器或者北斗定位器,也可以是具有定位功能的手机终端或者其它终端。
这里的定位设备可以按照设定的频率/周期主动发送位置信息,也可以在接收到物流服务器的位置查询请求后,被动发送携带有定位设备的标识的位置信息。
若定位设备和运输工具绑定,事先建立的是运输工具的标识、与运输工具绑定的定位设备的标识和业务对象的标识三者之间的对应关系,则这里定位设备发送的位置信息中携带可以不为定位设备的标识,也可以为运输工具的标识,还可以为定位设备的标识和定位设备所在的运输工具的标识。
具体的,这里的运输工具的标识可以为运输工具的车牌号,业务对象的标识可以为业务对象的运单号。当然,也不限于其它号,只要能唯一标识运输工具以及业务对象就可以。
这里的位置信息可以为经纬度信息,也可以为定位设备处理后的经纬度信息,这里的处理可以为对经纬度信息进行地址转换处理,也可以是对经纬度信息进行了地址转换和按照设定的地址精度的截断处理;
例如:接收的到位置信息可以为:G_A1,(115.027705,38.495571);其中,G_A1表示的是定位设备的标识,115.027705表示经度,38.495571表示维度;
针对同一位置,接收到的位置信息还可以为:G_A1,河北省保定市定州市G4(京港澳高速公路);河北省保定市定州市G4(京港澳高速公路)即为对经纬度信息(115.027705,38.495571)进行地址转换处理后得到的地址信息;这里对经度度信息进行地址转换处理可以利用现有地图API中的地图拾取工具进行地址的转换。
针对同一位置,接收到的位置信息还可以为:G_A1,河北省保定市定州市,此时的位置信息即为对“河北省保定市定州市G4(京港澳高速公路)”按照市这一设定的地址精度进行截断处理后得到的地址信息。
步骤102:从预先存储的定位设备的标识与业务对象的标识之间的对应关系中,查找所述位置信息中携带的定位设备的标识所对应的业务对象的标识;
由于预先存储了定位设备的标识与业务对象的标识之间的对应关系,因此,这里在接收到位置信息后,就可以从对应关系中查找接收的位置信息中携带的定位设备的标识对应的业务对象的标识。
这里若运输工具和定位设备是绑定的,同一运输工具负责将业务对象从揽收该业务对象的揽收网点直接送达离收货地址最近的目的网点,不经过中间网点,则这里,可以在揽收网点建立将业务对象的标识与定位设备的标识之间的对应关系,或者建立运输工具的标识与业务对象的标识之间的对应关系,并存储在物流服务器(数据库)中,或者存储在物流服务器能查询到的其它存储设备(数据库)中。
通常情况下,一业务对象在由揽收网点送往目的网点的过程中,需要经过至少一个中间网点。中间网点根据收货地址,对该业务对象进行分拣处理,装载至另一运输工具送达目的网点或下一个中间网点。下一个中间网重复对该业务对象进行分拣处理,装载至另一运输工具送达目的网点或下一个中间网点这一过程,直至该业务对象被送达目的网点,最后由快递员将业务对象送达收货地址。
在需要经过至少一个中间网点这种情况下,由于业务对象更换了运输工具和定位设备,因此,中间网点的网点终端需要重新建立业务对象的标识和定位设备的标识之间的对应关系,并将建立的对应关系发送给物流服务器;在运输工具和定位设备绑定的情况下,也可以重新建立业务对象的标识和运输工具的标识之间的对应关系,并将建立的对应关系发送给物流服务器。
此时,可以通过以下两种方式预先存储定位设备的标识与业务对象的标识之间的对应关系:
第一种方式:如图2所示,包括以下步骤1021至步骤1025:
步骤1021:接收网点终端发送的定位设备的标识和业务对象的标识之间的对应关系;
假设揽收网点A揽收了标识分别为1、2、3、4、5的业务对象,T1时刻利用标识为V_A1的运输工具和标识为G_A1的定位设备来运输这些业务对象,这些业务对象将被送达至中间网点B;
T2时刻,运输工具V_A1到达中间网点B,中间网点B对标识为1、2、3、4、5的业务对象以及自身揽收的或者其他网点送达的标识为6、7、8的业务对象进行以下分拣处理:
利用运输工具V_B1和定位设备G_B1来运输标识分别为2、4、5、6的业务对象,标识分别为2、4、5、6的业务对象将被运往中间网点C;
利用运输工具V_B2和定位设备G_B2来运输标识分别为1、3、7、8的业务对象,标识分别为1、3、7、8的业务对象将被运往中间网点D;
并且,T2时刻,中间网点B将分拣出来的标识为101、102、103、104、105的业务对象利用运输工具V_A1和定位设备G_A1运输,标识分别为101、102、103、104、105的业务对象将被运往揽收网点A;
在上述假设的情况下,在T1时刻,揽收网点A的网点终端建立的标识为1、2、3、4、5的业务对象与标识为V_A1的运输工具和标识为G_A1的定位设备之间的对应关系可以如表(1)所示:
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
G_A1 |
V_A1 |
1 |
G_A1 |
V_A1 |
2 |
G_A1 |
V_A1 |
3 |
G_A1 |
V_A1 |
4 |
G_A1 |
V_A1 |
5 |
表(1)
表(1)中,一行表示一条对应关系记录。建立表(1)所述的对应关系后,揽收网点A的网点终端即可将该对应关系发送给物流服务器。
在T2时刻,中间网点B的网点终端建立的标识为2、4、5、6的业务对象与标识为V_B1的运输工具和标识为G_B1的定位设备之间的对应关系、标识为1、3、7、8的业务对象与标识为V_B2的运输工具和标识为G_B2的定位设备之间的对应关系可以分别如表(2)和表(3)所示:
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
G_B1 |
V_B1 |
2 |
G_B1 |
V_B1 |
4 |
G_B1 |
V_B1 |
5 |
G_B1 |
V_B1 |
6 |
表(2)
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
G_B2 |
V_B2 |
1 |
G_B2 |
V_B2 |
3 |
G_B2 |
V_B2 |
7 |
G_B2 |
V_B2 |
8 |
表(3)
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
G_A1 |
V_A1 |
101 |
G_A1 |
V_A1 |
102 |
G_A1 |
V_A1 |
103 |
G_A1 |
V_A1 |
104 |
G_A1 |
V_A1 |
105 |
表(4)
建立表(2)、表(3)及表(4)所述的对应关系后,中间网点B的网点终端即可将这些对应关系发送给物流服务器。
步骤1022:判断是否存储有定位设备的标识和业务对象的标识之间的对应关系;若判断结果为否,则执行步骤1023;若判断结果为是,则执行步骤1024;
沿用步骤1021中的例子:
在T1时刻,物流服务器接收到表(1)中的对应关系,假设物流服务器中此时没有存储定位设备的标识和业务对象的标识之间的对应关系,则物流服务器执行步骤1023,直接存储接收的该对应关系;
也即T1时刻,物流服务器中存储的对应关系为表(1);
在T2时刻,物流服务器接收到表(2)、表(3)和表(4)中的对应关系,物流服务器判断存储有定位设备的标识和业务对象的标识之间的对应关系;执行步骤1024;
步骤1023:存储接收的对应关系;
步骤1024:判断存储的对应关系中,是否存在,接收的对应关系中包含的业务对象的标识与任一定位设备的标识之间的对应关系;若判断结果为存在,则执行步骤1025;若判断结果为不存在,则跳转至步骤1023;
沿用步骤1022中的例子:
针对表(2)中的G_B1、V_B1和2这一对应关系,物流服务器判断之存储的对应关系表(1)中,存在业务标识2与定位设备的标识G_A1之间的对应关系,此时,需要执行步骤1025,利用G_B1、V_B1和2这一对应关系来更新表(1)中的G_A1、V_A1和2这一对应关系;
针对表(2)中的G_B1、V_B1和4这一对应关系,物流服务器判断存储的对应关系表(1)中,存在业务标识4与定位设备的标识G_A1之间的对应关系;此时,需要执行步骤1025,利用G_B1、V_B1和4这一对应关系来更新表(1)中的G_A1、V_A1和4这一对应关系;
针对表(2)中的G_B1、V_B1和5这一对应关系,物流服务器判断存储的对应关系表(1)中,存在业务标识5与定位设备的标识G_A1之间的对应关系;此时,需要执行步骤1025,利用G_B1、V_B1和5这一对应关系来更新表(1)中的G_A1、V_A1和5这一对应关系;
针对表(2)中的G_B1、V_B1和6这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识6与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_B1、V_B1和6这一对应关系进行存储;
针对表(3)中的G_B2、V_B2和1这一对应关系,物流服务器判断存储的对应关系表(1)中,存在业务标识1与定位设备的标识G_A1之间的对应关系;此时,需要执行步骤1025,利用G_B2、V_B2和1这一对应关系来更新表(1)中的G_A1、V_A1和1这一对应关系;
针对表(3)中的G_B2、V_B2和3这一对应关系,物流服务器判断存储的对应关系表(1)中,存在业务标识3与定位设备的标识G_A1之间的对应关系;此时,需要执行步骤1025,利用G_B2、V_B2和3这一对应关系来更新表(1)中的G_A1、V_A1和3这一对应关系;
针对表(3)中的G_B2、V_B2和7这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识7与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_B2、V_B2和7这一对应关系进行存储;
针对表(3)中的G_B2、V_B2和8这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识为8与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_B2、V_B2和8这一对应关系进行存储;
针对表(4)中的G_A1、V_A1和101这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识为101与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_A1、V_A1和101这一对应关系进行存储;
针对表(4)中的G_A1、V_A1和102这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识为102与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_A1、V_A1和102这一对应关系进行存储;
针对表(4)中的G_A1、V_A1和103这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识为103与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_A1、V_A1和103这一对应关系进行存储;
针对表(4)中的G_A1、V_A1和104这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识为104与任一定位设备的标识之间的对应关系;此时,需要执行步骤1023,将G_A1、V_A1和104这一对应关系进行存储;
针对表(4)中的G_A1、V_A1和105这一对应关系,物流服务器判断存储的对应关系表(1)中,不存在业务标识为105与任一定位设备的标识之间的对应关系。此时,需要执行步骤1023,将G_B2、V_B2和105这一对应关系进行存储;
步骤1025:将接收的对应关系中包含的业务对象的标识与任一定位设备的标识之间的对应关系,更新为接收到的定位设备的标识和业务对象的标识之间的对应关系。
沿用步骤1024的例子,经过本步骤1025的更新以及步骤1023的存储之后,T2时刻,物流服务器中存储的对应关系由表(1)变为表(5)。
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
G_B1 |
V_B1 |
2 |
G_B1 |
V_B1 |
4 |
G_B1 |
V_B1 |
5 |
G_B1 |
V_B1 |
6 |
G_B2 |
V_B2 |
1 |
G_B2 |
V_B2 |
3 |
G_B2 |
V_B2 |
7 |
G_B2 |
V_B2 |
8 |
G_A1 |
V_A1 |
101 |
G_A1 |
V_A1 |
102 |
G_A1 |
V_A1 |
103 |
G_A1 |
V_A1 |
104 |
G_A1 |
V_A1 |
105 |
表(5)
可见,表(5)中,一个业务对象只允许对应一个定位设备的标识和业务对象的标识,以便于在后续接收到携带有定位设备的标识信息的位置信息,能由唯一个定位设备的标识信息,来确定业务对象的标识,而不是两个定位设备的标识都来对应一个业务对象的标识,进而较为准确地确定业务对象的位置信息。事实上也是这样的,一个业务对象,在一个时刻,只能位于一个运输工具上。
上述第一种方式是对存储的对应关系利用最新接收的对应关系进行相应的更新,也可以不对存储的对应关系进行更新,接收到对应关系时就存储,但需要记录接收时间,利用接收时间信息,来确定最新的对应关系,查询时,查询最新的对应关系,具体见下述第二种方式。
第二种方式:
接收网点终端发送的定位设备的标识和业务对象的标识之间的对应关系并存储。
在第二种方式下,若接收网点终端发送的定位设备的标识和业务对象的标识之间的对应关系,则记录接收网点终端发送的对应关系的接收时间;
仍然沿用上述步骤1022中的例子,在T2时刻,记录的对应关系表可以如表(6)所示。
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
接收时间 |
G_A1 |
V_A1 |
1 |
T1 |
G_A1 |
V_A1 |
2 |
T1 |
G_A1 |
V_A1 |
3 |
T1 |
G_A1 |
V_A1 |
4 |
T1 |
G_A1 |
V_A1 |
5 |
T1 |
G_B1 |
V_B1 |
2 |
T2 |
G_B1 |
V_B1 |
4 |
T2 |
G_B1 |
V_B1 |
5 |
T2 |
G_B1 |
V_B1 |
6 |
T2 |
G_B2 |
V_B2 |
1 |
T2 |
G_B2 |
V_B2 |
3 |
T2 |
G_B2 |
V_B2 |
7 |
T2 |
G_B2 |
V_B2 |
8 |
T2 |
G_A1 |
V_A1 |
101 |
T2 |
G_A1 |
V_A1 |
102 |
T2 |
G_A1 |
V_A1 |
103 |
T2 |
G_A1 |
V_A1 |
104 |
T2 |
G_A1 |
V_A1 |
105 |
T2 |
表(6)
表(6)中,以第二行所示的对应关系为例进行说明,第二行表示G_A1、V_A1和1之间的对应关系是在T1时刻接收到的。
此时,本步骤102具体包括以下两步:
第一步:利用记录的接收时间,从预先存储的定位设备的标识与业务对象的标识之间的对应关系中,确定最近一次接收的包含所述位置信息中携带的定位设备的标识的对应关系;
沿用步骤102中的例子,假设T2时刻之后,接收到的是G_A1,(115.027705,38.495571)这一位置信息,则该第一步中,需要从表(6)中,确定最近一次接收的包含G_A1的对应关系;查找出的包含G_A1的对应关系如下表(7)所示:
定位设备的标识 |
运输工具的标识 |
业务对象的标识 |
接收时间 |
G_A1 |
V_A1 |
101 |
T2 |
G_A1 |
V_A1 |
102 |
T2 |
G_A1 |
V_A1 |
103 |
T2 |
G_A1 |
V_A1 |
104 |
T2 |
G_A1 |
V_A1 |
105 |
T2 |
表(7)
表(7)中的对应关系仅包含T2时刻接收的含G_A1的对应关系,而不包含T1时刻接收的包含G_A1的对应关系,因为T2时刻接收的含G_A1的对应关系为最近一次接收的包含G_A1的对应关系。
第二步:从确定的对应关系中,查找所述位置信息中携带的定位设备的标识所对应的业务对象的标识。
在确定了表(7)之后,这里的第二步即可将查找到G_A1对应的业务对象的标识,即为101、102、103、104、105。
步骤103:将所述位置信息作为查找到的业务对象的标识所表示的业务对象的当前时刻的物流信息。
沿用步骤102中的例子,在接收到的位置信息为截断处理后的地址信息时,本步骤103中即可将接收的到位置信息河北省保定市定州市作为标识为101、102、103、104、105的业务对象的T2时刻的物流信息。
较佳的,所述位置信息为经纬度信息或者地址信息;
查找接收的定位设备的标识所对应的业务对象的标识之后,将所述位置信息作为查找到的业务对象的标识所表示的业务对象的当前时刻的物流信息之前,所述方法还包括:
判断接收到的位置信息为经纬度信息还是地址信息,若为经纬度信息,则将接收的经纬度信息转换为地址信息,对转换后的地址信息按照设定的地址精度进行截断处理,得到截断处理后的地址信息;若为地址信息,则对接收的地址信息按照设定的地址精度进行截断处理,得到截断处理后的地址信息;
这里设定的地址精度也即为地址的精确度,例如,可以设置精确到市级,也可以设置精确到县/区一级,通常,精确到市级已经能满足物流业务的需求。
这里的地址转换处理和截断处理可参见步骤101中的举例,仅是执行主体的不同,步骤101中举例的是定位设备来执行,这里是物流服务器来执行。
将所述位置信息作为查找到的业务对象的标识所表示的业务对象的当前时刻的物流信息,具体包括:
将所述截断处理后的地址信息作为查找到的业务对象的标识所表示的业务对象的当前时刻的物流信息。
此后,用户就可以从物流服务器中,利用业务对象的标识,来查询业务对象的当前时刻和当前时刻之前的物流信息了,物流服务器还可以在每获得一个最新的地址信息,将该最新的地址信息主动推送给各业务对象所在的物流订单页面,以使用户获得其订购的业务对象的当前的最新物流信息。
上述实施例一以物流服务器为执行主体,对本申请提供的确定物流信息的方法进行了描述,下面通过请实施例二以定位设备为执行主体对本申请提供的确定物流信息的方法进行描述。