一种调度配送时间的方法和装置
文献发布时间:2023-06-19 10:32:14
技术领域
本发明涉及计算机技术领域,尤其涉及一种调度配送时间的方法和装置。
背景技术
随着计算机技术的广泛应用,人们的生活方式也逐渐发生变化,例如通过网络预约课程、约车和预订食品等。
为提高履约效率和用户体验,服务方需要精确管理预约资源,合理分配生产资源或人力资源,从而按时完成用户的预约任务。在实际应用中,为提高履约效率和用户体验,服务方多采用限制每个时间段允许用户预约量的方式,若未达到允许用户预约量则充许用户在该时间段下单,若已达到允许用户预约量则不充许用户在该时间段下单。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
不能分析预约资源的分配和预约情况,无法精细化管理预约资源。
发明内容
有鉴于此,本发明实施例提供一种调度配送时间的方法和装置,能够分析预约资源的分配和预约情况,实现精细化管理预约资源,降低了计算过程的时间复杂度较高,提高了计算性能和可维护性。
为实现上述目的,根据本发明实施例的一个方面,提供了一种调度配送时间的方法。
本发明实施例的一种调度配送时间的方法包括:
根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;
为履约时段集合中的履约时间段在所述范围映射存储结构中匹配对应的所述配置时间段,以确定所述履约时间段的最高履约量和任务单数量;
基于所述履约时间段的最高履约量和任务单数量,为用户调度配送时间。
可选地,基于所述履约时间段的最高履约量和任务单数量,为用户调度配送时间,包括:
根据用户的生成任务单时间从所述履约时段集合中匹配至少一个所述履约时间段作为待选时间段;
基于所述履约时间段的最高履约量和任务单数量,确定可选履约时间段;
从所述可选履约时间段选取配送时间,以供用户选择。
可选地,基于所述履约时间段的最高履约量和任务单数量,确定可选履约时间段,包括:
获取所述待选时间段的最高履约量和任务单数量;
若所述待选时间段的最高履约量大于所述待选时间段的任务单数量,则确定所述待选时间段为可选履约时间段;
若所述待选时间段的最高履约量等于所述待选时间段的任务单数量,则确定所述待选时间段为不可选履约时间段。
可选地,所述范围映射存储结构包括产能存储结构和任务单存储结构。
可选地,根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构,包括:
获取资源配置数据;其中,所述资源配置数据包括至少一个配置时间段和与所述配置时间段对应的最高任务单处理量;
将所述配置时间段转换为数字类型;
以所述配置时间段为主键、与所述配置时间段对应的最高任务单处理量为值,将所述资源配置数据存储到所述产能存储结构;以及
按所述配置时间段统计预约数据;其中,所述预约数据包括每个所述配置时间段对应的任务单预约量;
以所述配置时间段为主键、与所述配置时间段对应的任务单预约量为值,将所述预约数据存储到所述任务单存储结构。
可选地,为履约时段集合中的履约时间段在所述范围映射存储结构中匹配对应的所述配置时间段,以确定所述履约时间段的最高履约量和任务单数量,包括:
获取履约时段集合中的至少一个履约时间段,并将所述履约时间段的开始时间转换为数字类型;
在所述产能存储结构中匹配所述履约时间段的开始时间,将对应的所述配置时间段的最高任务单处理量作为所述履约时间段的最高履约量;
在所述订单存储结构中匹配所述履约时间段的开始时间,将对应的所述配置时间段的任务单预约量作为所述履约时间段的任务单数量。
可选地,所述方法还包括:
根据所述履约时间段的最高履约量和所述履约时间段的任务单数量,计算所述履约时间段的资源利用率。
为实现上述目的,根据本发明实施例的又一方面,提供了一种调度配送时间的装置。
本发明实施例的一种调度配送时间的装置包括:
存储模块,用于根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;
匹配模块,用于为履约时段集合中的履约时间段在所述范围映射存储结构中匹配对应的所述配置时间段,以确定所述履约时间段的最高履约量和任务单数量;
调度模块,用于基于所述履约时间段的最高履约量和任务单数量,为用户调度配送时间。
可选地,所述调度模块还用于:
根据用户的生成任务单时间从所述履约时段集合中匹配至少一个所述履约时间段作为待选时间段;
基于所述履约时间段的最高履约量和任务单数量,确定可选履约时间段;
从所述可选履约时间段选取配送时间,以供用户选择。
可选地,所述调度模块进一步用于:
获取所述待选时间段的最高履约量和任务单数量;
若所述待选时间段的最高履约量大于所述待选时间段的任务单数量,则确定所述待选时间段为可选履约时间段;
若所述待选时间段的最高履约量等于所述待选时间段的任务单数量,则确定所述待选时间段为不可选履约时间段。
可选地,所述范围映射存储结构包括产能存储结构和任务单存储结构
可选地,所述存储模块还用于:
获取资源配置数据;其中,所述资源配置数据包括至少一个配置时间段和与所述配置时间段对应的最高任务单处理量;
将所述配置时间段转换为数字类型;
以所述配置时间段为主键、与所述配置时间段对应的最高任务单处理量为值,将所述资源配置数据存储到所述产能存储结构;以及
按所述配置时间段统计预约数据;其中,所述预约数据包括每个所述配置时间段对应的任务单预约量;
以所述配置时间段为主键、与所述配置时间段对应的任务单预约量为值,将所述预约数据存储到所述任务单存储结构。
可选地,所述匹配模块还用于:
获取履约时段集合中的至少一个履约时间段,并将所述履约时间段的开始时间转换为数字类型;
在所述产能存储结构中匹配所述履约时间段的开始时间,将对应的所述配置时间段的最高任务单处理量作为所述履约时间段的最高履约量;
在所述订单存储结构中匹配所述履约时间段的开始时间,将对应的所述配置时间段的任务单预约量作为所述履约时间段的任务单数量。
可选地,所述装置还包括:
计算模块,用于根据所述履约时间段的最高履约量和所述履约时间段的任务单数量,计算所述履约时间段的资源利用率。
为实现上述目的,根据本发明实施例的又一方面,提供了一种调度配送时间的电子设备。
本发明实施例的一种调度配送时间的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的一种调度配送时间的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读存储介质。
本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种调度配送时间的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;为履约时段集合中的每个履约时间段在范围映射存储结构中匹配对应的配置时间段,以确定每个履约时间段的最高履约量和任务单数量;基于履约时间段的最高履约量和任务单数量,为用户调度配送时间的技术手段,所以克服了不能分析预约资源的分配和预约情况,无法精细化管理预约资源的技术问题,进而达到对预约资源的分配和预约情况进行分析,实现精细化管理预约资源;还可以为用户调度配送时间,且计算过程的时间复杂度较低,计算性能和可维护性良好的技术效果。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的调度配送时间的方法的主要步骤的示意图;
图2是根据本发明实施例的调度配送时间的方法的实现系统示意图;
图3是根据本发明一个可参考实施例的调度配送时间的主要流程的示意图;
图4是根据本发明实施例的调度配送时间的装置的主要模块的示意图;
图5是本发明实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要指出的是,在不冲突的情况下,本发明的实施例以及实施例中的技术特征可以相互结合。
在计算时间点匹配上多个时间段中的一个时间段、或时间段匹配上多个时间段中的一个时间段时,通常采用如下方法:
方法一:将字符串的时间段转换成具体时间类型循环遍历对比
履约时间段(HH:mm-HH:mm)是没有日期类型的字符串,遍历所有可选时段将单个时间段按照“-”拆分,拆分后每个时间段匹配上一个固定的日期,再将匹配日期后的字符串(yyyy-mm-dd HH:mm)转换成时间类型即开始时间和结束时间,同时匹配时间参数也需要匹配上同样的日期后将字符串转换成时间类型,然后判断需要匹配的时间是否在开始和结束时间之间,如果在开始结束时间之间即返回匹配成功,否则匹配不成功;
方法二:将可选时段和参数时间变成数字段做遍历计算
具体计算方法同方法一类似,此实现方法是将时间段的字符串按照“-”拆分成两个时间点,将这两个时间字符串(HH:mm)中间的“:”去掉,转换成数字类型,这样可选时段就转换成了一个开始时段的数字和结束时段的数字,同时将匹配的时间参数运用同样的方式转换成数字类型。循环遍历所有可选时间段,判断参数时间转换后的数字在可选时间段转换成的两个数字之间即匹配,否则不匹配。
对于以上两种方法,
1)为用户计算预约时间时,都需要遍历所有可选的履约时间段,再循环产能时段列表,使用每个履约时间段匹配上对应的配置时间段,综合嵌套循环过程的时间复杂度为O(n2);
2)为用户计算预约时间的过程中,需要对字符串进行多次拼装、数据类型转换处理,处理逻辑相对冗余,不仅影响计算的性能,且可维护性差。可维护性是代码质量的一个标准,代表一个系统的代码被测试或被修改的难易程度。
为此,本发明实施例提出一种调度配送时间的方法,将产能和任务量等与履约时间段关联映射,并计算出履约时间段的资源利用率,通过该资源利用率可以对预约资源的分配和预约情况进行分析,实现精细化管理预约资源(即合理分配服务方的生产力或预约资源等);同时还可以根据任意一个时间点方便高效地匹配上多个履约时间段,实现根据用户的生成任务单时间向用户提供可选的履约时间段。上述计算过程的时间复杂度较低,提升了计算性能,能够满足高并发高性能的需求,且能够适用多种场景的时间匹配计算,为系统维护提供便利性。
图1是根据本发明实施例的调度配送时间的方法的主要步骤的示意图。
如图1所示,本发明实施例的调度配送时间的方法主要包括以下步骤:
步骤S101:根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构。
资源配置数据是对服务方的生产能力或服务能力的一种描述,预约数据是已预约的任务(预约资源)的信息,本发明实施例将产能和任务量等与履约时间段关联映射,因此,可以将资源配置数据和预约数据根据配置时间段存储在范围映射存储结构中。
该范围映射存储结构(RangeMap)是一种键值对存储结构,可以用时间段作为主键,即在RangeMap中可以按配置时间段查看资源配置数据和预约数据。在本发明实施例中,范围映射存储结构可以包括产能存储结构和任务单存储结构。资源配置数据包括至少一个配置时间段和与配置时间段对应的最高任务单处理量;预约数据包括每个配置时间段对应的任务单预约量。
资源配置数据可以是按照时间段根据服务方的生产能力或服务能力设置的最高任务单处理量,其时间段的时间跨度可以随意设置,与履约时间段没有关系。预约数据是根据资源配置数据的时间段统计出的所有用户在该时间段内的任务单预约量。例如资源配置数据设置为:[08:00-09:00:100单;09:00-10:00:110单;10:00-11:00:200单;11:00-12:00:110单;12:00-13:00:110单;….],如果某个任务单用户预约在9:45,9:45匹配到09:00-10:00这个时段上,将此时段的任务单预约量加1,供后续计算使用。
在本发明实施例中,步骤S101可以通过以下方式实现:获取资源配置数据;将配置时间段转换为数字类型;以配置时间段为主键、与配置时间段对应的最高任务单处理量为值,将资源配置数据存储到产能存储结构;以及按配置时间段统计预约数据;以配置时间段为主键、与配置时间段对应的任务单预约量为值,将预约数据存储到任务单存储结构。
为了便于查找配置时间段,以及做履约时间段与配置时间段的匹配,可以将配置时间段转换成数字类型再进行存储,例如将“09:00-10:00200单”转换成“900-100 100单”。配置时间段内最高任务单处理量和任务单预约量,分别使用产能存储结构和任务单存储结构存储,具体地,以配置时间段为主键,以与配置时间段对应的最高任务单处理量或任务单预约量为值,在数据存放的时候就实现了以配置时间段的开始时间来排序的功能,例如存放09:00-10:00,100单,即以Cut(900,1000)作为key,100单作为value,存放到RangeMap中,实际存放时排序是按照Cut的开始值即900进行排序的,因为符合此计算的时间段没有重合的需求,所以不需要考虑重复的情况。
作为一种优选的实施方式,可以将RangeMap数据结构的定义为:
其中,NavigableMap是一个接口,继承自SortedMap,SortedMap是集合框架中的一个接口,此接口扩展了Map接口并提供了其元素的总排序(元素可以按主键的排序顺序遍历),所以RangeMap具有排序功能。上述代码的含义是生成一个对象,该对象的主键(key)是Cut
步骤S102:为履约时段集合中的每个履约时间段在范围映射存储结构中匹配对应的配置时间段,以确定每个履约时间段的最高履约量和任务单数量。
履约时间段是预约资源执行的时间,例如预约医院某个科室的就诊时间,每个履约时间段会与一个配置时间段相对应,根据该配置时间段查询资源配置数据和预约数据,便可以确定每个履约时间段的最高履约量和任务单数量。其中,最高履约量表示履约时间段之内能够处理多少个任务单,任务单数量表示履约时间段之内已有多少个任务单,例如医院的某个就诊时间段已预约了多少位患者。
履约时段集合的时间样例:
“今天:[08:00-08:30;08:30-09:00;09:00-09:30;09:30-10:00;10:00-10:30;10:30-11:00;11:00-11:30……]
明天:[08:00-08:30;08:30-09:00;09:00-09:30;09:30-10:00;10:00-10:30;10:30-11:00;11:00-11:30……]”。
在匹配履约时间段时,将可选履约时间的开始时间转换成数字类型,在产能存储结构或任务单存储结构中查询命中的配置时间段,即查询key的下限值(lowerBound)小于或等于履约时间段的开始时间、上限值(upperBound)大于履约时间段的开始时间的值,则命中此key,根据此key获取到对应的value,根据产能存储结构或任务单存储结构查询最高履约量或任务单数量的时间复杂度是O(logn)。
本发明实施例将配置时间段的开始时间和结束时间转换成开始结束数字,结合JDK(Java语言的软件开发工具包)中TreeMap(树图)使用红黑树的实现原理,扩展TreeMap的实现以数值段(Range)作为key,具体值(最高任务单处理量/任务单预约量)作为value,实现配置时间段的快速匹配存取,不仅代码的可维护性提高,同时将计算的时间复杂度从O(n2)提升到了O(logn)。
在本发明实施例中,步骤S102可以通过以下方式实现:获取履约时段集合中的至少一个履约时间段,并将履约时间段的开始时间转换为数字类型;在产能存储结构中匹配履约时间段的开始时间,将对应的配置时间段的最高任务单处理量作为履约时间段的最高履约量;在订单存储结构中匹配履约时间段的开始时间,将对应的配置时间段的任务单预约量作为履约时间段的任务单数量。
步骤S103:根据履约时间段的最高履约量和履约时间段的任务单数量,计算履约时间段的资源利用率。
在得到履约时间段的最高履约量和任务单数量后,可以计算出履约时间段的资源利用率,基于该资源利用率可以了解到,服务方在某个履约时间段的生产力利用情况,以及预约资源与实际需求的数量关系,即基于该资源利用率还可以进一步对预约资源的分配和预约情况进行分析,实现精细化管理预约资源。
本发明实施例的调度配送时间的方法还可以包括:根据用户的生成任务单时间从履约时段集合中匹配至少一个履约时间段作为待选时间段;获取待选时间段的最高履约量和任务单数量;若待选时间段的最高履约量大于待选时间段的任务单数量,则待选时间段为可选履约时间段;若待选时间段的最高履约量等于待选时间段的任务单数量,则待选时间段为不可选履约时间段。
在确定每个履约时间段的最高履约量和任务单数量后,可以为用户的每次预约实时提供可选履约时间段,其中,待选时间段的最高履约量大于待选时间段的任务单数量,则表示该待选时间段还有预约资源,否则表示该待选时间段没有预约资源,此外,只有最高履约量大于任务单数量的待选时间段才是可选履约时间段(可以被用户选择),所以不存在最高履约量小于任务单数量的情况。用户的生成任务单时间即用户发出指令的时间,例如用户9:00在网络上准备预约某驾校的培训课程,则9:00为生成任务单时间。待选时间段的选择可以根据该生成任务单时间匹配,例如设置生成任务单时间之后的当日其它时间段可以匹配为待选时间段,或设置生成任务单时间的后一日的时间段可以匹配为待选时间段等等。
根据本发明实施例的调度配送时间的方法可以看出,因为采用根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;为履约时段集合中的每个履约时间段在范围映射存储结构中匹配对应的配置时间段,以确定每个履约时间段的最高履约量和任务单数量;基于履约时间段的最高履约量和任务单数量,为用户调度配送时间的技术手段,所以克服了不能分析预约资源的分配和预约情况,无法精细化管理预约资源;计算过程需要综合嵌套循环,时间复杂度较高,且需要对字符串进行多次拼装以及数据类型转换处理,处理逻辑冗余,计算性能和可维护性较差的技术问题,进而达到对预约资源的分配和预约情况进行分析,实现精细化管理预约资源;还可以实现根据用户的生成任务单时间向用户提供可选的履约时间段,从而为用户调度配送时间,且计算过程的时间复杂度较低,提升了计算性能和可维护性的技术效果。
图2是根据本发明实施例的调度配送时间的方法的实现系统示意图。
如图2所示,本发明实施例的调度配送时间的方法主要完成的工作是:为所有的可配送的履约时段计算出资源利用率,即如果某个时段产能已经满了该履约时段用户就不能够选择。
由图2可以看出该实现系统的数据输入是用户可以选择的所有配送履约时段(即履约时段集合)、资源配置数据以及预约数据,经过计算处理后输出的是匹配上资源利用率的履约时间段的列表。对于资源配置数据和预约数据,可以先转换数据类型为数字类型,再使用基于红黑树的实现原理的RangeMap进行存储,RangeMap中以配置时间段作为key、最高任务单处理量或任务单预约量为值。调度配送时间时,为每个履约时间段匹配对应的配置时间段,获取该配置时间段的最高任务单处理量(作为履约时间段的最高履约量),同时获取该配置时间段的任务单预约量(作为履约时间段的任务单数量),基于该配置时间段的最高任务单处理量和任务单预约量计算出该履约时间段的资源利用率。同时,还可以对比该履约时间段对应的配置时间段的最高任务单处理量和任务单预约量,若最高任务单处理量大于任务单预约量;则该履约时间段可以被用户选择(预约在该履约时间段内);否则不可以被用户选择。
图3是根据本发明一个可参考实施例的调度配送时间的主要流程的示意图。
如图3所示,本发明实施例的调度配送时间的方法可以参考以下流程实现:
步骤S301:获取资源配置数据;
步骤S302:将配置时间段转换为数字类型,并以配置时间段为主键、与配置时间段对应的最高任务单处理量为值,将资源配置数据存储到产能存储结构;
步骤S303:按配置时间段统计预约数据;
步骤S304:以配置时间段为主键、与配置时间段对应的任务单预约量为值,将预约数据存储到任务单存储结构;
步骤S305:循环履约时段集合计算资源利用率:
即计算履约时段集合中每个履约时间段的资源利用率,需要注意的是,执行一次步骤S306-步骤S309可以计算出一个履约时间段的资源利用率;
步骤S306:获取履约时段集合中的一个履约时间段,并将履约时间段的开始时间转换为数字类型;
步骤S307:在产能存储结构中匹配履约时间段的开始时间,将对应的配置时间段的最高任务单处理量作为履约时间段的最高履约量;
步骤S308:在订单存储结构中匹配履约时间段的开始时间,将对应的配置时间段的任务单预约量作为履约时间段的任务单数量;
步骤S309:根据履约时间段的最高履约量和履约时间段的任务单数量,计算履约时间段的资源利用率。
需要说明的是,步骤S301-步骤S309的实现过程可以参照步骤S101-步骤S103,本发明实施例不予赘述。且在计算出履约时间段的资源利用率后,可以直接基于此为用户调度配送时间。
为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。
以某学校的选修课为例,预约资源为选修课,学生可以自主选择周六的一节选修课,假设为相同课程。
该学校的资源配置数据为每小时可以为多少人授课,具体为:
“08:00-10:00:100人;10:00-12:00:100人;14:00-16:00:100人;16:00-18:00:100人;”
其中,“08:00-09:00”等为配置时间段,“100人”为最高任务单处理量;
到报名截止前该学校的预约数据为:
“08:00-10:00:60人;10:00-12:00:80人;14:00-16:00:90人;16:00-18:00:100人;”
上述资源配置数据和预约数据分别以配置时间段为主键、以具体多少人为值存储在RangeMap中,其中,作为主键的配置时间段为数字类型,例如以“900-100 100人”存储在RangeMap中;
该学校的履约时段集合为:
“08:00-09:00;09:00-10:00;10:00-11:00;11:00-12:00;14:00-15:00;15:00-16:00;16:00-17:00;17:00-18:00;”
在计算履约时间段的资源利用率时,先将履约时间段的开始时间转换为数字类型,再从RangeMap中匹配履约时间段的开始时间,将对应的配置时间段的最高任务单处理量作为履约时间段的最高履约量,最终计算出的履约时间段的资源利用率依次为60%、60%、80%、80%、90%、90%、100%、100%,基于资源利用率学校可以分析学生更集中于哪些时间段,并调整选修课的分配,例如减少08:00-10:00的选修课名额或使用更小的教室,增加16:00-18:00的选修课名额或使用更大的教室。
此外,如果某个学生正在选择选修课(假设在统计上述数据后),则可选履约时间段包括:08:00-09:00;09:00-10:00;10:00-11:00;11:00-12:00;14:00-15:00;15:00-16:00。在该学生选择后可以更新预约数据,例如该学生选择了“15:00-16:00”,则更新后的预约数据为:“08:00-10:00:60人;10:00-12:00:80人;14:00-16:00:91人;16:00-18:00:100人;”。
图4是根据本发明实施例的调度配送时间的装置的主要模块的示意图。
如图4所示,本发明实施例的调度配送时间的装置400包括:存储模块401、匹配模块402和调度模块403。
其中,
存储模块401,用于根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;
匹配模块402,用于为履约时段集合中的履约时间段在所述范围映射存储结构中匹配对应的所述配置时间段,以确定所述履约时间段的最高履约量和任务单数量;
调度模块403,用于基于所述履约时间段的最高履约量和任务单数量,为用户调度配送时间。
在本发明实施例中,所述调度模块403还用于:
根据用户的生成任务单时间从所述履约时段集合中匹配至少一个所述履约时间段作为待选时间段;
基于所述履约时间段的最高履约量和任务单数量,确定可选履约时间段;
从所述可选履约时间段选取配送时间,以供用户选择。
在本发明实施例中,所述调度模块403进一步用于:
获取所述待选时间段的最高履约量和任务单数量;
若所述待选时间段的最高履约量大于所述待选时间段的任务单数量,则确定所述待选时间段为可选履约时间段;
若所述待选时间段的最高履约量等于所述待选时间段的任务单数量,则确定所述待选时间段为不可选履约时间段。
此外,所述范围映射存储结构包括产能存储结构和任务单存储结构。
在本发明实施例中,所述存储模块401还用于:
获取资源配置数据;其中,所述资源配置数据包括至少一个配置时间段和与所述配置时间段对应的最高任务单处理量;
将所述配置时间段转换为数字类型;
以所述配置时间段为主键、与所述配置时间段对应的最高任务单处理量为值,将所述资源配置数据存储到所述产能存储结构;以及
按所述配置时间段统计预约数据;其中,所述预约数据包括每个所述配置时间段对应的任务单预约量;
以所述配置时间段为主键、与所述配置时间段对应的任务单预约量为值,将所述预约数据存储到所述任务单存储结构。
在本发明实施例中,所述匹配模块402还用于:
获取履约时段集合中的至少一个履约时间段,并将所述履约时间段的开始时间转换为数字类型;
在所述产能存储结构中匹配所述履约时间段的开始时间,将对应的所述配置时间段的最高任务单处理量作为所述履约时间段的最高履约量;
在所述订单存储结构中匹配所述履约时间段的开始时间,将对应的所述配置时间段的任务单预约量作为所述履约时间段的任务单数量。
此外,所述装置400还包括计算模块(图中并未示出),用于根据所述履约时间段的最高履约量和所述履约时间段的任务单数量,计算所述履约时间段的资源利用率,基于所述资源利用率管理预约资源。
根据本发明实施例的调度配送时间的装置可以看出,因为采用根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;为履约时段集合中的每个履约时间段在范围映射存储结构中匹配对应的配置时间段,以确定每个履约时间段的最高履约量和任务单数量;基于履约时间段的最高履约量和任务单数量,为用户调度配送时间的技术手段,所以克服了不能分析预约资源的分配和预约情况,无法精细化管理预约资源;计算过程需要综合嵌套循环,时间复杂度较高,且需要对字符串进行多次拼装以及数据类型转换处理,处理逻辑冗余,计算性能和可维护性较差的技术问题,进而达到对预约资源的分配和预约情况进行分析,实现精细化管理预约资源;还可以实现根据用户的生成任务单时间向用户提供可选的履约时间段,从而为用户调度配送时间,且计算过程的时间复杂度较低,提升了计算性能和可维护性的技术效果。
图5示出了可以应用本发明实施例的调度配送时间的方法或调度配送时间的装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备501、502、503可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所浏览的购物类网站提供支持的后台管理服务器。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息)反馈给终端设备。
需要说明的是,本发明实施例所提供的调度配送时间的方法一般由服务器505执行,相应地,调度配送时间的装置一般设置于服务器505中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括存储模块、匹配模块和第一计算模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,存储模块还可以被描述为“根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:步骤S101:根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;步骤S102:为履约时段集合中的每个履约时间段在范围映射存储结构中匹配对应的配置时间段,以确定每个履约时间段的最高履约量和任务单数量;步骤S103:基于履约时间段的最高履约量和任务单数量,为用户调度配送时间。
根据本发明实施例的技术方案,因为采用根据配置时间段将资源配置数据和预约数据存储到范围映射存储结构;为履约时段集合中的每个履约时间段在范围映射存储结构中匹配对应的配置时间段,以确定每个履约时间段的最高履约量和任务单数量;基于履约时间段的最高履约量和任务单数量,为用户调度配送时间的技术手段,所以克服了不能分析预约资源的分配和预约情况,无法精细化管理预约资源;计算过程需要综合嵌套循环,时间复杂度较高,且需要对字符串进行多次拼装以及数据类型转换处理,处理逻辑冗余,计算性能和可维护性较差的技术问题,进而达到对预约资源的分配和预约情况进行分析,实现精细化管理预约资源;还可以实现根据用户的生成任务单时间向用户提供可选的履约时间段,从而为用户调度配送时间,且计算过程的时间复杂度较低,提升了计算性能和可维护性的技术效果。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
- 一种调度配送时间的方法和装置
- 一种有时间限制的配送车辆调度方法