补贴明细生成方法、装置和电子设备与流程

文档序号:34167880发布日期:2023-05-15 01:43阅读:28来源:国知局
补贴明细生成方法、装置和电子设备与流程

本技术涉及生成薪资明细的,尤其是涉及一种补贴明细生成方法、装置和电子设备。


背景技术:

1、在当前快递业迅猛发展的前提下,快递业务激增,与此同时,运输司机从业人数快速增加,司机补贴也越来越普及,所以司机补贴明细线上化处理已成为必然趋势。一般的,在司机薪酬补贴明细线上化处理过程中,需要使用算法将司机薪酬补贴明细计算出来,司机薪酬补贴明细包括路补和油补两个计算场景,其中路补包括路程补贴和困难线路补贴,油补包括油耗补贴。现有计算司机薪酬补贴明细算法中的计算代码一般是一个整体,且匹配规则很多,每次匹配只通过一个匹配条件进行匹配,导致匹配过程层层嵌套,每次匹配都需要遍历所有层级的匹配条件才能得到目标计算规则。

2、由于每次获得目标计算规则都要经历很多次匹配过程,导致运行时需要进行大量匹配后才能得到目标计算规则,在此过程中匹配过程时间过长,会延长计算时间,导致算法计算效率不高。

3、故,现如今计算司机薪酬补贴明细算法存在计算效率低的问题。


技术实现思路

1、为了提高计算效率,本技术提供一种补贴明细生成方法、装置和电子设备,其具体方案如下:

2、第一方面,本技术提供一种补贴明细生成方法,采用如下的技术方案:

3、一种补贴明细生成方法,包括:

4、获取多个任务单各自对应的任务单数据和司机在每一任务单运输过程中产生的相关数据;任务单数据至少包括:特定类型数据、司机信息、车辆信息,特定类型数据包括车牌号、挂车号、车型、线路、站点中的若干个;

5、针对每一任务单,通过每一任务单对应的唯一线程,根据所述特定类型数据、所述司机信息、所述车辆信息,获取若干补贴计算规则,其中,每一所述补贴计算规则至少包括费率,用以计算油补与路补;

6、针对每一任务单,根据若干所述补贴计算规则的优先级,将优先级最高的补贴计算规则作为最终补贴计算规则;

7、针对每一任务单,基于所述最终补贴计算规则对司机在每一任务单运输过程中产生的相关数据进行计算,得到第一计算结果;

8、根据多个任务单各自对应的第一计算结果,生成多个任务单各自对应的补贴明细。

9、通过采用上述技术方案,获取多个任务单各自对应的任务单数据和司机在每一任务单运输过程中产生的相关数据,将匹配规则落在任务单维度上,为获取以任务单为单位的补贴明细奠定数据基础;在每一个线程中,根据任务单数据中的特定类型数据、司机信息、车辆信息,匹配得到若干条补贴计算规则,能够极大提高匹配的效率;为保证计算结果的唯一性,最终计算只需要一条最终补贴计算规则,因而,根据若干补贴计算规则的优先级,从匹配得到的若干条补贴计算规则中选择一条最合适的补贴计算规则,作为最终补贴计算规则;根据获取到的最终补贴计算规则,基于最终补贴计算规则对司机在每一任务单运输过程中产生的相关数据,计算得到每一任务单的第一计算结果;最终根据多个任务单的第一计算结果,生成所有任务单的补贴明细,直接获取以任务单为单位的补贴明细,得到的补贴明细信息清晰易见,为后续工作节省时间。由此可见,本技术技术方案能够提升计算效率。

10、本技术在一较佳示例中可以进一步配置为:

11、在根据所述特定类型数据、所述司机信息、所述车辆信息,获取若干补贴计算规则之前,还包括:

12、针对每一任务单,根据司机信息和车辆信息,获取每一任务单中对应的若干大范围补贴计算规则;

13、相应的,针对每一任务单,通过每一任务单对应的唯一线程,根据特定类型数据、司机信息、车辆信息,获取若干补贴计算规则的进一步配置,包括:

14、针对每一任务单,通过每一任务单对应的唯一线程,根据特定类型数据、司机信息、车辆信息和若干大范围补贴计算规则,获取若干补贴计算规则。

15、通过采用上述技术方案,先从数据库中的规则信息中筛取大范围补贴计算规则,再从大范围补贴计算规则中筛取适用于当前任务单的若干补贴计算规则,避免直接从数据库中成千上万的规则信息中直接获取最终补贴计算规则,这一匹配过程中耗费过长时间,本方案能够提升获取最终补贴计算规则的效率。

16、本技术在一较佳示例中可以进一步配置为:司机在每一任务单运输过程中产生的相关数据包括:任务实际里程或任务实际次数或任务实际用时,任务实际用油数据,oa申请补油数据,司机人数,

17、所述基于最终补贴计算规则对司机在每一任务单运输过程中产生的相关数据进行计算,得到第一计算结果,包括:

18、基于最终补贴计算规则对任务实际里程或任务实际次数或任务实际用时进行计算,得到第一计算结果。

19、相应的,本技术在一较佳示例中可以进一步配置为:

20、根据多个任务单的第一计算结果,生成多个任务单补贴明细,包括:

21、根据线路的数据、每一任务单的第一计算结果、任务实际用油数据和oa申请补油数据,得到每一任务单的第二计算结果,其中,线路的数据包括线路名称和线路名称对应的线路补贴金额;

22、根据每一任务单的第二计算结果和对应的司机人数,得到每一任务单的最终计算结果;

23、根据多个任务单的最终计算结果,得到多个任务单补贴明细。

24、通过采用上述技术方案,本方案能够在得到第一计算结果确定基础的路补以及油补之后,结合任务实际用油数据、oa申请补油数据和司机人数最终确定每一任务单的最终计算结果,进而得到的任务单补贴明细更符合实际情况,提高最终生成的任务单补贴明细的准确度。

25、本技术在一较佳示例中可以进一步配置为:

26、在所述在针对每一任务单,通过每一任务单对应的唯一线程,根据特定类型数据、司机信息、车辆信息,获取若干补贴计算规则之前,还包括:

27、利用线程池,将若干空闲的线程分配给多个任务单中的若干任务单,其中,每一任务单对应唯一线程;

28、若存在未分配线程的任务单,则将未分配线程的任务单放入缓存队列等待空闲的线程。

29、通过采用上述技术方案,能够利用设置的线程池进行任务单的计算分配,利用已设置好的缓冲队列,放置等待处理的若干任务单,有效预防了全部任务单进入线程池处理而造成阻塞情况的发生。

30、本技术在一较佳示例中可以进一步配置为:

31、所述补贴明细生成方法,还包括:

32、判断线程池中的空闲线程的空闲时间是否大于线程池维护线程所允许的空闲时间;

33、若是,则关闭空闲时间大于线程池维护线程所允许的空闲时间的空闲线程,

34、其中,所述线程池维护线程所允许的空闲时间是基于线程池的预设使用频率设置的。

35、通过采用上述技术方案,在线程池中的空闲线程的空闲时间大于线程池维护线程所允许的空闲时间后,可以关闭空闲时间大于线程池维护线程所允许的空闲时间的空闲线程,减少线程耗能。

36、本技术在一较佳示例中可以进一步配置为:

37、所述多线程下的补贴明细生成方法,还包括:

38、根据所有任务单的参考计算时间、待计算数据的量级、cpu性能和可接受的计算时间,设置线程池维护线程最大数量,其中,待计算数据包括多个任务单各自对应的任务单数据和司机在每一任务单运输过程中产生的相关数据,每一任务单的参考计算时间表征过去运行数量级相同的任务单所耗时间。

39、通过采用上述技术方案,能够结合所有任务单的参考计算时间、待计算数据的量级、cpu性能和可接受的计算时间综合确定线程池的维护线程最大数量,设置的维护线程最大数量更加准确。

40、本技术在一较佳示例中可以进一步配置为:

41、针对每一任务单,通过每一任务单对应的唯一线程,根据特定类型数据、司机信息、车辆信息,获取若干补贴计算规则,包括:

42、利用synchronized和threadlocal,将多个任务单各自对应的任务单数据和司机在每一任务单运输过程中产生的相关数据,传递至各个线程;

43、针对每一任务单,通过每一任务单对应的唯一线程,根据传递至各个线程的特定类型数据、司机信息、车辆信息,获取每一任务单对应的若干补贴计算规则。

44、通过采用上述技术方案,能够利用synchronized和threadlocal机制,保证同一时刻只有一个线程对变量中的数据进行操作;与此同时,使线程池的变量中的所述数据在每个线程中都有独立拷贝,避免跨层传递而造成的数据混乱。

45、本技术在一较佳示例中可以进一步配置为:

46、所述补贴明细生成方法,在应对出现的新增特定类型数据时,还包括:

47、获取新增特定类型数据请求信息,其中,新增特定类型数据请求信息包括新增特定类型数据和新增特定类型数据对应的规则,新增特定类型数据对应的规则包括补贴计算规则和补贴计算规则对应的优先级;

48、根据新增特定类型数据请求信息,更新与特定类型数据对应的补贴计算规则集;其中,所述补贴计算规则集用于基于某一特定类型数据确定相应的补贴计算规则。

49、通过采用上述技术方案,能够基于新增特定类型数据请求信息更新对应的补贴计算规则集,使算法有拓展性,灵活性较强。

50、第二方面,本技术提供一种补贴明细生成装置,采用如下的技术方案:

51、一种补贴明细生成装置,包括:

52、数据获取模块,用于获取多个任务单各自对应的任务单数据和司机在每一任务单运输过程中产生的相关数据;任务单数据至少包括:特定类型数据、司机信息、车辆信息,特定类型数据包括车牌号、挂车号、车型、线路、站点中的若干个;

53、计算规则匹配模块,用于针对每一任务单,通过每一任务单对应的唯一线程,根据所述特定类型数据、所述司机信息、所述车辆信息,获取若干补贴计算规则,其中,每一所述补贴计算规则至少包括费率,用以计算油补与路补;

54、计算规则确定模块,用于针对每一任务单,根据若干所述补贴计算规则的优先级,将优先级最高的补贴计算规则作为最终补贴计算规则;

55、第一计算结果获取模块,用于针对每一任务单,基于所述最终补贴计算规则对司机在每一任务单运输过程中产生的相关数据进行计算,得到第一计算结果;

56、任务单补贴明细生成模块,用于根据多个任务单各自对应的第一计算结果,生成多个任务单各自对应的补贴明细。

57、第三方面,本技术提供一种智能终端或补贴明细生成装置,采用如下的技术方案:

58、至少一个处理器;

59、存储器;

60、至少一个应用程序,其中至少一个应用程序被存储在存储器中并被配置为由至少一个处理器执行,所述至少一个应用程序配置用于:执行上述任一项的补贴明细生成方法。

61、第四方面,本技术提供一种计算机可读存储介质,采用如下的技术方案:

62、一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令所述计算机执行第一方面任一项所述的方法。

63、综上所述,本技术包括以下至少一种有益技术效果:

64、1.获取多个任务单各自对应的任务单数据和司机在每一任务单运输过程中产生的相关数据,将匹配规则落在任务单维度上,为获取以任务单为单位的补贴明细奠定数据基础;在每一个线程中,根据任务单数据中的特定类型数据、司机信息、车辆信息,匹配得到若干条补贴计算规则,能够极大提高匹配的效率;为保证计算结果的唯一性,最终计算只需要一条最终补贴计算规则,因而,根据若干补贴计算规则的优先级,从匹配得到的若干条补贴计算规则中选择一条最合适的补贴计算规则,作为最终补贴计算规则;根据获取到的最终补贴计算规则,基于最终补贴计算规则对司机在每一任务单运输过程中产生的相关数据,计算得到每一任务单的第一计算结果;最终根据多个任务单的第一计算结果,生成所有任务单的补贴明细,直接获取以任务单为单位的补贴明细,得到的补贴明细信息清晰易见,为后续工作节省时间。由此可见,本技术技术方案能够提升计算效率。

65、2.在得到第一计算结果确定基础的路补以及油补之后,结合任务实际用油数据、oa申请补油数据和司机人数最终确定每一任务单的最终计算结果,进而得到的任务单补贴明细更符合实际情况,提高最终生成的任务单补贴明细的准确度。

66、3.利用设置的线程池进行任务单的计算分配,利用已设置好的缓冲队列,放置等待处理的若干任务单,有效预防了全部任务单进入线程池处理而造成阻塞情况的发生。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1