Order management system, order dispatching method, equipment and storage medium

By dividing the order management system into a business system and a fulfillment system, and using asynchronous request and response methods to dispatch orders, the problem that the dispatch process in the existing technology is easily failed due to system call timeout, and a more stable dispatch process is achieved.

CN119863291AActive Publication Date: 2025-04-2258 CHANG LIFE (BEIJING) INFORMATION TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411930157.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-25
Publication Date
2025-04-22
Estimated Expiration
2044-12-25

AI Technical Summary

Technical Problem

In the prior art, the order dispatch process is prone to failure due to system call timeout, resulting in unstable order dispatch.

Method used

By dividing the order management system into a business system responsible for collection and a fulfillment system responsible for order assignment, the order assignment is processed using asynchronous request and response methods. The fulfillment system adds the order information to the order queue and dispatches the order according to the order assignment scheduling logic.

Benefits of technology

It effectively avoids order dispatch failure caused by system call timeout, improves the stability of order dispatch, and achieves higher stability and efficiency through asynchronous order dispatch.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119863291A_ABST
    Figure CN119863291A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an order management system, an order dispatching method, equipment and a storage medium. In the embodiment of the invention, the order receiving process and the order sending process of the to-be-processed order are decoupled, and the order management system is divided into a business system responsible for receiving the order and a performance system responsible for sending the order. The performance system dispatches the order to be processed and carries out asynchronous interaction with the service system through the order dispatching result, and the service system does not need to query order information through a system calling mode any more, that is, the service system does not need to wait for the performance system to feed back the order dispatching result online any more; therefore, the order sending failure caused by overtime system calling can be effectively avoided, and the order sending stability is improved. Moreover, the performance system firstly stores the received order information into the order queue, and then performs order dispatching on the to-be-processed orders in the order queue according to the order dispatching logic, so that asynchronous order dispatching can be realized, and the order dispatching stability is further improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to an order management system, an order dispatching method, a device and a storage medium. Background Art

[0002] Order dispatch refers to the process in which the service platform automatically assigns orders to specific service providers (such as merchants or domestic service personnel). The service providers provide corresponding services to the ordering users based on the received order tasks.

[0003] At present, after the ordering user completes the order payment, the service platform will process the order according to the preset order dispatching logic. The order dispatching process includes: querying the order information, recalling, sorting and selecting the service provider, and assigning the order to the final selected service provider. This order dispatching method can be called synchronous order dispatching, in which the query of order information involves system calls. If the system call times out, it will cause the order dispatching to fail, resulting in unstable order dispatching. Summary of the invention

[0004] Multiple aspects of the present application provide an order management system, an order dispatching method, a device and a storage medium to improve the stability of order dispatching.

[0005] The embodiment of the present application provides an order management system, which decouples order collection and order dispatching, and includes a business system responsible for order collection and a fulfillment system responsible for order dispatching;

[0006] The business system is used to receive pending orders submitted by ordering users, and send order dispatching requests to the fulfillment system in an asynchronous request manner, wherein the order dispatching request includes order information of the pending orders;

[0007] The fulfillment system is used to receive the dispatch request sent by the business system in an asynchronous request manner; add the order information of the pending order to the order queue of the fulfillment system, and dispatch the pending orders in the order queue according to the dispatch scheduling logic; take the currently scheduled pending order as the target order, determine the order type of the target order according to the order information of the target order, and dispatch the target order according to the dispatch logic corresponding to the order type; return the dispatch result of the target order to the business system in an asynchronous response manner;

[0008] The business system is also used to notify the ordering user of the order dispatching result by modifying the order status of the target order according to the order dispatching result returned by the fulfillment system.

[0009] The present application provides an order dispatching method, which is applicable to a fulfillment system responsible for dispatching orders in an order management system. The order management system decouples order collection and order dispatching, and also includes a business system responsible for order collection. The order dispatching method includes:

[0010] Receiving an order dispatching request sent by a business system in an asynchronous request manner, wherein the order dispatching request includes order information of an order to be processed;

[0011] Adding the order information of the pending orders to the order queue of the fulfillment system, and dispatching the pending orders in the order queue according to the dispatching dispatching logic;

[0012] The currently scheduled pending order is taken as the target order, the order type of the target order is determined according to the order information of the target order, and the target order is dispatched according to the dispatch logic corresponding to the order type;

[0013] The dispatch result of the target order is returned to the business system in an asynchronous response manner, so that the business system can notify the ordering user of the dispatch result by modifying the order status of the target order.

[0014] The embodiment of the present application also provides a computing device, including: a memory, a processor, and a communication component;

[0015] The memory is used to store one or more computer instructions;

[0016] The processor is coupled to the memory and the communication component, and is configured to execute the one or more computer instructions to execute the aforementioned dispatching method.

[0017] An embodiment of the present application also provides a computer-readable storage medium storing computer instructions. When the computer instructions are executed by one or more processors, the one or more processors are caused to execute the aforementioned dispatching method.

[0018] An embodiment of the present application also provides a computer program product, including a computer program; when the computer program is executed by a processor, the processor is caused to execute the aforementioned dispatching method.

[0019] In the embodiment of the present application, the order management system is divided into a business system responsible for collecting orders and a fulfillment system responsible for dispatching orders. The fulfillment system can receive a dispatch request sent by the business system in an asynchronous request mode, add the order information of the pending order carried by the dispatch request to the order queue, and dispatch the pending orders in the order queue according to the dispatch scheduling logic; take the currently scheduled pending order as the target order, and dispatch the target order according to the dispatch logic corresponding to the order type to which the target order belongs; and return the dispatch result of the target order to the business system in an asynchronous response mode, so that the business system can notify the user of the dispatch result by modifying the order status of the target order. In this way, for any pending order, the "collection" and "dispatching" of the pending order are decoupled, and the fulfillment system dispatches the pending order, and asynchronously interacts with the business system through the dispatch result. The business system no longer needs to query the order information through the system call mode, which can effectively avoid the dispatch failure caused by the system call timeout and improve the stability of the dispatch. In addition, the fulfillment system will first store the received order information into the order queue, and then dispatch the pending orders in the order queue according to the dispatch scheduling logic, which can realize asynchronous dispatch and further improve the stability of order dispatch. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0021] Figure 1 A schematic diagram of the structure of an order management system provided for an exemplary embodiment of the present application;

[0022] Figure 2 A schematic diagram of a dispatch logic structure provided for an exemplary embodiment of the present application;

[0023] Figure 3 A structural diagram of an order dispatching application scenario provided by an exemplary embodiment of the present application;

[0024] Figure 4 A flowchart of a dispatching method provided for another exemplary embodiment of the present application;

[0025] Figure 5 A schematic diagram of the structure of a computing device is provided for yet another exemplary embodiment of the present application. DETAILED DESCRIPTION

[0026] In order to make the purpose, technical solution and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described below in combination with the specific embodiments of the present application and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.

[0027] As mentioned above, dispatching orders usually refers to the process in which a service platform or system automatically assigns orders or tasks to suitable service providers (such as merchants or domestic service personnel, etc.) based on task requirements. The service provider provides corresponding services to the ordering users based on the received dispatching tasks.

[0028] At present, after receiving a dispatch request for a pending order, the dispatch service platform usually recalls available service providers for the dispatch request according to the preset dispatch logic, and selects the final service provider from the recalled service providers to assign to the pending order. Among them, the process of recalling available service providers and selecting the final service provider involves a lot of calculations, which may extend the time to determine the final service provider. The dispatch request fails to receive the dispatch result within the specified time, causing the platform call timeout, which in turn leads to dispatch failure and unstable dispatch.

[0029] To improve this situation, this embodiment proposes an order management solution, which divides the service platform used to execute dispatch in the traditional solution into a business system responsible for collecting orders and a fulfillment system responsible for dispatching orders, decoupling the "collection" and "dispatching" of orders, and there is no need to wait online for the dispatch result after collecting orders. By asynchronously executing the interaction between collecting and dispatching orders, as well as asynchronous dispatching, dispatching failures caused by call timeouts or calculation timeouts can be avoided, thereby improving the stability of dispatching orders.

[0030] The technical solutions provided by various embodiments of the present application are described in detail below in conjunction with the accompanying drawings.

[0031] Figure 1 The following is a schematic diagram of the structure of an order management system provided by an exemplary embodiment of the present application. Figure 1 As shown, the system includes a business system and a fulfillment system. The business system is responsible for receiving orders, and the fulfillment system is responsible for dispatching orders. A communication connection is established between the business system and the fulfillment system, which can be a wired or wireless network connection. Generally speaking, the business system and the fulfillment system can be in the same local area network or in different networks, connected through the Internet.

[0032] The order management system provided in this embodiment can be applied to various order dispatching scenarios where service providers need to be assigned to orders, for example, assigning housekeeping service personnel to ordering users, assigning delivery personnel to takeaway orders, etc. This embodiment does not limit the application scenarios.

[0033] refer to Figure 1 For the business system, the business system can receive pending orders submitted by ordering users, and send dispatch requests to the fulfillment system in the form of asynchronous requests. The dispatch requests include order information of pending orders. Pending orders refer to orders that have not been assigned to service providers. The order information of pending orders may include but is not limited to order time, order location, service category, etc. Asynchronous requests allow the business system to send requests to the fulfillment system and receive responses without blocking the main thread, and can continue to perform other tasks or operations without waiting for the response of the fulfillment system. Among them, before sending a dispatch request to the fulfillment system, the pending order can be verified to determine whether the pending order is an order that allows dispatching. If the verification passes, a dispatch request is sent to the fulfillment system. If the verification fails, the order unavailability information is fed back to the ordering user, and the order is refunded.

[0034] For the fulfillment system, the fulfillment system can receive dispatch requests sent by the business system in an asynchronous request mode. After receiving each dispatch request, it will immediately feedback a signal of successful receipt of the request to the business system. After that, the order information of the pending orders can be parsed from the dispatch request, and the order information of the pending orders can be added to the order queue of the fulfillment system. The pending orders in the order queue can be dispatched according to the dispatch scheduling logic. Among them, the fulfillment system does not immediately execute the dispatch scheduling logic after adding the order information to the order queue, but needs to combine the current system's processing capacity to reasonably control the number of concurrently executed tasks to avoid system overload.

[0035] In this embodiment, the dispatching logic may be to dispatch orders according to the request order of pending orders and the order priority corresponding to the pending orders. For example, the fulfillment system may dispatch pending orders in the message queue in sequence according to the order order in the order queue; or, the business system may mark the order priority for pending orders according to actual business needs, and carry the order priority in the order information, so that the fulfillment system can dispatch pending orders according to the order priority in the order information. Among them, the business needs that affect the order priority may include but are not limited to the user ordering platform, order scenario, service provider type, etc.

[0036] On this basis, the currently scheduled pending order can be used as the target order, that is, the pending order being dispatched can be used as the target order. As mentioned above, the fulfillment system can execute multiple tasks concurrently. It can be understood that the fulfillment system can dispatch multiple target orders at the same time. The fulfillment system has the same idea of ​​dispatching these target orders. The following takes a target order as an example to illustrate the dispatching process of the target order.

[0037] Continue to refer Figure 1, the order information of the target order can be extracted from the order queue, the order type of the target order can be determined according to the order information of the target order, and the target order can be dispatched according to the dispatch logic corresponding to the order type to generate the dispatch result of the target order. The fulfillment system integrates dispatch logic corresponding to various order types, and the order types may include but are not limited to distribution dispatch, stored value priority dispatch, designated merchant dispatch, black box dispatch to merchants, direct dispatch of service personnel, etc.

[0038] After the fulfillment system extracts the order information of the target order from the order queue according to the dispatch scheduling logic, it can identify the order type of the target order according to the order information, and dispatch the target order according to the dispatch logic preset for the order type, and generate the dispatch result of the target order. After that, the dispatch result of the target order can be returned to the business system in an asynchronous response manner, so that the business system can notify the ordering user of the dispatch result by modifying the order status of the target order. The order status may include dispatch progress, service provider information, dispatch time, etc.

[0039] For the business system, after receiving the successful reception request signal returned by the fulfillment system, the dispatch progress of the target order can be changed from "ordered" to "in dispatch", and after receiving the dispatch result returned by the fulfillment system, the target order can be assigned to the corresponding target service provider according to the dispatch result, and the dispatch progress of the target order can be changed from "in dispatch" to "dispatched", and the target service provider information can be added to the order status of the target order. The target service provider information includes but is not limited to name / name, order number, contact number, service time, etc.

[0040] Optionally, the order management system may also include an order system, which is used to maintain orders and can interact directly with users. After the user submits an order on the order system, the order system can generate pending orders and order information, and provide the pending orders and order information submitted by the ordering user to the business system, so that the business system can request the fulfillment system to dispatch the pending order based on the order information of the pending order. After the fulfillment system sends the dispatch result generated for the pending order to the business system, the business system can assign the target order to the corresponding target service provider according to the dispatch result, and send order modification information for the target order to the order system. After receiving the order modification information, the order system can modify the order status of the target order according to the order modification information.

[0041] In actual applications, through the interaction between the order system and the business system, orders can be dispatched in time after the user places an order, and order information can be updated in time after the order is dispatched, so that users can know the latest status of the order in time, which can improve the user experience.

[0042] In this embodiment, it is possible to monitor whether there are orders to be supplemented in the order queue. If so, the orders to be supplemented are processed for supplementary dispatch. Among them, orders to be supplemented refer to orders that have timed out but have not yet been successfully dispatched. The timeout mentioned here refers to exceeding the preset order processing time. The preset order processing time can be set by the fulfillment system or by the business system. The monitoring of the order queue can be real-time or periodic, for example, once an hour. In addition, the process of supplementary dispatch of orders to be supplemented is the same as the process of dispatching orders to be processed. For specific technical details, please refer to the relevant description of dispatching orders to be processed in the previous text, which will not be repeated here.

[0043] By establishing a supplementary dispatch mechanism in the fulfillment system, orders that have been stuck in the order queue for a long time can be discovered in a timely manner, and these orders can be promptly supplemented to avoid missed orders. This can ensure the stability of order dispatch and improve user experience.

[0044] Accordingly, in this embodiment, the order management system is divided into a business system responsible for collecting orders and a fulfillment system responsible for dispatching orders. The fulfillment system can receive dispatching requests sent by the business system in an asynchronous request mode, add the order information of the pending orders carried by the dispatching request to the order queue, and dispatch the pending orders in the order queue according to the dispatching dispatching logic; take the currently scheduled pending orders as the target orders, and dispatch the target orders according to the dispatching logic corresponding to the order type to which the target orders belong; and return the dispatching results of the target orders to the business system in an asynchronous response mode, so that the business system can notify the user of the dispatching results by modifying the order status of the target orders. In this way, by decoupling the "collecting orders" and "dispatching orders" of the pending orders, the fulfillment system dispatches the pending orders uniformly, and asynchronously interacts with the business system through the dispatching results. The business system no longer needs to wait online for the fulfillment system to feedback the dispatching results, and does not need to query the order information through the system call mode, which can effectively avoid the dispatching failure caused by the system call timeout and improve the stability of the dispatching. In addition, the fulfillment system will first store the received order information into the order queue, and then dispatch the pending orders in the order queue according to the dispatch scheduling logic, which can realize asynchronous dispatch and further improve the stability of order dispatch.

[0045] In the above or following embodiments, the fulfillment system may use a variety of implementation methods to dispatch target orders according to the dispatch logic corresponding to the order type.

[0046] In an optional implementation, multiple dispatch sub-logics can be parsed from the dispatch logic corresponding to the order type, and the dispatch sub-logics include a service provider recall sub-logic, a service provider selection sub-logic, and a service provider allocation sub-logic. The service provider recall sub-logic can be executed to obtain available service providers who are idle and can undertake the target order from the service provider management system; the service provider selection sub-logic can be executed to obtain the service characteristics of the available service providers from the service provider portrait system; candidate service providers are selected based on the service characteristics of the available service providers; and the service provider allocation sub-logic can be executed to select a target service provider from the candidate service providers and allocate the target order to the target service provider.

[0047] In this optional implementation, the purpose of executing the dispatch logic is to determine the corresponding target service provider for the target order. The service provider can be understood as the merchant or service personnel who provides the corresponding service to the user who submits the target order. Different order types have different dispatch requirements. For example, when the order type is "directly dispatched to the service personnel", only the service personnel dimension needs to be considered. When the order type is "stored value priority dispatch", in addition to considering the service provider dimension, the user's stored value dimension also needs to be considered. Therefore, different dispatch logics are configured for different order types.

[0048] Each dispatch logic is composed of multiple steps. Therefore, each dispatch logic contains multiple dispatch sub-logics. Different dispatch sub-logics are used to describe different steps in the dispatch process. Dispatching sub-logics include but are not limited to service provider recall sub-logic, service provider selection sub-logic, and service provider allocation sub-logic. Service provider recall sub-logic is used to screen out a part of available service providers that can provide services for the target order from a large number of service providers. The selection sub-logic is used to further select candidate service providers that are compatible with the target order from the screened available service providers. The allocation sub-logic is used to determine the target service provider that is finally allocated to the target order from the previously screened candidate service providers. In this way, the most suitable service provider can be screened out for the target order through layer-by-layer screening.

[0049] Figure 2 The following is a schematic diagram of a dispatch logic structure provided by an exemplary embodiment of the present application. Figure 2 As shown, the fulfillment system also establishes communication connections with the service provider management system and the service provider portrait system. The service provider management system is used to provide the fulfillment system with available service providers who are in an idle state and can undertake the target order, and to modify the state information of the target service provider to a non-idle state according to the state modification information sent by the business system. The service provider portrait system is used to provide the fulfillment system with the service characteristics of available service providers.

[0050] refer to Figure 2, the fulfillment system can execute the service provider recall sub-logic to obtain the available service providers who are in an idle state and can undertake the target order from the service provider management system. The service provider management system can contain the service provider information of all service providers. The service providers can be merchants, service personnel, etc. The service provider information can be the name of the merchant, the name of the service personnel, the service status, the service location, the service type, the service item, etc. When the fulfillment system executes the service provider recall sub-logic, it can send a recall request to the service provider management system. After receiving the recall request, the service provider management system can query the service status of each service provider in the service provider information stored therein. The service status can be "working status", "idle status", "vacation status", "mute status", etc. First, the service providers whose service status is in an idle state are screened out, and then according to the order information of the target order carried in the recall request, combined with the service location, service type, service item, etc. of each service provider, the service providers who are in an idle state are screened out as the available service providers who can undertake the target order. It should be noted that, in this embodiment, different server management systems may be constructed for different servers, or server information of multiple servers may be stored in the same server management system, which is not limited in this embodiment.

[0051] On this basis, the fulfillment system can execute the service provider selection sub-logic to obtain the service characteristics of the available service providers from the service provider portrait system, and select candidate service providers based on the service characteristics of the available service providers. The service provider portrait system contains the service characteristics corresponding to different service providers. Different service characteristics can describe the service performance of service providers from different dimensions. Service characteristics include but are not limited to service level, service rate, dispatch rate, evaluation, complaint rate, etc., and in the service provider portrait system, different types of service providers are partitioned and stored, such as partitioned storage of merchant service characteristics and service characteristics of service personnel, so as to facilitate the query of service characteristics. The fulfillment system can send the service information of available service providers obtained through the recall sub-logic to the service provider portrait system, so that the service provider portrait system can query the service characteristics of available service providers based on the service information, and return the service characteristics corresponding to each available service provider to the fulfillment system. The fulfillment system can further screen out candidate service providers from a large number of available service providers based on the mapping relationship between available service providers and service characteristics.

[0052] In this optional implementation, various implementation schemes may be used to select a candidate server from available servers.

[0053] Preferably, according to the order type to which the target order belongs, the dispatch structure corresponding to the order type can be obtained, and the dispatch structure includes multiple screening layers, and each screening layer corresponds to a feature screening condition associated with the service feature. According to the priorities corresponding to the multiple screening layers, the multiple screening layers are sorted, and based on the sorted multiple screening layers, according to the feature screening conditions corresponding to the multiple screening layers, the available service providers are screened layer by layer to screen out candidate service providers for the target order.

[0054] It can be understood that the dispatching structure corresponding to the order type is actually a hierarchical structure. Each screening layer corresponds to a feature screening condition. The feature screening condition is screened according to the service characteristics. It can be understood that each screening layer corresponds to a service characteristic for screening service providers. In addition, there is a priority order between the levels. The higher the priority of the screening layer, the more important the service characteristic corresponding to the screening layer is. Some available service providers can be screened out through different screening layers in order from low to high priority, and the available service providers remaining after the last screening layer are used as candidate service providers.

[0055] For example, if the dispatch structure has three screening layers, the screening condition corresponding to the first screening layer is to screen out available service providers with a complaint rate higher than or equal to 50%, the screening condition corresponding to the second screening layer is to screen out available service providers with a service level lower than level two, and the screening condition corresponding to the third screening layer is available service providers with more than 10 negative reviews. After screening the available service providers layer by layer, the remaining available service providers with a complaint rate lower than 50%, a service level not lower than level two, and no more than 10 negative reviews are selected as candidate service providers for the target order.

[0056] In addition, in this preferred implementation, an offline method can be used to perform layer-by-layer screening. Offline computing can usually make full use of computing resources during non-peak hours, such as at night or on weekends. At this time, the system load is low and a large amount of data can be processed more efficiently, thereby improving the efficiency of screening candidate service providers; abnormal service providers can also be counted, and abnormal service providers include but are not limited to those who fail to provide services to ordering users within the specified time, those who falsify user evaluations, and those who are complained by users for a long time. Abnormal service providers can also be punished to encourage them to reflect on and improve their behavior, thereby improving user satisfaction and loyalty.

[0057] In this way, by configuring different dispatch structures for order types, the available service providers filtered out based on the dispatch structure can be more suitable for the order type, which can improve the accuracy of dispatch. In addition, the service features involved in the dispatch structure are pluggable, which makes it possible to flexibly configure the screening layer and feature screening conditions in the dispatch structure according to actual business needs, thereby ensuring the flexibility and accuracy of dispatch.

[0058] Of course, other implementation schemes may also be used to select candidate servers from available servers, which are not limited here.

[0059] Continue to refer Figure 2 , the fulfillment system can continue to execute the service provider allocation sub-logic to select a target service provider from the candidate service providers and allocate the target order to the target service provider. The number of target service providers can be one or more, and the number of target service providers is the same as the number of service providers required for the target order included in the order information. For example, the number of takeaway New Year's Day tickets allocated to a takeaway order is usually one, and the number of installation masters allocated to a home installation order is usually multiple.

[0060] In this embodiment, after the fulfillment system determines the target service provider, it can send the dispatch result including the target service provider to the business system. The business system may assign the target order to the target service provider based on the dispatch result, and send status modification information to the service provider management system after the assignment is completed, so that the service provider management system can modify the status information of the target service provider to a non-idle state according to the status modification information sent by the business system. In this way, the accuracy of obtaining available service providers for new target orders in the future can be guaranteed, thereby improving the accuracy of dispatching orders.

[0061] In this implementation, there are multiple implementation schemes for executing the server allocation logic to select a target server from candidate servers.

[0062] In an exemplary implementation, the scores corresponding to each candidate service provider can be calculated based on the service characteristics of the candidate service provider according to the preset scoring rules. The number of service providers required for the target order is parsed from the order information of the target order, and the candidate service providers with the same number of service providers are selected in descending order of scores as the target service providers of the target order. The scores calculated for the candidate service providers can be used to characterize the service quality of the candidate service providers, and the scoring rules used to calculate the scores can be the same scoring rules shared by different dispatch structures, or different scoring rules can be configured for different dispatch structures.

[0063] The idea of ​​calculating the score for each candidate service provider is the same, and the process of calculating the score is described by taking any candidate service provider as an example.

[0064] Optionally, for any candidate service provider, the score mapping rules of the service features and the mapping relationship between the service features and the weights can be parsed from the scoring rules. The score mapping rules refer to the mapping relationship between the feature values ​​of the service features and the feature scores. For example, the feature value corresponding to the service feature "complaint rate" can be 0 to 100%, and the score mapping rules of the complaint rate can be: if the complaint rate is 0-10%, the feature score corresponding to the complaint rate service feature is 5; if the complaint rate is 11%-20%, the feature score corresponding to the complaint rate service feature is 4; if the complaint rate is 21%-30%, the feature score corresponding to the complaint rate service feature is 3; if the complaint rate is 31%-50%, the feature score corresponding to the complaint rate service feature is 2; if the complaint rate is 41%-100%, the feature score corresponding to the complaint rate service feature is 1. The mapping relationship between service features and weights is used to describe the proportion of each service feature in the multiple service features involved in the calculation. For example, a candidate service provider may have four service features: service level, dispatch rate, evaluation, and complaint rate. The weight corresponding to the service level is 30%, the weight corresponding to the evaluation is 30%, the weight corresponding to the dispatch rate is 20%, and the weight corresponding to the complaint rate is 20%.

[0065] Based on this, the feature scores corresponding to each service feature of the candidate service provider can be calculated according to the score mapping rules of the service features. According to the mapping relationship between service features and weights, the feature scores corresponding to each service feature are weighted and summed to obtain the corresponding score of the candidate service provider. For example, if the candidate service provider can correspond to four service features, namely, service level, dispatch rate, evaluation, and complaint rate, and the feature scores corresponding to these four service features are 4, 5, 3, and 4, respectively, and the weights corresponding to these four service features are 30%, 30%, 20%, and 20%, respectively, then the feature scores corresponding to each service feature are weighted and summed (4*30%+5*30%+3*20%+4*20%), and the corresponding score of the candidate service provider can be obtained as 4.1.

[0066] In this embodiment, weights are assigned to service features according to their importance, and service provider scores are calculated using service features and their weights, so that the score can more accurately represent the service quality of the service provider, and help to more objectively and accurately screen suitable target service providers for target orders through scoring, so that orders can be assigned to better service providers, and users can get better services, thereby improving user experience.

[0067] Of course, other calculation methods may also be used to calculate the score, for example, the feature score corresponding to each service feature of the candidate server may be calculated, and the average of all feature scores of the candidate server may be calculated as the final score. This embodiment is not limited here.

[0068] In addition, other implementation schemes may be used to select target service providers from candidate service providers. For example, the order information may specify the number of service providers and the specified service features that the ordering user attaches the most importance to, determine the feature values ​​corresponding to each candidate service provider under the specified service features, and select the candidate service providers in the order of the feature values ​​from high to low as the target service providers for the target order. Alternatively, one or more candidate service providers may be randomly selected from the screened candidate service providers as the target service providers, and the number of target service providers is the same as the number of specified service providers in the order information. This embodiment does not limit the method of selecting the target service provider.

[0069] It should be noted that other implementation methods may be used in this embodiment to dispatch the target order according to the dispatch logic corresponding to the order type. As long as the dispatch of the target order can be achieved, no further examples are given here.

[0070] In summary, in this embodiment, the dispatch logic is obtained by splicing multiple dispatch sub-logics, each dispatch sub-logic represents a dispatch link in the dispatch process, and these dispatch sub-logics are pluggable for the dispatch logic, and the dispatch logic can be modified by replacing the dispatch sub-logic, which makes it possible to adjust the dispatch logic corresponding to the order type in real time and flexibly according to business needs, ensuring the flexibility and accuracy of dispatch. In addition, the dispatch process also involves the layer-by-layer screening of service providers, which can improve the compatibility between the target service provider and the target order, thereby improving the accuracy of dispatch.

[0071] In the above or following embodiments, an order distributor may be configured in the fulfillment system, in which order distributor is integrated order dispatch logic corresponding to a plurality of order types, and may be used to determine the order type to which a target order belongs based on the order information of the target order.

[0072] When an order type is identified based on the order information of the target order, the order type may be directly determined as the order type to which the target order belongs.

[0073] When multiple order types are identified based on the order information of the target order, the priorities corresponding to the multiple order types can be obtained, and based on the priorities corresponding to the multiple order types, the multiple order types can be sorted, and the first order type in the sorted order types can be determined as the order type to which the target order belongs.

[0074] From the development perspective, for different order types, corresponding order type description information can be annotated for each order type to facilitate developers to understand the order dispatching logic. Even if the developer is replaced, the correspondence between the order type and the order dispatching logic can be quickly and accurately understood, which helps developers to maintain the order dispatching logic.

[0075] In actual applications, the order dispatcher uniformly manages the order dispatching logic of various order types, which can unify the order dispatching process and facilitate the maintenance of the order dispatching logic in the later stage. The order dispatcher also configures a priority for each order type to avoid order dispatching anomalies under mixed order types and ensure the stability of order dispatching.

[0076] In addition, the fulfillment system also maintains multiple order dispatching components. Each order dispatching component implements order dispatching sub-logic, and different order dispatching components implement different order dispatching sub-logic. The order dispatching logic in the order dispatcher is composed of multiple order dispatching sub-logic. The order dispatching logic corresponding to the order type can be added, subtracted or modified in the order dispatcher.

[0077] When a new dispatch type is needed, at least two dispatch components required for the new order type can be selected from multiple dispatch components in response to a new operation on the order type. The dispatch sub-logics implemented by the multiple dispatch components are spliced ​​to form a new dispatch logic corresponding to the new order type, and the corresponding relationship between the new order type and the new dispatch logic is maintained.

[0078] Accordingly, in this embodiment, the method of developing a complete set of dispatch logic for each order type is abandoned, and the core links of the dispatch logic are integrated into different dispatch components. Through the dispatch component, a variety of pluggable dispatch logics are configured in the dispatch distributor, so that the addition, reduction and maintenance of the dispatch logic can be realized flexibly and quickly, which reduces the efficiency of developers in developing and maintaining the dispatch logic, helps to maintain the long-term and stable operation of the order management system, and thus helps to achieve the stability of dispatch.

[0079] Figure 3 The following is a schematic diagram of a dispatch application scenario provided by an exemplary embodiment of the present application. Figure 3 As shown, the dispatching scenario is to assign domestic service personnel to domestic service orders. This application scenario involves the order system, business system, fulfillment system, service provider portrait system, merchant management system, and service provider management system. The order system can be an order-placing terminal that interacts with users, the business system can be a service end responsible for collecting orders, the fulfillment system can be a service end responsible for dispatching orders, the service provider portrait system can be a database that stores service characteristics, and the merchant management system and service provider management system can be databases that store merchant information and service provider information, respectively. The steps for dispatching orders in this application scenario are as follows:

[0080] 1. The order system can generate pending orders in response to the user's order operation, and send the generated pending orders to the business system. The order information of the pending orders includes the user's address, housekeeping service items, door-to-door time, etc.;

[0081] 2. After receiving the pending order submitted by the order system, the business system sends an order request to the fulfillment system;

[0082] 3. After receiving the dispatch request, the fulfillment system immediately feeds back a signal of successful receipt of the request to the business system, and adds the order information of the pending order parsed from the dispatch request to the order queue of the fulfillment system;

[0083] 4. The fulfillment system can determine the order type of the target order based on the order information of the pending order using the dispatch distributor. The order type may include but is not limited to distribution dispatch, stored value priority dispatch, designated merchant dispatch, black box dispatch to merchants, direct dispatch of service personnel, etc.;

[0084] 5. Determine the dispatch logic corresponding to the order type. Different order types have different dispatch logics. For example, when dispatching orders from a black box to a merchant, the merchant must be screened first, and then domestic service personnel must be screened from the screened merchants. Direct dispatch service personnel can directly perform the screening of domestic service personnel. Taking the recall logic corresponding to the black box dispatching orders to merchants as an example, the recall sub-logic, selection sub-logic, and allocation sub-logic can be parsed from the dispatch logic.

[0085] 6. Execute the recall sub-logic to obtain available merchants who are idle and can undertake the target order from the merchant management system, and obtain available domestic service personnel who are idle and can undertake the target order from the service personnel management system;

[0086] 7. Based on the available merchants and available domestic service personnel obtained, the selection sub-logic is executed to obtain the service characteristics of the available merchants and the service characteristics of the available domestic service personnel from the service provider portrait system;

[0087] 8. Obtain the dispatch structure corresponding to the order type to which the target order belongs, and screen the available merchants and available domestic service personnel layer by layer according to the characteristic screening conditions corresponding to each screening layer in the dispatch structure, so as to screen out candidate merchants and candidate service personnel for the target order;

[0088] 9. Execute the allocation sub-logic to calculate the scores corresponding to each candidate merchant and each candidate domestic service personnel based on the service characteristics of the candidate merchants and the service characteristics of the candidate domestic service personnel, and select the target merchant and the target domestic service personnel from the candidate merchants and the candidate domestic service personnel in descending order of the scores to generate the dispatch result;

[0089] 10. Send the order dispatch result to the business system so that the business system can assign the target order to the target merchant and the target housekeeping service personnel, and send order modification information for the target order to the order system so that the order system can modify the order status of the target order according to the order modification information;

[0090] 11. After sending the order modification information to the order system, the business system may also send status modification information to the merchant management system and the service personnel management system, so as to modify the status information of the target merchant in the merchant management system to a non-idle state, and modify the status information of the target domestic service personnel in the service personnel management system to a non-idle state;

[0091] 12. The fulfillment system can also monitor the order queue in real time, so that if it detects that there are orders to be supplemented in the order queue, it can supplement the orders.

[0092] Figure 4 A flowchart of a method for dispatching orders provided as another exemplary embodiment of the present application. The method can be executed by a fulfillment system responsible for dispatching orders in an order management system. In terms of physical implementation, the fulfillment system can be a server device such as a conventional server, a cloud server, or a virtual center. The fulfillment system can be integrated into a data processing device, which can be implemented as a combination of software and / or hardware, and the data processing device can be integrated into a computing device. The order management system decouples order collection and dispatching, and also includes a business system responsible for order collection. Reference Figure 4 , the method comprising:

[0093] Step 400, receiving an order dispatching request sent by the business system in an asynchronous request manner, wherein the order dispatching request includes order information of the order to be processed;

[0094] Step 401, adding the order information of the pending orders to the order queue of the fulfillment system, and dispatching the pending orders in the order queue according to the dispatching logic;

[0095] Step 402: The currently scheduled pending order is used as the target order, the order type of the target order is determined according to the order information of the target order, and the target order is dispatched according to the dispatch logic corresponding to the order type;

[0096] Step 403, returns the dispatch result of the target order to the business system in an asynchronous response manner, so that the business system can notify the ordering user of the dispatch result by modifying the order status of the target order.

[0097] In an optional embodiment, in the process of dispatching the target order according to the dispatching logic corresponding to the order type, the method includes:

[0098] From the dispatch logic corresponding to the order type, multiple dispatch sub-logics are parsed, including the server recall sub-logic, server selection sub-logic, and server allocation sub-logic;

[0099] Execute the service provider recall sub-logic to obtain available service providers who are idle and can undertake the target order from the service provider management system;

[0100] Execute the service provider selection sub-logic to obtain the service characteristics of available service providers from the service provider portrait system; select candidate service providers based on the service characteristics of available service providers;

[0101] The service provider allocation sub-logic is executed to select a target service provider from the candidate service providers and allocate the target order to the target service provider.

[0102] In an optional embodiment, in the process of selecting a candidate server according to the service characteristics of the available server, the method includes:

[0103] Obtain the dispatch structure corresponding to the order type. The dispatch structure includes multiple filtering layers, and each filtering layer corresponds to a feature filtering condition associated with the service feature;

[0104] sorting the multiple screening layers according to their respective priorities;

[0105] Based on the sorted multiple screening layers, the available service providers are screened layer by layer according to the characteristic screening conditions corresponding to each of the multiple screening layers to select candidate service providers for the target order.

[0106] In an optional embodiment, in the process of executing the server allocation sub-logic to select a target server from candidate servers, the method includes:

[0107] Based on the service characteristics of the candidate service providers and in accordance with the preset scoring rules, the scores corresponding to the candidate service providers are calculated;

[0108] Analyze the number of servers required for the target order from the order information of the target order;

[0109] In descending order of scores, select candidate service providers of the same number as the target service providers for the target order.

[0110] In an optional embodiment, based on the service characteristics of the candidate service providers and in accordance with a preset scoring rule, in the process of calculating the scores corresponding to the candidate service providers, the method includes:

[0111] From the scoring rules, parse out the score mapping rules of service features and the mapping relationship between service features and weights;

[0112] For any candidate service provider, based on the score mapping rule of the service feature, the feature score corresponding to each service feature of the candidate service provider is calculated;

[0113] According to the mapping relationship between service features and weights, the feature scores corresponding to each service feature are weighted and summed to obtain the corresponding scores of the candidate service providers.

[0114] In an optional embodiment, in the process of determining the order type to which the target order belongs according to the order information of the target order, the method includes:

[0115] When an order type is identified according to the order information, the order type is determined as the order type to which the target order belongs;

[0116] When multiple order types are identified based on order information, the priorities corresponding to the multiple order types are obtained;

[0117] Sort multiple order types based on their respective priorities;

[0118] The first order type among the sorted order types is determined as the order type to which the target order belongs.

[0119] In an optional embodiment, the fulfillment system maintains a plurality of dispatching components, each dispatching component implements dispatching sub-logic, and different dispatching components implement different dispatching sub-logic, the method further includes:

[0120] In response to a new operation for an order type, selecting at least two order dispatching components required for the new order type from a plurality of order dispatching components;

[0121] The dispatching sub-logics implemented by multiple dispatching components are spliced ​​to form a new dispatching logic corresponding to the new order type;

[0122] Maintain the correspondence between new order types and new dispatching logic.

[0123] In an optional embodiment, it is possible to monitor whether there are any pending orders in the order queue, where pending orders refer to orders that have timed out but have not yet been successfully dispatched; if so, the pending orders are processed for dispatch.

[0124] The technical details in each embodiment of the above-mentioned order dispatching method can be referred to the relevant description of the actions of the fulfillment system in each embodiment of the aforementioned order management system. In order to save space, they will not be repeated here, but this should not cause any loss of the protection scope of this application.

[0125] It should be noted that the execution subject of each step of the method provided in the above embodiment can be the same device, or the method can be executed by different devices. For example, the execution subject of steps 401 to 403 can be device A; for another example, the execution subject of steps 401 and 402 can be device A, and the execution subject of step 403 can be device B; and so on.

[0126] In addition, in some of the processes described in the above embodiments and the accompanying drawings, multiple operations appearing in a specific order are included, but it should be clearly understood that these operations may not be executed in the order in which they appear in this document or may be executed in parallel, and the sequence numbers of the operations, such as 401, 402, etc., are only used to distinguish between different operations, and the sequence numbers themselves do not represent any execution order. In addition, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel.

[0127] Figure 5 A schematic diagram of a computing device provided as another exemplary embodiment of the present application is shown in FIG. Figure 5 As shown, the computing device includes: a memory 50 , a processor 51 and a communication component 52 .

[0128] The processor 51 is coupled to the memory 50 and is used to execute the computer program in the memory 50 to:

[0129] Receiving an order dispatching request sent by the business system in an asynchronous request mode, the order dispatching request including order information of the order to be processed;

[0130] Add the order information of pending orders to the order queue of the fulfillment system, and dispatch the pending orders in the order queue according to the dispatch logic;

[0131] The currently scheduled pending order is taken as the target order, the order type of the target order is determined according to the order information of the target order, and the target order is dispatched according to the dispatch logic corresponding to the order type;

[0132] The dispatch result of the target order is returned to the business system in an asynchronous response manner, so that the business system can notify the ordering user of the dispatch result by modifying the order status of the target order.

[0133] In an optional embodiment, during the process of dispatching the target order according to the dispatching logic corresponding to the order type, the processor 51 is further configured to:

[0134] From the dispatch logic corresponding to the order type, multiple dispatch sub-logics are parsed, including the server recall sub-logic, server selection sub-logic, and server allocation sub-logic;

[0135] Execute the service provider recall sub-logic to obtain available service providers who are idle and can undertake the target order from the service provider management system;

[0136] Execute the service provider selection sub-logic to obtain the service characteristics of available service providers from the service provider portrait system;

[0137] Select candidate service providers based on the service characteristics of available service providers;

[0138] The service provider allocation sub-logic is executed to select a target service provider from the candidate service providers and allocate the target order to the target service provider.

[0139] In an optional embodiment, in the process of selecting a candidate server according to the service characteristics of the available server, the processor 51 is further configured to:

[0140] Obtain the dispatch structure corresponding to the order type. The dispatch structure includes multiple filtering layers, and each filtering layer corresponds to a feature filtering condition associated with the service feature;

[0141] sorting the multiple screening layers according to their respective priorities;

[0142] Based on the sorted multiple screening layers, the available service providers are screened layer by layer according to the characteristic screening conditions corresponding to each of the multiple screening layers to select candidate service providers for the target order.

[0143] In an optional embodiment, in the process of executing the server allocation sub-logic to select the target server from the candidate servers, the processor 51 is further configured to:

[0144] Based on the service characteristics of the candidate service providers and in accordance with the preset scoring rules, the scores corresponding to the candidate service providers are calculated;

[0145] Analyze the number of servers required for the target order from the order information of the target order;

[0146] In descending order of scores, select candidate service providers of the same number as the target service providers for the target order.

[0147] In an optional embodiment, in the process of calculating the scores corresponding to the candidate service providers based on the service characteristics of the candidate service providers and according to the preset scoring rules, the processor 51 is further configured to:

[0148] From the scoring rules, parse out the score mapping rules of service features and the mapping relationship between service features and weights;

[0149] For any candidate service provider, based on the score mapping rule of the service feature, the feature score corresponding to each service feature of the candidate service provider is calculated;

[0150] According to the mapping relationship between service features and weights, the feature scores corresponding to each service feature are weighted and summed to obtain the corresponding scores of the candidate service providers.

[0151] In an optional embodiment, in the process of determining the order type to which the target order belongs according to the order information of the target order, the processor 51 is further configured to:

[0152] When an order type is identified according to the order information, the order type is determined as the order type to which the target order belongs;

[0153] When multiple order types are identified based on order information, the priorities corresponding to the multiple order types are obtained;

[0154] Sort multiple order types based on their respective priorities;

[0155] The first order type among the sorted order types is determined as the order type to which the target order belongs.

[0156] In an optional embodiment, the fulfillment system maintains multiple dispatching components, each dispatching component implements dispatching sub-logic, and different dispatching components implement different dispatching sub-logic. The processor 51 is further configured to:

[0157] In response to a new operation for an order type, selecting at least two order dispatching components required for the new order type from a plurality of order dispatching components;

[0158] The dispatching sub-logics implemented by multiple dispatching components are spliced ​​to form a new dispatching logic corresponding to the new order type;

[0159] Maintain the correspondence between new order types and new dispatching logic.

[0160] In an optional embodiment, the processor 51 is further configured to monitor whether there are pending orders in the order queue, where pending orders refer to orders that have timed out but have not been successfully dispatched;

[0161] If it exists, the order to be supplemented will be processed.

[0162] Further, if Figure 5 As shown, the computing device also includes other components such as a display 53 and a power supply component 54. Figure 5 Only some components are shown schematically, and it does not mean that the computing device only includes Figure 5 Components shown.

[0163] It is worth noting that the technical details in the above-mentioned embodiments of the computing device can refer to the relevant description of the actions of the computing device in the aforementioned embodiments of the dispatching method. In order to save space, they will not be repeated here, but this should not cause a loss in the scope of protection of the present application.

[0164] Accordingly, an embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed, can implement the steps that can be executed by a computing device in the above method embodiment.

[0165] The embodiment of the present application also provides a computer program product, including a computer program. When the computer program is executed by a processor, the steps in the above-mentioned dispatching method can be implemented. It should be noted that the technical solution of the computer program and the technical solution of the above-mentioned dispatching method belong to the same concept, and the details not described in detail in the technical solution of the computer program can be found in the description of the technical solution of the above-mentioned dispatching method.

[0166] Above Figure 5 The memory in the computer is used to store computer programs and can be configured to store various other data to support operations on the computing platform. Examples of such data include instructions for any application or method operating on the computing platform, contact data, phone book data, messages, pictures, videos, etc. The memory can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0167] Above Figure 5 The communication component in is configured to facilitate wired or wireless communication between the device where the communication component is located and other devices. The device where the communication component is located can access a wireless network based on a communication standard, such as WiFi, 2G, 3G, 4G / LTE, 5G and other mobile communication networks, or a combination thereof. In an exemplary embodiment, the communication component receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0168] Above Figure 5 The display in the embodiment includes a screen, which may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.

[0169] Above Figure 5 The power supply component in the device provides power to various components of the device where the power supply component is located. The power supply component may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the device where the power supply component is located.

[0170] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.

[0171] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0172] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0173] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0174] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0175] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0176] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0177] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0178] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0179] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. A method for dispatching orders, characterized in that: Applicable to the fulfillment system responsible for dispatching orders in the order management system, the order management system decouples order collection and dispatching, and also includes a business system responsible for order collection, and the dispatching method includes: Receiving an order dispatching request sent by a business system in an asynchronous request manner, wherein the order dispatching request includes order information of an order to be processed; Adding the order information of the pending orders to the order queue of the fulfillment system, and dispatching the pending orders in the order queue according to the dispatching dispatching logic; The currently scheduled pending order is taken as the target order, the order type of the target order is determined according to the order information of the target order, and the target order is dispatched according to the dispatch logic corresponding to the order type; The dispatch result of the target order is returned to the business system in an asynchronous response manner, so that the business system can notify the ordering user of the dispatch result by modifying the order status of the target order.

2. The method according to claim 1, characterized in that The target order is dispatched according to the dispatch logic corresponding to the order type, including: Parsing a plurality of order dispatching sub-logics from the order dispatching logic corresponding to the order type, wherein the order dispatching sub-logics include a server recalling sub-logic, a server selecting sub-logic, and a server allocating sub-logic; Executing the service provider recall sub-logic to obtain an available service provider who is in an idle state and can undertake the target order from the service provider management system; Executing the server selection sub-logic to obtain service characteristics of the available server from the server portrait system; Selecting a candidate service provider according to the service characteristics of the available service providers; The server allocation sub-logic is executed to select a target server from the candidate servers and allocate the target order to the target server.

3. The method according to claim 2, characterized in that The selecting a candidate service provider according to the service characteristics of the available service provider comprises: Acquire an order dispatch structure corresponding to the order type, wherein the order dispatch structure includes a plurality of screening layers, each screening layer corresponding to a feature screening condition associated with a service feature; sorting the plurality of screening layers according to respective priorities corresponding to the plurality of screening layers; Based on the sorted multiple screening layers, the available service providers are screened layer by layer according to the characteristic screening conditions corresponding to each of the multiple screening layers, so as to screen out candidate service providers for the target order.

4. The method according to claim 2, characterized in that: Executing the server allocation sub-logic to select a target server from the candidate servers includes: Based on the service characteristics of the candidate service providers, and in accordance with the preset scoring rules, the scores corresponding to the candidate service providers are calculated; Analyzing the number of servers required for the target order from the order information of the target order; The candidate service providers of the number of service providers are selected in descending order of scores as the target service providers of the target order.

5. The method according to claim 4, characterized in that The step of calculating the scores of the candidate service providers based on the service characteristics of the candidate service providers and in accordance with a preset scoring rule includes: From the scoring rules, parse out the score mapping rules of the service features and the mapping relationship between the service features and the weights; For any candidate service provider, based on the score mapping rule of the service feature, calculate the feature score corresponding to each service feature of the candidate service provider; According to the mapping relationship between the service features and the weights, the feature scores corresponding to the respective service features are weighted and summed to obtain the scores corresponding to the candidate service providers.

6. The method according to claim 1, characterized in that Determining the order type of the target order according to the order information of the target order includes: When an order type is identified according to the order information, the order type is determined as the order type to which the target order belongs; When multiple order types are identified according to the order information, obtaining the priorities corresponding to the multiple order types respectively; sorting the multiple order types based on the priorities corresponding to the multiple order types; The first order type among the sorted order types is determined as the order type to which the target order belongs.

7. The method according to claim 1, characterized in that The fulfillment system maintains a plurality of dispatching components, each dispatching component implements dispatching sub-logic, and different dispatching components implement different dispatching sub-logic. The method further includes: In response to a new operation for an order type, selecting at least two order dispatching components required for the new order type from a plurality of order dispatching components; splicing the dispatching sub-logics implemented by the multiple dispatching components to form a new dispatching logic corresponding to the new order type; Maintain the correspondence between the newly added order type and the newly added order dispatching logic.

8. The method according to claim 1, characterized in that: The method further comprises: Monitoring whether there are pending orders in the order queue, wherein the pending orders refer to orders that have timed out but have not been successfully dispatched; If so, the order to be re-dispatched will be re-dispatched.

9. An order management system, characterized in that: The order management system decouples order collection and order dispatching, and includes a business system responsible for order collection and a fulfillment system responsible for order dispatching; The business system is used to receive pending orders submitted by ordering users, and send order dispatching requests to the fulfillment system in an asynchronous request manner, wherein the order dispatching request includes order information of the pending orders; The fulfillment system is used to receive the dispatch request sent by the business system in an asynchronous request manner; Adding the order information of the pending orders to the order queue of the fulfillment system, and dispatching the pending orders in the order queue according to the dispatching dispatching logic; The currently scheduled pending order is taken as the target order, the order type of the target order is determined according to the order information of the target order, and the target order is dispatched according to the dispatch logic corresponding to the order type; Returning the dispatch result of the target order to the business system in an asynchronous response manner; The business system is also used to notify the ordering user of the order dispatching result by modifying the order status of the target order according to the order dispatching result returned by the fulfillment system.

10. The system according to claim 9, characterized in that The order management system also includes: an order system for maintaining orders; The business system is further used to send order modification information for the target order to the order system; The order system is used to provide the business system with pending orders submitted by ordering users; and to modify the order status of the target order according to the order modification information sent by the business system.

11. The system according to claim 9, characterized in that The order management system also includes a server management system and a server portrait system; The service provider management system is used to provide the fulfillment system with available service providers that are in an idle state and can undertake the target order; According to the status modification information sent by the business system, modify the status information of the target server to a non-idle state; The service provider portrait system is used to provide the service characteristics of the available service providers to the fulfillment system.

12. A computing device, characterized in that: Includes memory, processor, and communication components; The memory is used to store one or more computer instructions; The processor is coupled to the memory and the communication component, and is used to execute the one or more computer instructions to execute the dispatching method described in any one of claims 1-8.

13. A computer-readable storage medium storing computer instructions, characterized in that: When the computer instructions are executed by one or more processors, the one or more processors are caused to execute the dispatching method described in any one of claims 1-8.

Citation Information

Patent Citations

  • Order processing method and device and storage medium

    CN112819573A

  • Order fulfillment control method and device, equipment, medium and product

    CN115952013A

  • Page rendering method, device and equipment and computer readable storage medium

    CN116738110A

  • Order processing method and system, electronic equipment and storage medium

    CN117408778A

  • System and method for asynchronous distribution of transaction orders

    CN117853193A