运单状态更新的处理方法、装置、设备及存储介质制造方法及图纸

技术编号:31490885 阅读:18 留言:0更新日期:2021-12-18 12:27
本申请提供一种运单状态更新的处理方法、装置、设备及存储介质。该方法包括:通过获取内存队列中待处理的第一运单操作请求,该第一运单操作请求用于请求更新第一运单的状态,执行第一运单操作请求关联的至少一个操作任务,若该至少一个操作任务中有未完成的操作任务,暂停执行第一运单操作操作请求,继续执行内存队列中位于第一运单操作请求之后的第二运单操作请求,第二运单操作请求用于请求更新第二运单的状态,其中第一运单和第二运单不同。上述方案可避免异常运单操作请求关联的操作任务长时间占用线程,提升运单状态更新的速度,提高接单效率。高接单效率。高接单效率。

【技术实现步骤摘要】
运单状态更新的处理方法、装置、设备及存储介质


[0001]本申请涉及互联网
,尤其涉及一种运单状态更新的处理方法、装置、设备及存储介质。

技术介绍

[0002]随着电子商务的不断发展,网络购物呈爆发式增长,大大促进了电子商务物流服务业尤其是快递服务业的发展,使其成为物品流通的重要渠道。为了提供优质的网上购物体验,电商平台需要协同各物流企业,不断完善物流数据更新方案。
[0003]目前,物流数据更新方案中,物流管理平台接收物流人员上报的运单操作请求,例如请求更新运单状态为已发货,通过执行该运单操作请求关联的操作任务,在该请求的所有操作任务均执行成功后,向电商平台返回物流更新数据。
[0004]上述物流数据更新方案存在长时间占用处理线程的问题,在一定程度上限制了平台处理请求的能力。

技术实现思路

[0005]本申请实施例提供一种运单状态更新的处理方法、装置、设备及存储介质,提高运单状态更新的速度。
[0006]本申请实施例的第一方面提供一种运单状态更新的处理方法,包括:
[0007]获取内存队列中待处理的第一运单操作请求,所述第一运单操作请求用于请求更新第一运单的状态;
[0008]执行所述第一运单操作请求关联的至少一个操作任务,若所述至少一个操作任务中有未完成的操作任务,暂停执行所述第一运单操作请求中未完成的操作任务,继续执行所述内存队列中位于所述第一运单操作请求之后的第二运单操作请求,所述第二运单操作请求用于请求更新第二运单的状态,所述第一运单和所述第二运单不同。
[0009]在本申请第一方面的一个可选实施例中,所述暂停执行所述第一运单操作请求中未完成的操作任务,包括:
[0010]若所述第一运单操作请求中未完成的操作任务的执行次数小于预设值,将所述第一运单操作请求置于所述内存队列的尾部,等待下一次执行。
[0011]在本申请第一方面的一个可选实施例中,所述暂停执行所述第一运单操作请求中未完成的操作任务,包括:
[0012]若所述第一运单操作请求中未完成的操作任务的执行次数大于或等于预设值,将所述第一运单操作请求剔除所述内存队列,并记录剔除时刻。
[0013]在本申请第一方面的一个可选实施例中,所述方法还包括:
[0014]获取预设时段内被剔除的所有运单操作请求,按照剔除顺序依次将被剔除的运单操作请求加入所述内存队列,等待再次执行。
[0015]在本申请第一方面的一个可选实施例中,所述执行所述第一运单操作请求关联的
至少一个操作任务,包括:
[0016]并行执行所述第一运单操作请求关联的第一操作任务和第二操作任务;
[0017]所述第一操作任务用于发送与所述第一运单关联的订单跟踪消息;
[0018]所述第二操作任务用于更新所述第一运单的状态。
[0019]在本申请第一方面的一个可选实施例中,所述执行所述第一运单操作请求关联的至少一个操作任务,包括:
[0020]确定与所述第一运单操作请求关联的第三运单操作请求中的所有操作任务是否均执行成功,若均执行成功,执行所述第一运单操作请求关联的至少一个操作任务。
[0021]在本申请第一方面的一个可选实施例中,若所述第三运单操作请求中的所有操作任务中有未完成的操作任务,暂停执行所述第一运单操作请求,直至所述第三运单操作请求中的所有操作任务均执行成功。
[0022]在本申请第一方面的一个可选实施例中,所述方法还包括:
[0023]当所述第一运单操作请求关联的所有操作任务均执行成功时,生成运单更新记录,所述运单更新记录用于指示已完成所述第一运单的状态更新。
[0024]在本申请第一方面的一个可选实施例中,所述第一运单或所述第二运单的状态包括以下任意一项:
[0025]运单接单、等待妥投、妥投、拒收或拒收到库。
[0026]本申请实施例的第二方面提供一种运单状态更新的处理装置,包括:
[0027]获取模块,用于获取内存队列中待处理的第一运单操作请求,所述第一运单操作请求用于请求更新第一运单的状态;
[0028]处理模块,用于执行所述第一运单操作请求关联的至少一个操作任务,若所述至少一个操作任务中有未完成的操作任务,暂停执行所述第一运单操作请求中未完成的操作任务,继续执行所述内存队列中位于所述第一运单操作请求之后的第二运单操作请求,所述第二运单操作请求用于请求更新第二运单的状态,所述第一运单和所述第二运单不同。
[0029]在本申请第二方面的一个可选实施例中,所述处理模块,用于:
[0030]若所述第一运单操作请求中未完成的操作任务的执行次数小于预设值,将所述第一运单操作请求置于所述内存队列的尾部,等待下一次执行。
[0031]在本申请第二方面的一个可选实施例中,所述处理模块,用于:
[0032]若所述第一运单操作请求中未完成的操作任务的执行次数大于或等于预设值,将所述第一运单操作请求剔除所述内存队列,并记录剔除时刻。
[0033]在本申请第二方面的一个可选实施例中,所述获取模块,用于获取预设时段内被剔除的所有运单操作请求,所述处理模块,用于按照剔除顺序依次将被剔除的运单操作请求加入所述内存队列,等待再次执行。
[0034]在本申请第二方面的一个可选实施例中,所述处理模块,用于:
[0035]并行执行所述第一运单操作请求关联的第一操作任务和第二操作任务;
[0036]所述第一操作任务用于发送与所述第一运单关联的订单跟踪消息;
[0037]所述第二操作任务用于更新所述第一运单的状态。
[0038]在本申请第二方面的一个可选实施例中,所述处理模块,用于:
[0039]确定与所述第一运单操作请求关联的第三运单操作请求中的所有操作任务是否
均执行成功,若均执行成功,执行所述第一运单操作请求关联的至少一个操作任务。
[0040]在本申请第二方面的一个可选实施例中,所述处理模块,用于:
[0041]若所述第三运单操作请求中的所有操作任务中有未完成的操作任务,暂停执行所述第一运单操作请求,直至所述第三运单操作请求中的所有操作任务均执行成功。
[0042]在本申请第二方面的一个可选实施例中,所述处理模块,用于:
[0043]当所述第一运单操作请求关联的所有操作任务均执行成功时,生成运单更新记录,所述运单更新记录用于指示已完成所述第一运单的状态更新。
[0044]在本申请第二方面的一个可选实施例中,所述第一运单或所述第二运单的状态包括以下任意一项:
[0045]运单接单、等待妥投、妥投、拒收或拒收到库。
[0046]本申请实施例的第三方面提供一种电子设备,包括:
[0047]存储器;
[0048]处理器;以及
[0049]计算机程序;
[0050]其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种运单状态更新的处理方法,其特征在于,包括:获取内存队列中待处理的第一运单操作请求,所述第一运单操作请求用于请求更新第一运单的状态;执行所述第一运单操作请求关联的至少一个操作任务,若所述至少一个操作任务中有未完成的操作任务,暂停执行所述第一运单操作请求,继续执行所述内存队列中位于所述第一运单操作请求之后的第二运单操作请求,所述第二运单操作请求用于请求更新第二运单的状态,所述第一运单和所述第二运单不同。2.根据权利要求1所述的方法,其特征在于,所述暂停执行所述第一运单操作请求中未完成的操作任务,包括:若所述第一运单操作请求中未完成的操作任务的执行次数小于预设值,将所述第一运单操作请求置于所述内存队列的尾部,等待下一次执行。3.根据权利要求1所述的方法,其特征在于,所述暂停执行所述第一运单操作请求中未完成的操作任务,包括:若所述第一运单操作请求中未完成的操作任务的执行次数大于或等于预设值,将所述第一运单操作请求中剔除所述内存队列,并记录剔除时刻。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:获取预设时段内被剔除的所有运单操作请求,按照剔除顺序依次将被剔除的运单操作请求加入所述内存队列,等待再次执行。5.根据权利要求1所述的方法,其特征在于,所述执行所述第一运单操作请求关联的至少一个操作任务,包括:并行执行所述第一运单操作请求关联的第一操作任务和第二操作任务;所述第一操作任务用于发送与所述第一运单关联的订单跟踪消息;所述第二操作任务用于更新所述第一运单的状态。6.根据权利要求1所述的方法,其特征在于,所述执行所述第一运单操作请求关联的至少一个操作任务,包括:确定与所述第一运单操作请求关联的第三运单操作请求中的所有操作任务是否均执行成功,若均执行成功,执行所述第一运单操作请求关联的至少一个操作任务。7.根据权利要求6所述的方法,...

【专利技术属性】
技术研发人员:张伟伟
申请(专利权)人:北京沃东天骏信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1