Order allocation method, device and equipment and computer readable storage medium
By obtaining consultation order information, identifying target departments and candidate service recipients, and selecting target service recipients who can process orders within the target time frame, the problem of untimely order processing in online consultation systems is solved, improving efficiency and matching accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING SANKUAI ONLINE TECH CO LTD
- Filing Date
- 2022-05-26
- Publication Date
- 2026-04-28
AI Technical Summary
In online consultation systems, untimely order processing leads to low efficiency and high dropout rates.
By obtaining the order information of consultation orders, the target department and candidate service recipients are determined, the target service recipients who can process the orders within the target time period are selected, and the service recipients are assigned based on the order type and current processing status.
This improved the efficiency of order processing, reduced the dropout rate, and ensured the matching of orders with service recipients and timely processing.
Smart Images

Figure CN115019945B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to an order allocation method, apparatus, device, and computer-readable storage medium. Background Technology
[0002] With the continuous development of computer technology, online consultations have become increasingly widely used. Online consultations provide users with medical services anytime, anywhere, greatly simplifying the user's medical process.
[0003] In related technologies, users submit consultation orders on online consultation platforms. After receiving the consultation order, the consultation system randomly assigns a service recipient, such as a consulting doctor, to the consultation order.
[0004] If the service recipient has a large number of consultation orders to process, the processing of consultation orders will be untimely and inefficient, resulting in a high rate of consultation order loss. Summary of the Invention
[0005] This application provides an order allocation method, apparatus, device, and computer-readable storage medium, which can be used to solve the problems of untimely order processing, low processing efficiency, and high order loss rate in related technologies. The technical solution is as follows:
[0006] On one hand, embodiments of this application provide an order allocation method, the method comprising:
[0007] Obtain the order information of the consultation orders to be assigned, wherein the order information includes at least one of symptom information and resource information;
[0008] Based on the order information of the consultation order, the target department corresponding to the consultation order is determined. The target department includes at least one candidate service object, which is an object that is currently online and can provide services that match the order information.
[0009] A target service object is determined from the at least one candidate service object, wherein the target service object is a service object that can process the consultation order within a target duration;
[0010] The consultation order is assigned to the target service recipient.
[0011] In one possible implementation, determining the target service object from the at least one candidate service object includes:
[0012] Get the number of parallel processing orders corresponding to each candidate service object and the number of currently processing orders corresponding to each candidate service object;
[0013] The total number of orders that the target department can serve is determined based on the number of parallel processing orders corresponding to each candidate service object.
[0014] The total number of orders currently being processed for the target department is determined based on the number of orders currently being processed for each of the candidate service recipients.
[0015] Based on the total number of serviceable orders and the total number of currently processed orders, a target service object is determined from the at least one candidate service object.
[0016] In one possible implementation, determining the target service object from the at least one candidate service object based on the total number of serviceable orders and the total number of currently processed orders includes:
[0017] In response to the current total number of orders being processed being equal to the total number of orders available for service, the order type of the consultation order is determined;
[0018] Add the consultation order to the target queue corresponding to the order type of the consultation order;
[0019] Based on the location of the consultation order in the target queue, the target service object is determined from the at least one candidate service object.
[0020] In one possible implementation, the order type includes a first order type and a second order type, wherein the timeliness requirement corresponding to the first order type is higher than the timeliness requirement corresponding to the second order type;
[0021] In response to the current total number of processed orders equaling the total number of serviceable orders, the order type of the consultation order is determined, including:
[0022] In response to the current total number of processed orders being equal to the total number of serviceable orders, the provider corresponding to the target resource for the consultation order is determined.
[0023] Determine the delivery method corresponding to the provided object;
[0024] Based on the fact that the delivery method corresponding to the provided object is the first delivery method, the order type corresponding to the consultation order is determined to be the first order type;
[0025] Based on the fact that the delivery method corresponding to the provided object is the second delivery method, the order type corresponding to the consultation order is determined to be the second order type, and the delivery time corresponding to the first delivery method is less than the delivery time corresponding to the second delivery method.
[0026] In one possible implementation, determining the target service object from the at least one candidate service object based on the location of the consultation order in the target queue includes:
[0027] Based on the location of the consultation order in the target queue, a first service object is determined from the at least one candidate service object, wherein the number of currently processed orders of the first service object is less than the number of parallel processed orders of the first service object;
[0028] The first service object is used as the target service object.
[0029] In one possible implementation, after adding the consultation order to the target queue corresponding to the order type of the consultation order, the method further includes:
[0030] Determine the number of orders in the target queue that precede the consultation order;
[0031] The estimated waiting time for the consultation order is determined based on the number of orders in the target queue that precede the consultation order.
[0032] Send at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order to the terminal device, and display at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order on the terminal device, wherein the terminal device is a device used by the object corresponding to the consultation order.
[0033] In one possible implementation, determining the estimated waiting time for the consultation order based on the number of orders preceding the consultation order in the target queue includes:
[0034] Obtain the time required for an order in the target queue to move forward one position; determine the estimated waiting time for the consultation order based on the number of orders in the target queue preceding the consultation order and the time required for an order in the target queue to move forward one position;
[0035] Alternatively, the waiting time that matches the number of orders in the target queue preceding the consultation order can be used as the estimated waiting time for the consultation order.
[0036] In one possible implementation, the time required to advance one position in the target queue includes:
[0037] Obtain the number of orders in the target queue at the target time and the time required to process all orders in the target queue at the target time;
[0038] Based on the duration and the number of orders in the target queue at the target time, determine the duration required for an order in the target queue to advance one position.
[0039] In one possible implementation, obtaining the number of parallel processing orders corresponding to each candidate service object includes:
[0040] For any one of the candidate service objects, obtain the initial number of parallel processing orders corresponding to the candidate service object and the order service information of the candidate service object in the target time period;
[0041] Based on the order service information of any candidate service object within the target time period, determine the order service quality of any candidate service object;
[0042] Based on the order service quality of any candidate service object, the initial number of parallel processing orders corresponding to any candidate service object is adjusted to obtain the number of parallel processing orders corresponding to any candidate service object.
[0043] In one possible implementation, adjusting the initial number of parallel-processed orders corresponding to any candidate service object based on the order service quality of the candidate service object to obtain the number of parallel-processed orders corresponding to the candidate service object includes:
[0044] Determine the difference between the order service quality and the quality threshold for any of the candidate service objects;
[0045] Determine the target quantity corresponding to the difference;
[0046] The target number is added to the initial number of parallel processing orders corresponding to any candidate service object to obtain the number of parallel processing orders corresponding to any candidate service object.
[0047] In one possible implementation, determining the target service object from the at least one candidate service object based on the total number of serviceable orders and the total number of currently processed orders includes:
[0048] In response to the fact that the total number of currently processed orders is less than the total number of serviceable orders, at least one second service object is determined from the candidate service objects, wherein the number of currently processed orders of the second service object is less than the number of concurrently processed orders of the second service object;
[0049] Since there are multiple second service objects, the second service object whose difference between the number of parallel processing orders and the number of currently processed orders meets the difference requirement is taken as the target service object.
[0050] On the other hand, embodiments of this application provide an order allocation device, the device comprising:
[0051] The acquisition module is used to acquire the order information of the consultation orders to be assigned, wherein the order information includes at least one of symptom information and resource information;
[0052] The determination module is used to determine the target department corresponding to the consultation order based on the order information of the consultation order. The target department includes at least one candidate service object, which is an object that is currently online and can provide services that match the order information.
[0053] The determining module is further configured to determine a target service object among the at least one candidate service object, wherein the target service object is a service object that can process the consultation order within a target duration;
[0054] The allocation module is used to allocate the consultation order to the target service object.
[0055] In one possible implementation, the determining module is configured to: obtain the number of parallel processing orders corresponding to each candidate service object and the number of currently processing orders corresponding to each candidate service object; determine the total number of serviceable orders for the target department based on the number of parallel processing orders corresponding to each candidate service object; determine the total number of currently processing orders for the target department based on the number of currently processing orders corresponding to each candidate service object; and determine the target service object from the at least one candidate service object based on the total number of serviceable orders and the total number of currently processing orders.
[0056] In one possible implementation, the determining module is configured to, in response to the current total number of processed orders being equal to the total number of serviceable orders, determine the order type of the consultation order; add the consultation order to the target queue corresponding to the order type of the consultation order; and, based on the target position of the consultation order in the target queue, determine the target service object from the at least one candidate service object.
[0057] In one possible implementation, the order type includes a first order type and a second order type, wherein the timeliness requirement corresponding to the first order type is higher than the timeliness requirement corresponding to the second order type;
[0058] The determining module is configured to, in response to the current total number of processed orders being equal to the total number of serviceable orders, determine the providing object corresponding to the target resource of the consultation order; determine the delivery method corresponding to the providing object; determine the order type corresponding to the consultation order as the first order type based on the delivery method corresponding to the providing object being the first delivery method; and determine the order type corresponding to the consultation order as the second order type based on the delivery method corresponding to the providing object being the second delivery method, wherein the delivery time corresponding to the first delivery method is less than the delivery time corresponding to the second delivery method.
[0059] In one possible implementation, the determining module is configured to determine a first service object from the at least one candidate service object based on the target position of the consultation order in the target queue, wherein the number of currently processed orders of the first service object is less than the number of parallel processed orders of the first service object; and to designate the first service object as the target service object.
[0060] In one possible implementation, the determining module is further configured to determine the number of orders in the target queue preceding the consultation order; and to determine the estimated waiting time corresponding to the consultation order based on the number of orders in the target queue preceding the consultation order.
[0061] The device further includes:
[0062] A sending module is used to send at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order to a terminal device, and to display at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order on the terminal device, wherein the terminal device is a device used by the object corresponding to the consultation order.
[0063] In one possible implementation, the determining module is configured to obtain the time required for an order in the target queue to move forward one position; and determine the estimated waiting time corresponding to the consultation order based on the number of orders in the target queue preceding the consultation order and the time required for an order in the target queue to move forward one position.
[0064] Alternatively, the waiting time that matches the number of orders in the target queue preceding the consultation order can be used as the estimated waiting time for the consultation order.
[0065] In one possible implementation, the determining module is used to obtain the number of orders in the target queue at the target time and the time required to process all the orders in the target queue at the target time; and based on the time and the number of orders in the target queue at the target time, to determine the time required for the orders in the target queue to move forward one position.
[0066] In one possible implementation, the determining module is configured to, for any one of the candidate service objects, obtain the initial number of parallel processing orders corresponding to the candidate service object and the order service information of the candidate service object in a target time period; determine the order service quality of the candidate service object based on the order service information of the candidate service object in the target time period; and adjust the initial number of parallel processing orders corresponding to the candidate service object based on the order service quality of the candidate service object to obtain the number of parallel processing orders corresponding to the candidate service object.
[0067] In one possible implementation, the determining module is configured to determine the difference between the order service quality and the quality threshold of any candidate service object; determine the target quantity corresponding to the difference; and add the target quantity to the initial parallel processing order quantity corresponding to any candidate service object to obtain the parallel processing order quantity corresponding to the candidate service object.
[0068] In one possible implementation, the determining module is configured to, in response to the total number of currently processed orders being less than the total number of serviceable orders, determine at least one second service object from the candidate service objects, wherein the number of currently processed orders of the second service object is less than the number of parallel processed orders of the second service object; and, based on the fact that there are multiple second service objects, select the second service object whose difference between the number of parallel processed orders and the number of currently processed orders satisfies the difference requirement as the target service object.
[0069] On the other hand, embodiments of this application provide an electronic device, which includes a processor and a memory. The memory stores at least one piece of program code, which is loaded and executed by the processor to enable the electronic device to implement any of the order allocation methods described above.
[0070] On the other hand, a computer-readable storage medium is also provided, wherein at least one piece of program code is stored therein, the at least one piece of program code being loaded and executed by a processor to enable a computer to implement any of the order allocation methods described above.
[0071] On the other hand, a computer program or computer program product is also provided, wherein the computer program or computer program product stores at least one computer instruction, which is loaded and executed by a processor to enable the computer to implement any of the above-described order allocation methods.
[0072] The technical solution provided in this application has at least the following beneficial effects:
[0073] The technical solution provided in this application determines the target service recipient for processing consultation orders based on the department corresponding to the consultation order, resulting in a high degree of matching between the determined target service recipient and the consultation order, and making the determined target service recipient more accurate. Furthermore, this application does not directly assign the consultation order to a specific service recipient after receiving it; instead, it first identifies a target service recipient capable of processing the consultation order and then assigns the consultation order to that target service recipient. This allows the target service recipient to process the consultation order within a target timeframe, resulting in more timely processing, improved efficiency, and reduced order loss. Attached Figure Description
[0074] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0075] Figure 1 This is a schematic diagram illustrating the implementation environment of an order allocation method provided in an embodiment of this application;
[0076] Figure 2 This is a flowchart of an order allocation method provided in an embodiment of this application;
[0077] Figure 3 This is a schematic diagram illustrating the display of a resource acquisition page provided in an embodiment of this application;
[0078] Figure 4 This is a flowchart of an order allocation method provided in an embodiment of this application;
[0079] Figure 5 This is a schematic diagram of the structure of an order allocation device provided in an embodiment of this application;
[0080] Figure 6 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application;
[0081] Figure 7 This is a schematic diagram of the structure of a server provided in an embodiment of this application. Detailed Implementation
[0082] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.
[0083] Figure 1 This is a schematic diagram illustrating the implementation environment of an order allocation method provided in an embodiment of this application, such as... Figure 1 As shown, the implementation environment includes: terminal device 101 and server 102.
[0084] The order allocation method provided in this application embodiment can be executed by terminal device 101 or server 102, and this application embodiment does not limit it.
[0085] The terminal device 101 can be at least one of a smartphone, game console, desktop computer, tablet computer, e-book reader, and laptop computer. The server 102 can be a single server, a server cluster consisting of multiple servers, or any of a cloud computing platform and virtualization center; this embodiment does not limit the specific type of server 102. The server 102 communicates with the terminal device 101 via a wired or wireless network. The server 102 has data receiving, data processing, and data sending functions. Of course, the server 102 may also have other functions; this embodiment does not limit the specific functions of the server 102.
[0086] Terminal device 101 can refer to one of a plurality of terminal devices. This embodiment uses terminal device 101 as an example. Those skilled in the art will know that the number of terminal devices 101 can be more or less. For example, there may be only one terminal device 101, or there may be dozens or hundreds of terminal devices 101, or more. This application embodiment does not limit the number or type of terminal devices.
[0087] Based on the above implementation environment, this application provides an order allocation method. Figure 2 The flowchart shown in this embodiment of the application illustrates an order allocation method. This method can be implemented by... Figure 1 The server 102 in the middle executes. For example... Figure 2 As shown, the method includes the following steps 201 to 204.
[0088] In step 201, the order information of the consultation orders to be assigned is obtained.
[0089] The order information includes at least one of symptom information and resource information, wherein the resource information refers to the resource information of the target resource corresponding to the consultation order. The resource information of the target resource can be the resource name of the target resource, the resource code of the target resource, or other information that can uniquely identify the target resource; this application embodiment does not limit this.
[0090] In the exemplary embodiments of this application, the terminal device used by the interactive object has an application installed and running for obtaining resources. The interactive object interacts with the terminal device so that the terminal device obtains the order information of the consultation order. The terminal device sends the order information of the consultation order to the server, that is, the server obtains the order information of the consultation order, and then the server allocates the consultation order.
[0091] Optionally, in response to an interaction object's selection command for the application, the terminal device displays the application's homepage, where the interaction object can determine the target resource to be obtained. A consultation order is generated based on the target resource, and the resource information of the target resource is used as the order information for the consultation order.
[0092] For example, the resource name of the target resource that the interactive object needs to obtain is "[Digen] Diclofenac Sodium Extended-Release Tablets 0.1*12 tablets", so the order information of the consultation order is determined to be "[Digen] Diclofenac Sodium Extended-Release Tablets 0.1*12 tablets".
[0093] Optionally, in response to the selection instruction of the interactive object on the application, the terminal device displays the home page of the application, and the interactive object can enter symptom information on the home page of the application, generate a consultation order based on the symptom information, and use the symptom information as the order information of the consultation order.
[0094] For example, the symptom information input by the interactive object is "rheumatoid arthritis, migratory soreness, redness, and pain in joints and muscles". Therefore, the order information for the consultation order is determined to be "rheumatoid arthritis, migratory soreness, redness, and pain in joints and muscles".
[0095] Optionally, symptom information and resource information of the target resource can be combined as order information for a consultation order.
[0096] For example, the symptom information input by the interactive object is "rheumatoid arthritis, migratory soreness, redness, and pain in joints and muscles". The resource name of the target resource that the interactive object needs to obtain is "[Digen] Diclofenac Sodium Extended-Release Tablets 0.1*12 tablets". Therefore, the order information of the consultation order is determined to be "rheumatoid arthritis, migratory soreness, redness, and pain in joints and muscles, and [Digen] Diclofenac Sodium Extended-Release Tablets 0.1*12 tablets".
[0097] In step 202, the target department corresponding to the consultation order is determined based on the order information of the consultation order.
[0098] In one possible implementation, the target department includes at least one candidate service object, which is an object currently online and capable of providing services matching the order information. For example, an online physician could be a candidate service object.
[0099] When the order information of a consultation order is the resource information of the target resource, the target department corresponding to the consultation order is determined based on the resource information of the target resource. For example, the department corresponding to the resource information of the target resource is determined and used as the target department for the consultation order.
[0100] For example, the resource information of the target resource is "[Digen] Diclofenac Sodium Extended Release Tablets 0.1*12 tablets", and the department corresponding to "[Digen] Diclofenac Sodium Extended Release Tablets 0.1*12 tablets" is "Rheumatology Department". Therefore, the target department corresponding to the consultation order is determined to be "Rheumatology Department".
[0101] In one possible implementation, when the order information for a consultation order is symptom information, the target department corresponding to the consultation order is determined based on the symptom information. For example, key information is extracted from the symptom information, the department corresponding to the key information is determined, and the department corresponding to the key information is used as the target department for the consultation order.
[0102] Optionally, the process of determining the department corresponding to the key information includes: determining the matching degree between the key information and candidate departments, and selecting the candidate department with the highest matching degree as the department corresponding to the key information. Specifically, the process of determining the matching degree between the key information and candidate departments includes: determining the feature vector corresponding to the key information; determining the feature vector corresponding to the candidate department; and determining the matching degree between the key information and the candidate department based on the feature vectors corresponding to the key information and the candidate departments.
[0103] For example, the symptom information is "rheumatoid arthritis, migratory soreness, redness, and pain in joints and muscles." The key information extracted from the symptom information is "rheumatoid arthritis." The department corresponding to "rheumatoid arthritis" is determined to be "rheumatology," therefore, "rheumatology" is selected as the target department for the consultation order.
[0104] Optionally, in response to a consultation order containing resource information and symptom information of a target resource, a first department corresponding to the resource information of the target resource and a second department corresponding to the symptom information are determined. If the first and second departments are the same, then the first department (or the second department) is designated as the department corresponding to the consultation order. If the first and second departments are different, then a department is randomly selected from the first and second departments as the department corresponding to the consultation order. Alternatively, if the first and second departments are different, a third department is designated as the target department corresponding to the consultation order, where the third department includes both the first and second departments.
[0105] In step 203, a target service object is determined from at least one candidate service object. The target service object is the service object that can process consultation orders within the target duration.
[0106] In one possible implementation, this application embodiment does not limit the process of determining the target service object from at least one candidate service object. Optionally, the number of parallel processing orders and the number of currently processing orders corresponding to each candidate service object are obtained. The number of parallel processing orders indicates the number of orders that a candidate service object can currently process, and the number of currently processing orders indicates the number of orders that a candidate service object currently needs to process. Based on the number of parallel processing orders corresponding to each candidate service object, the total number of serviceable orders for the target department is determined. Based on the number of currently processing orders corresponding to each candidate service object, the total number of currently processing orders for the target department is determined. Based on the total number of serviceable orders and the total number of currently processing orders, the target service object is determined from at least one candidate service object.
[0107] Optionally, the sum of the number of parallel processing orders corresponding to each candidate service object is determined as the total number of serviceable orders for the target department. The sum of the number of currently processing orders corresponding to each candidate service object is determined as the total number of currently processing orders for the target department.
[0108] For example, there are three candidate service objects: Candidate Service Object 1, Candidate Service Object 2, and Candidate Service Object 3. The number of parallel processing orders for each of Candidate Service Object 1, Candidate Service Object 2, and Candidate Service Object 3 is 5. Therefore, the total number of serviceable orders for the target department is 5 + 5 + 5 = 15. The current number of processing orders for Candidate Service Object 1 is 3, for Candidate Service Object 2 is 5, and for Candidate Service Object 3 is 4. Therefore, the total number of current processing orders for the target department is 3 + 5 + 4 = 12.
[0109] In one possible implementation, there are two ways to obtain the number of parallel processing orders corresponding to each candidate service object.
[0110] Method 1: For any candidate service object among all candidate service objects, the initial number of parallel processing orders is taken as the number of parallel processing orders for that candidate service object.
[0111] The initial number of orders processed in parallel is set based on experience or adjusted according to the implementation environment; this embodiment of the application does not limit this. For example, the initial number of orders processed in parallel is 5.
[0112] Method 2: For any candidate service object among all candidate service objects, obtain the initial number of parallel processing orders corresponding to the candidate service object and the order service information of the candidate service object in the target time period; based on the order service information of the candidate service object in the target time period, adjust the initial number of parallel processing orders corresponding to the candidate service object to obtain the number of parallel processing orders corresponding to the candidate service object.
[0113] In one possible implementation, the process of adjusting the initial number of parallel processing orders corresponding to any candidate service object based on its order service information within the target time period to obtain the total number of parallel processing orders for that candidate service object includes: determining the order service quality of any candidate service object based on its order service information within the target time period; and adjusting the initial number of parallel processing orders corresponding to any candidate service object based on its order service quality to obtain the total number of parallel processing orders for that candidate service object.
[0114] Optionally, the order service information includes at least one of response speed, dialogue frequency, and service evaluation. Of course, the order service information may also include other information, and this embodiment does not limit this. The process of determining the order service quality of any candidate service object based on its order service information within a target time period includes: obtaining the weight parameters corresponding to the order service information; and determining the order service quality of any candidate service object based on its order service information and the corresponding weight parameters. The weight parameters corresponding to the order service information are set based on experience or adjusted according to the implementation environment, and this embodiment does not limit this.
[0115] Optionally, the difference between the order service quality and a quality threshold for any candidate service object is determined; a target quantity corresponding to the difference is determined; and the target quantity is added to the initial number of parallel-processed orders for any candidate service object to obtain the number of parallel-processed orders for that candidate service object. The quality threshold is set based on experience or adjusted according to the implementation environment; this embodiment does not limit its implementation. For example, the quality threshold is 3.
[0116] For example, the initial number of parallel processing orders for any candidate service object is 5, the difference between the order service quality and the quality threshold of any candidate service object is 1, and the target quantity corresponding to this difference is 1. Therefore, by adding 1 to the initial number of parallel processing orders for any candidate service object, the number of parallel processing orders for any candidate service object is obtained, that is, the number of parallel processing orders for any candidate service object is 5+1=6.
[0117] In one possible implementation, the target service object is determined from at least one candidate service object based on the total number of serviceable orders and the total number of currently processed orders in two ways.
[0118] Scenario 1: In response to the current total number of orders being processed being equal to the total number of orders available for service, the target service object is determined from at least one candidate service object based on the order type of the consultation order.
[0119] In one possible implementation, in response to the current total number of orders being processed being equal to the total number of orders available for service, the order type of the consultation order is determined; the consultation order is added to the target queue corresponding to the order type of the consultation order; and based on the target position of the consultation order in the target queue, the target service object is determined from at least one candidate service object.
[0120] The order types include a first order type and a second order type. The timeliness requirement for the first order type is higher than that for the second order type. For example, the first order type is an O2O (Online to Offline) order type, and the second order type is a B2C (Business-to-Customer) order type. The process of determining the order type of a consultation order includes: determining the provider corresponding to the target resource of the consultation order; determining the delivery method corresponding to the provider. Based on the delivery method corresponding to the provider, the order type of the consultation order is determined. For example, based on the delivery method corresponding to the provider being the first delivery method, the order type of the consultation order is determined to be the first order type. Based on the delivery method corresponding to the provider being the second delivery method, the order type of the consultation order is determined to be the second order type, where the delivery time for the first delivery method is shorter than that for the second delivery method. For example, the first delivery method is a food delivery method, and the second delivery method is a courier delivery method.
[0121] Optionally, based on the target position of the consultation order in the target queue, a first service object is determined from at least one candidate service object, wherein the number of currently processed orders for the first service object is less than the number of concurrently processed orders for the first service object. The first service object is then designated as the target service object. The target position can be the first position or any other position; this embodiment does not limit the specific location.
[0122] For example, the consultation order is located at the first position in the target queue. The number of orders currently being processed by candidate service object one is less than the number of orders being processed in parallel by candidate service object one. Therefore, candidate service object one is selected as the target service object.
[0123] In one possible implementation, after adding the consultation order to the target queue corresponding to its order type, the number of orders preceding the consultation order in the target queue can be determined. Based on the number of orders preceding the consultation order in the target queue, the estimated waiting time for the consultation order is determined. At least one of the number of orders preceding the consultation order and the estimated waiting time for the consultation order is sent to the terminal device, which is a device used by the object corresponding to the consultation order. This allows the object corresponding to the consultation order to know how many orders precede its own, or allows the object corresponding to the target object to know how long it needs to wait.
[0124] There are two methods to determine the expected waiting time for a consultation order based on the number of orders preceding the consultation order in the target queue.
[0125] Method 1: Obtain the time required for an order in the target queue to move forward one position; based on the number of orders in the target queue that are ahead of the consultation order and the time required for an order in the target queue to move forward one position, determine the estimated waiting time for the consultation order.
[0126] In one possible implementation, this application embodiment does not limit the method for obtaining the time required to advance one position of orders in the target queue. For example, the number of orders in the target queue at a target time and the time required to process all orders in the target queue at the target time are obtained. Based on the time and the number of orders in the target queue at the target time, the time required to advance one position of orders in the target queue is determined. Optionally, the quotient between the time and the number of orders in the target queue at the target time is used as the time required to advance one position of orders in the target queue.
[0127] The target time can be any time, and this embodiment of the application does not limit it. For example, the number of orders in the target queue at the target time is 10, and the time required to process all the orders in the target queue at the target time is 20 minutes. Therefore, the time required to move the orders in the target queue forward one position is: 20 ÷ 10 = 2 minutes.
[0128] The estimated waiting time for a consultation order is the product of the time required to advance an order in the target queue by one position and the number of orders in the target queue that precede the consultation order.
[0129] Method 2: Use the waiting time that matches the number of orders in the target queue that precedes the consultation order as the estimated waiting time for the consultation order.
[0130] Optionally, the server stores the correspondence between quantity and waiting time. After determining the number of orders in the target queue that precede the consultation order, the waiting time matching the number of orders in the target queue that precede the consultation order is used as the expected waiting time for the consultation order.
[0131] For example, the number of orders in the target queue that precede the consultation order is 20, and the waiting time corresponding to 20 is 30 minutes. Therefore, the estimated waiting time for the consultation order is determined to be 30 minutes.
[0132] It should be noted that any of the above methods can be used to determine the estimated waiting time for a consultation order, and this application embodiment does not limit this.
[0133] like Figure 3 The image shown is a schematic diagram illustrating the display of a resource acquisition page according to an embodiment of this application. Figure 3The system displays the number of orders (23) preceding the consultation orders in the target queue, and the estimated waiting time for each consultation order (03:23). It can also display order information for consultation orders, such as... Figure 3 The system displays symptom information for the online consultation order (rheumatoid arthritis, migratory soreness, redness, and pain in joints and muscles), and resource information for the target resource corresponding to the consultation order ([Digen] Diclofenac Sodium Extended-Release Tablets 0.1*12 tablets×2). Optionally, Figure 3 The system can also display object information corresponding to consultation orders, such as object name, object gender, and object age.
[0134] Scenario 2: In response to the current total number of orders being processed being less than the total number of orders that can be served, at least one second service object is determined from the candidate service objects, and the target service object is determined from the at least one second service object.
[0135] In this case, the number of orders currently being processed by the second service object is less than the number of orders being processed in parallel by the second service object. The target service object is determined from at least one second service object under the following two conditions.
[0136] In the first scenario, if there is only one second service object, then the second service object is used as the target service object.
[0137] For example, the candidate service objects include candidate service object one, candidate service object two, and candidate service object three. The current number of orders processed by candidate service object one is less than the number of orders processed in parallel by candidate service object one; the current number of orders processed by candidate service object two is equal to the number of orders processed in parallel by candidate service object two; and the current number of orders processed by candidate service object three is equal to the number of orders processed in parallel by candidate service object three. Therefore, candidate service object one is designated as the second service object, and candidate service object one is designated as the target service object.
[0138] In the second scenario, if there are multiple second service objects, the second service object whose difference between the number of orders processed in parallel and the number of orders currently being processed meets the difference requirement is taken as the target service object.
[0139] The requirement that the difference between the number of orders processed in parallel and the number of orders currently being processed meets the difference requirement means that the difference between the number of orders processed in parallel and the number of orders currently being processed is the largest, or the difference between the number of orders processed in parallel and the number of orders currently being processed is the smallest. This application does not limit this.
[0140] Optionally, based on the fact that there are multiple second service objects, the number of parallel processing orders and the number of currently processing orders for each second service object are obtained, and then the difference between the number of parallel processing orders and the number of currently processing orders for each second object is determined. The second service object whose difference between the number of parallel processing orders and the number of currently processing orders meets the difference requirement is selected as the target service object.
[0141] For example, the candidate service objects include candidate service object one, candidate service object two, and candidate service object three. Candidate service object one currently has 3 orders being processed and 5 orders being processed in parallel; candidate service object two currently has 2 orders being processed and 5 orders being processed in parallel; candidate service object three currently has 5 orders being processed and 5 orders being processed in parallel. Therefore, candidate service object one and candidate service object two are designated as the second service object. The difference between the number of orders processed in parallel and the number of orders being processed currently for candidate service object one is 2, and the difference between the number of orders processed in parallel and the number of orders being processed currently for candidate service object two is 3. Therefore, candidate service object two is determined as the target service object.
[0142] In one possible implementation, since the timeliness requirement for O2O orders is higher than that for B2C orders, orders in the O2O order queue can be processed first. Once all orders in the O2O queue have been processed, orders in the B2C order queue can then be processed. Alternatively, the first few orders in the O2O queue can be processed first, followed by the second few orders in the B2C queue, and so on. The first number is less than the second number, but this embodiment does not limit this. For example, if the first number is 5 and the second number is 1, then 5 orders in the O2O queue are processed first, followed by 1 few orders in the B2C queue, then the 5 orders in the O2O queue are processed again, then the 1 order in the B2C queue is processed, and so on.
[0143] In step 204, the consultation order is assigned to the target service recipient.
[0144] In one possible implementation, after identifying the target service recipient in step 203 above, the consultation order is assigned to the target service recipient. That is, the order information of the consultation order is sent to the target service recipient, who then processes the consultation order.
[0145] The aforementioned method determines the target service recipients for processing consultation orders based on the department corresponding to the consultation order, resulting in a high degree of matching between the identified target service recipients and the consultation orders, and thus a more accurate identification of the target service recipients. Furthermore, this application does not directly assign consultation orders to a specific service recipient upon receipt; instead, it first identifies a target service recipient capable of processing the consultation order and then assigns the consultation order to that recipient. This ensures that the target service recipient can process the consultation order within the target timeframe, resulting in more timely processing, improved efficiency, and a lower consultation order churn rate.
[0146] Figure 4 This is a flowchart of an order allocation method provided in an embodiment of this application. For example... Figure 4 As shown, upon receiving a consultation order, the target department corresponding to the consultation order is determined; it is then determined whether the current total number of orders being processed in the target department is less than the total number of orders that the target department can serve. In response to the current total number of orders being processed in the target department being less than the total number of orders that can serve, at least one first service object is determined from the candidate service objects. The target service object is then determined from the at least one service object. The consultation order is assigned to the target service object.
[0147] In response to the target department having a current total number of processed orders that is not less than the total number of serviceable orders, the order type of the consultation order is determined. The consultation order is added to the target queue corresponding to the order type. In response to the consultation order being located at the target position in the target queue, at least one second service object is determined from the candidate service objects. The target service object is determined from the at least one second service object. The consultation order is assigned to the target service object.
[0148] Figure 5 The diagram shown is a structural schematic of an order allocation device provided in an embodiment of this application. Figure 5 As shown, the device includes:
[0149] The acquisition module 501 is used to acquire the order information of the consultation orders to be assigned, and the order information includes at least one of symptom information and resource information;
[0150] The determination module 502 is used to determine the target department corresponding to the consultation order based on the order information of the consultation order. The target department includes at least one candidate service object, which is an object that is currently online and can provide services that match the order information.
[0151] The determining module 502 is further configured to determine a target service object among at least one candidate service object, wherein the target service object is a service object that can process consultation orders within a target duration;
[0152] The allocation module 503 is used to allocate consultation orders to target service recipients.
[0153] In one possible implementation, the determining module 502 is used to obtain the number of parallel processing orders corresponding to each candidate service object and the number of currently processing orders corresponding to each candidate service object; determine the total number of serviceable orders for the target department based on the number of parallel processing orders corresponding to each candidate service object; determine the total number of currently processing orders for the target department based on the number of currently processing orders corresponding to each candidate service object; and determine the target service object from at least one candidate service object based on the total number of serviceable orders and the total number of currently processing orders.
[0154] In one possible implementation, the determining module 502 is used to determine the order type of the consultation order in response to the current total number of processed orders being equal to the total number of serviceable orders; add the consultation order to the target queue corresponding to the order type of the consultation order; and determine the target service object from at least one candidate service object based on the target position of the consultation order in the target queue.
[0155] In one possible implementation, the order type includes a first order type and a second order type, where the timeliness requirement for the first order type is higher than that for the second order type.
[0156] The determination module 502 is used to determine the providing object corresponding to the target resource of the consultation order in response to the current total number of processed orders being equal to the total number of serviceable orders; determine the delivery method corresponding to the providing object; determine the order type corresponding to the consultation order as the first order type based on the delivery method corresponding to the providing object being the first delivery method; determine the order type corresponding to the consultation order as the second order type based on the delivery method corresponding to the providing object being the second delivery method, wherein the delivery time corresponding to the first delivery method is less than the delivery time corresponding to the second delivery method.
[0157] In one possible implementation, the determining module 502 is used to determine a first service object from at least one candidate service object based on the target position of the consultation order in the target queue, wherein the number of currently processed orders of the first service object is less than the number of parallel processed orders of the first service object; and the first service object is used as the target service object.
[0158] In one possible implementation, the determining module 502 is further configured to determine the number of orders in the target queue that precede the consultation order; and determine the estimated waiting time corresponding to the consultation order based on the number of orders in the target queue that precede the consultation order.
[0159] The device also includes:
[0160] The sending module is used to send at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order to the terminal device, and to display at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order on the terminal device. The terminal device is a device used by the object corresponding to the consultation order.
[0161] In one possible implementation, the determining module 502 is used to obtain the time required for an order in the target queue to move forward one position; and to determine the estimated waiting time corresponding to the consultation order based on the number of orders in the target queue that are preceding the consultation order and the time required for an order in the target queue to move forward one position.
[0162] Alternatively, the waiting time that matches the number of orders in the target queue preceding the consultation order can be used as the estimated waiting time for the consultation order.
[0163] In one possible implementation, the determining module 502 is used to obtain the number of orders in the target queue at the target time and the time required to process all the orders in the target queue at the target time; based on the time and the number of orders in the target queue at the target time, the time required for the orders in the target queue to move forward one position is determined.
[0164] In one possible implementation, the determining module 502 is used to, for any candidate service object among the candidate service objects, obtain the initial parallel processing order quantity corresponding to the candidate service object and the order service information of the candidate service object in the target time period; determine the order service quality of the candidate service object based on the order service information of the candidate service object in the target time period; and adjust the initial parallel processing order quantity corresponding to the candidate service object based on the order service quality of the candidate service object to obtain the parallel processing order quantity corresponding to the candidate service object.
[0165] In one possible implementation, the determining module 502 is used to determine the difference between the order service quality and the quality threshold of any candidate service object; determine the target quantity corresponding to the difference; and add the target quantity to the initial parallel processing order quantity corresponding to any candidate service object to obtain the parallel processing order quantity corresponding to any candidate service object.
[0166] In one possible implementation, the determining module 502 is used to determine at least one second service object among the candidate service objects in response to the current total number of processed orders being less than the total number of serviceable orders. The number of currently processed orders of the second service object is less than the number of parallel processed orders of the second service object. Based on the fact that there are multiple second service objects, the second service object whose difference between the number of parallel processed orders and the number of currently processed orders meets the difference requirement is taken as the target service object.
[0167] The aforementioned device determines the target service recipient for processing consultation orders based on the department corresponding to the consultation order, resulting in a high degree of matching between the identified target service recipient and the consultation order, and thus a more accurate identification of the target service recipient. Furthermore, this application does not directly assign a consultation order to a specific service recipient upon receipt; instead, it first identifies a target service recipient capable of processing the consultation order and then assigns the consultation order to that recipient. This ensures that the target service recipient can process the consultation order within a target timeframe, resulting in more timely processing, improved efficiency, and a lower consultation order attrition rate.
[0168] It should be understood that the above-described apparatus is only illustrated by the division of the functional modules described above when implementing its functions. In practical applications, the functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0169] Figure 6 This illustration shows a structural block diagram of a terminal device 600 provided in an exemplary embodiment of this application. The terminal device 600 may be a portable mobile terminal, such as a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), MP4 player (Moving Picture Experts Group Audio Layer IV), laptop computer, or desktop computer. The terminal device 600 may also be referred to as a user device, portable terminal, laptop terminal, desktop terminal, or other names.
[0170] Typically, terminal device 600 includes a processor 601 and a memory 602.
[0171] Processor 601 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 601 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 601 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 601 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 601 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0172] The memory 602 may include one or more computer-readable storage media, which may be non-transitory. The memory 602 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 602 are used to store at least one instruction, which is executed by the processor 601 to implement the order allocation method provided in the method embodiments of this application.
[0173] In some embodiments, the terminal device 600 may also optionally include a peripheral device interface 603 and at least one peripheral device. The processor 601, memory 602, and peripheral device interface 603 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 603 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 604, a display screen 605, a camera assembly 606, an audio circuit 607, a positioning assembly 608, and a power supply 609.
[0174] Peripheral interface 603 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 601 and memory 602. In some embodiments, processor 601, memory 602 and peripheral interface 603 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 601, memory 602 and peripheral interface 603 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0175] The radio frequency (RF) circuit 604 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 604 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 604 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 604 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc. The RF circuit 604 can communicate with other terminal devices through at least one wireless communication protocol. This wireless communication protocol includes, but is not limited to: the World Wide Web, metropolitan area networks, intranets, various generations of mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and / or WiFi (Wireless Fidelity) networks. In some embodiments, the RF circuit 604 may also include circuitry related to NFC (Near Field Communication), which is not limited in this application.
[0176] Display screen 605 is used to display a UI (User Interface). This UI may include graphics, text, icons, videos, and any combination thereof. When display screen 605 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 601 for processing. In this case, display screen 605 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 605, disposed on the front panel of terminal device 600; in other embodiments, there may be at least two display screens, disposed on different surfaces of terminal device 600 or in a folded design; in still other embodiments, display screen 605 may be a flexible display screen, disposed on a curved or folded surface of terminal device 600. Furthermore, display screen 605 may be configured as a non-rectangular irregular shape, i.e., a non-rectangular screen. Display screen 605 may be made of materials such as LCD (Liquid Crystal Display) or OLED (Organic Light-Emitting Diode).
[0177] The camera assembly 606 is used to acquire images or videos. Optionally, the camera assembly 606 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the terminal device 600, and the rear-facing camera is located on the back of the terminal device 600. In some embodiments, there are at least two rear-facing cameras, which are any one of a main camera, a depth-sensing camera, a wide-angle camera, and a telephoto camera, to achieve background blurring by fusion of the main camera and the depth-sensing camera, panoramic shooting by fusion of the main camera and the wide-angle camera, VR (Virtual Reality) shooting, or other fusion shooting functions. In some embodiments, the camera assembly 606 may also include a flash. The flash can be a single-color temperature flash or a dual-color temperature flash. A dual-color temperature flash is a combination of a warm-light flash and a cool-light flash, which can be used for light compensation at different color temperatures.
[0178] The audio circuit 607 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, converting the sound waves into electrical signals that are input to the processor 601 for processing, or input to the radio frequency circuit 604 to achieve voice communication. For stereo sound acquisition or noise reduction purposes, multiple microphones may be used, each located at a different part of the terminal device 600. The microphone may also be an array microphone or an omnidirectional microphone. The speaker is used to convert electrical signals from the processor 601 or the radio frequency circuit 604 into sound waves. The speaker may be a conventional diaphragm speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can convert electrical signals not only into audible sound waves but also into inaudible sound waves for purposes such as distance measurement. In some embodiments, the audio circuit 607 may also include a headphone jack.
[0179] The positioning component 608 is used to locate the current geographical location of the terminal device 600 in order to enable navigation or LBS (Location Based Service). The positioning component 608 can be a positioning component based on the US GPS (Global Positioning System), China's BeiDou system, or Russia's Galileo system.
[0180] Power supply 609 is used to supply power to the various components in terminal device 600. Power supply 609 can be AC power, DC power, a disposable battery, or a rechargeable battery. When power supply 609 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery that is charged via a wired line, and a wireless rechargeable battery is a battery that is charged via a wireless coil. The rechargeable battery can also be used to support fast charging technology.
[0181] In some embodiments, the terminal device 600 further includes one or more sensors 160. The one or more sensors 160 include, but are not limited to: an accelerometer 611, a gyroscope 612, a pressure sensor 613, a fingerprint sensor 614, an optical sensor 615, and a proximity sensor 616.
[0182] Accelerometer 611 can detect the magnitude of acceleration along the three coordinate axes of a coordinate system established by terminal device 600. For example, accelerometer 611 can be used to detect the components of gravitational acceleration along the three coordinate axes. Processor 601 can control display screen 605 to display the user interface in either a landscape or portrait view based on the gravitational acceleration signal acquired by accelerometer 611. Accelerometer 611 can also be used for games or for acquiring user motion data.
[0183] The gyroscope sensor 612 can detect the orientation and rotation angle of the terminal device 600. The gyroscope sensor 612, in conjunction with the accelerometer sensor 611, can collect 3D motion data from the user on the terminal device 600. Based on the data collected by the gyroscope sensor 612, the processor 601 can perform the following functions: motion sensing (e.g., changing the UI based on the user's tilt), image stabilization during shooting, game control, and inertial navigation.
[0184] The pressure sensor 613 can be disposed on the side bezel of the terminal device 600 and / or on the lower layer of the display screen 605. When the pressure sensor 613 is disposed on the side bezel of the terminal device 600, it can detect the user's grip signal on the terminal device 600, and the processor 601 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 613. When the pressure sensor 613 is disposed on the lower layer of the display screen 605, the processor 601 can control the operable controls on the UI interface based on the user's pressure operation on the display screen 605. The operable controls include at least one of button controls, scroll bar controls, icon controls, and menu controls.
[0185] The fingerprint sensor 614 is used to collect a user's fingerprint. The processor 601 identifies the user based on the fingerprint collected by the fingerprint sensor 614, or vice versa. When the user's identity is identified as trusted, the processor 601 authorizes the user to perform relevant sensitive operations, including unlocking the screen, viewing encrypted information, downloading software, making payments, and changing settings. The fingerprint sensor 614 can be located on the front, back, or side of the terminal device 600. When the terminal device 600 has a physical button or manufacturer logo, the fingerprint sensor 614 can be integrated with the physical button or manufacturer logo.
[0186] An optical sensor 615 is used to collect ambient light intensity. In one embodiment, the processor 601 can control the display brightness of the display screen 605 based on the ambient light intensity collected by the optical sensor 615. Specifically, when the ambient light intensity is high, the display brightness of the display screen 605 is increased; when the ambient light intensity is low, the display brightness of the display screen 605 is decreased. In another embodiment, the processor 601 can also dynamically adjust the shooting parameters of the camera assembly 606 based on the ambient light intensity collected by the optical sensor 615.
[0187] The proximity sensor 616, also known as a distance sensor, is typically mounted on the front panel of the terminal device 600. The proximity sensor 616 is used to detect the distance between the user and the front of the terminal device 600. In one embodiment, when the proximity sensor 616 detects that the distance between the user and the front of the terminal device 600 is gradually decreasing, the processor 601 controls the display screen 605 to switch from a screen-on state to a screen-off state; when the proximity sensor 616 detects that the distance between the user and the front of the terminal device 600 is gradually increasing, the processor 601 controls the display screen 605 to switch from a screen-off state to a screen-on state.
[0188] Those skilled in the art will understand that Figure 6 The structure shown does not constitute a limitation on the terminal device 600, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0189] Figure 7 This is a schematic diagram of the server structure provided in the embodiments of this application. The server 700 can vary considerably due to different configurations or performance. It may include one or more Central Processing Units (CPUs) 701 and one or more memories 702. The one or more memories 702 store at least one line of program code, which is loaded and executed by the one or more processors 701 to implement the order allocation method provided in the various method embodiments described above. Of course, the server 700 may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server 700 may also include other components for implementing device functions, which will not be elaborated here.
[0190] In an exemplary embodiment, a computer-readable storage medium is also provided, which stores at least one piece of program code that is loaded and executed by a processor to enable a computer to implement any of the above-described order allocation methods.
[0191] Optionally, the aforementioned computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.
[0192] In an exemplary embodiment, a computer program or computer program product is also provided, which stores at least one computer instruction that is loaded and executed by a processor to enable the computer to implement any of the above-described order allocation methods.
[0193] It should be noted that all information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in this application have been authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the order information involved in this application was obtained with full authorization.
[0194] It should be understood that "multiple" as used in this article refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0195] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0196] The above description is merely an exemplary embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the principles of this application should be included within the protection scope of this application.
Claims
1. An order allocation method, characterized in that, The method includes: Obtain the order information of the consultation orders to be assigned, wherein the order information includes at least one of symptom information and resource information; Based on the order information of the consultation order, the target department corresponding to the consultation order is determined. The target department includes at least one candidate service object, which is an object that is currently online and can provide services that match the order information. A target service object is determined from the at least one candidate service object, wherein the target service object is a service object that can process the consultation order within a target duration; The consultation order is assigned to the target service recipient; The step of determining the target service object from the at least one candidate service object includes: Get the number of parallel processing orders corresponding to each candidate service object and the number of currently processing orders corresponding to each candidate service object; The total number of orders that the target department can serve is determined based on the number of parallel processing orders corresponding to each candidate service object. The total number of orders currently being processed for the target department is determined based on the number of orders currently being processed for each of the candidate service recipients. Based on the total number of serviceable orders and the total number of currently processed orders, a target service object is determined from the at least one candidate service object; The step of obtaining the number of parallel processing orders corresponding to each candidate service object includes: For any one of the candidate service objects, obtain the initial number of parallel processing orders corresponding to the candidate service object and the order service information of the candidate service object in the target time period; Based on the order service information of any candidate service object within the target time period, determine the order service quality of any candidate service object; Based on the order service quality of any candidate service object, the initial number of parallel processing orders corresponding to any candidate service object is adjusted to obtain the number of parallel processing orders corresponding to any candidate service object. The step of adjusting the initial number of parallel processing orders corresponding to any candidate service object based on the order service quality of any candidate service object to obtain the number of parallel processing orders corresponding to any candidate service object includes: Determine the difference between the order service quality and the quality threshold for any of the candidate service objects; Determine the target quantity corresponding to the difference; The target number is added to the initial number of parallel processing orders corresponding to any candidate service object to obtain the number of parallel processing orders corresponding to any candidate service object. The step of determining the target service object from the at least one candidate service object based on the total number of serviceable orders and the total number of currently processed orders includes: In response to the current total number of orders being processed being equal to the total number of orders available for service, the order type of the consultation order is determined; Add the consultation order to the target queue corresponding to the order type of the consultation order; Based on the target position of the consultation order in the target queue, a target service object is determined from the at least one candidate service object; The order types include a first order type and a second order type, wherein the timeliness requirement corresponding to the first order type is higher than that corresponding to the second order type; The step of determining the order type of the consultation order in response to the current total number of processed orders equaling the total number of serviceable orders includes: In response to the current total number of processed orders being equal to the total number of serviceable orders, the provider corresponding to the target resource for the consultation order is determined. Determine the delivery method corresponding to the provided object; Based on the fact that the delivery method corresponding to the provided object is the first delivery method, the order type corresponding to the consultation order is determined to be the first order type; Based on the fact that the delivery method corresponding to the provided object is the second delivery method, the order type corresponding to the consultation order is determined to be the second order type, and the delivery time corresponding to the first delivery method is less than the delivery time corresponding to the second delivery method.
2. The method according to claim 1, characterized in that, The step of determining the target service object from the at least one candidate service object based on the target position of the consultation order in the target queue includes: Based on the location of the consultation order in the target queue, a first service object is determined from the at least one candidate service object, wherein the number of currently processed orders of the first service object is less than the number of parallel processed orders of the first service object; The first service object is used as the target service object.
3. The method according to claim 1, characterized in that, After adding the consultation order to the target queue corresponding to the order type of the consultation order, the method further includes: Determine the number of orders in the target queue that precede the consultation order; The estimated waiting time for the consultation order is determined based on the number of orders preceding the consultation order in the target queue. Send at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order to the terminal device, and display at least one of the number of orders preceding the consultation order and the estimated waiting time corresponding to the consultation order on the terminal device, wherein the terminal device is a device used by the object corresponding to the consultation order.
4. The method according to claim 3, characterized in that, The step of determining the estimated waiting time for a consultation order based on the number of orders preceding the consultation order in the target queue includes: Obtain the time required for an order in the target queue to move forward one position; determine the estimated waiting time for the consultation order based on the number of orders in the target queue preceding the consultation order and the time required for an order in the target queue to move forward one position; Alternatively, the waiting time that matches the number of orders in the target queue preceding the consultation order can be used as the estimated waiting time for the consultation order.
5. The method according to claim 4, characterized in that, The time required to advance one position in the target queue includes: Obtain the number of orders in the target queue at the target time and the time required to process all orders in the target queue at the target time; Based on the duration and the number of orders in the target queue at the target time, determine the duration required for an order in the target queue to advance one position.
6. The method according to claim 1, characterized in that, The step of determining the target service object from the at least one candidate service object based on the total number of serviceable orders and the total number of currently processed orders includes: In response to the fact that the total number of currently processed orders is less than the total number of serviceable orders, at least one second service object is determined from the candidate service objects, wherein the number of currently processed orders of the second service object is less than the number of concurrently processed orders of the second service object; Since there are multiple second service objects, the second service object whose difference between the number of parallel processing orders and the number of currently processed orders meets the difference requirement is taken as the target service object.
7. An order allocation device, characterized in that, The device includes: The acquisition module is used to acquire the order information of the consultation orders to be assigned, wherein the order information includes at least one of symptom information and resource information; The determination module is used to determine the target department corresponding to the consultation order based on the order information of the consultation order. The target department includes at least one candidate service object, which is an object that is currently online and can provide services that match the order information. The determining module is further configured to determine a target service object among the at least one candidate service object, wherein the target service object is a service object that can process the consultation order within a target duration; The allocation module is used to allocate the consultation order to the target service object; The apparatus further includes: determining the target service object among the at least one candidate service object, including: Get the number of parallel processing orders corresponding to each candidate service object and the number of currently processing orders corresponding to each candidate service object; The total number of orders that the target department can serve is determined based on the number of parallel processing orders corresponding to each candidate service object. The total number of orders currently being processed for the target department is determined based on the number of orders currently being processed for each of the candidate service recipients. Based on the total number of serviceable orders and the total number of currently processed orders, a target service object is determined from the at least one candidate service object; The step of obtaining the number of parallel processing orders corresponding to each candidate service object includes: For any one of the candidate service objects, obtain the initial number of parallel processing orders corresponding to the candidate service object and the order service information of the candidate service object in the target time period; Based on the order service information of any candidate service object within the target time period, determine the order service quality of any candidate service object; Based on the order service quality of any candidate service object, the initial number of parallel processing orders corresponding to any candidate service object is adjusted to obtain the number of parallel processing orders corresponding to any candidate service object. The step of adjusting the initial number of parallel processing orders corresponding to any candidate service object based on the order service quality of any candidate service object to obtain the number of parallel processing orders corresponding to any candidate service object includes: Determine the difference between the order service quality and the quality threshold for any of the candidate service objects; Determine the target quantity corresponding to the difference; The target number is added to the initial number of parallel processing orders corresponding to any candidate service object to obtain the number of parallel processing orders corresponding to any candidate service object. The step of determining the target service object from the at least one candidate service object based on the total number of serviceable orders and the total number of currently processed orders includes: In response to the current total number of orders being processed being equal to the total number of orders available for service, the order type of the consultation order is determined; Add the consultation order to the target queue corresponding to the order type of the consultation order; Based on the target position of the consultation order in the target queue, a target service object is determined from the at least one candidate service object; The order types include a first order type and a second order type, wherein the timeliness requirement corresponding to the first order type is higher than that corresponding to the second order type; The step of determining the order type of the consultation order in response to the current total number of processed orders equaling the total number of serviceable orders includes: In response to the current total number of processed orders being equal to the total number of serviceable orders, the provider corresponding to the target resource for the consultation order is determined. Determine the delivery method corresponding to the provided object; Based on the fact that the delivery method corresponding to the provided object is the first delivery method, the order type corresponding to the consultation order is determined to be the first order type; Based on the fact that the delivery method corresponding to the provided object is the second delivery method, the order type corresponding to the consultation order is determined to be the second order type, and the delivery time corresponding to the first delivery method is less than the delivery time corresponding to the second delivery method.
8. An electronic device, characterized in that, The electronic device includes a processor and a memory, the memory storing at least one piece of program code, which is loaded and executed by the processor to enable the electronic device to implement the order allocation method as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one piece of program code, which is loaded and executed by a processor to enable the computer to implement the order allocation method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Online inquiry order sending method, device and system
CN113077913A