The present disclosure relates generally to a computer-implemented method, a computing device and an apparatus for processing orders, more particularly, to a computer-implemented method, a computing device and an apparatus for automatically executing an order-processing workflow.
In contrast to traditional commerce, electronic commerce (E-commerce) includes activities of buying and selling of products over the Internet.
Sellers may receive orders placed from anywhere in the world. Due to the variety of the orders from such diversity of locations, a proper system is needed for the seller to manage the orders.
However, existing order-management systems are inflexible and mainly designed for enterprise-scale use, and as a result, these systems are not suitable for retailers.
Further, as for the existing order-management systems, some technical problems have not been solved yet. For example, the existing order-management systems do not have enough automaticity for processing orders because the information of the orders are not properly parsed and processed. Moreover, the existing order-management systems are not designed for cooperating with other physical devices. In addition, the existing order-management system cannot process the orders from a different order-management system.
Some embodiments of the present disclosure provide a computer-implemented method for automatically executing a workflow of processing a plurality of orders. The computer-implemented method includes: retrieving, by a processor, information of a first order of the plurality of orders, wherein the information of the first order is stored in a storage device; inputting, by the processor, the information of the first order into a first node, wherein a condition of the first node is associated with an operation; determining, by the processor, whether the information of the first order meets a criterion of the condition; and automatically executing, by the processor, the operation when the information of the first order meets the criterion of the condition.
Some embodiments of the present disclosure provide a computing device. The computing device includes a processor and a memory. The memory stores a program that, when executed, causes the processor to: retrieve information of a first order of the plurality of orders, wherein the information of the first order is stored in a storage device; input the information of the first order into a first node, wherein a condition of the first node is associated with an operation; determine whether the information of the first order meets a criterion of the condition; and automatically execute the operation when the information of the first order meets the criterion of the condition.
Some embodiments of the present disclosure provide an apparatus. The apparatus includes a processor, an I/O assembly, a switch and a memory. The memory stores a program that, when executed, causes the processor to: receive a control signal from a computing device via the I/O assembly through network; and activate the switch according to the control signal.
Some embodiments of the present disclosure provide a method for automatically executing a workflow across a plurality of nodes. The method includes: establishing, by a program, a plurality of nodes for processing a plurality of orders, one or more of the plurality of nodes assigned to process orders; receiving, by a first node of the plurality of nodes, information of an order, the first node configured to move orders to other nodes based on the information meeting a condition that identifies a certain status associated with the other nodes and the order; determining, by the first node, to move the order to a second node of the plurality of nodes based on the information of the order matching a criterion of the condition that identifies the certain status associated with the second node and the order; and moving, by the first node responsive to the determination, the order to the second node.
Some embodiments of the present disclosure provide a method for automatically executing a workflow across a plurality of nodes. The method includes: establishing, by a program, a plurality of nodes for processing a plurality of orders, one or more of the plurality of nodes assigned to process orders; receiving, by a first node of the plurality of nodes, information of an order, the first node configured to transmit a control signal to an apparatus based on the information meeting a condition that identifies a certain status associated with the apparatus and the order; determining, by the first node, to transmit the control signal to the apparatus based on the information of the order matching a criterion of the condition that identifies the certain status associated with the apparatus and the order; transmitting, by the program responsive to the determination, the control signal to the apparatus.
The foregoing has outlined rather broadly the features and technical advantages of the present disclosure in order that the detailed description of the disclosure that follows may be better understood. Additional features and advantages of the disclosure will be described hereinafter, and form the subject of the claims of the disclosure. It should be appreciated by those skilled in the art that the conception and specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures or processes for carrying out the same purposes of the present disclosure. It should also be realized by those skilled in the art that such equivalent constructions do not depart from the spirit and scope of the disclosure as set forth in the appended claims.
Aspects of the present disclosure are best understood from the following detailed description when read with the accompanying figures. It is noted that, in accordance with the standard practice in the industry, various features are not drawn to scale. In fact, the dimensions of the various features may be arbitrarily increased or reduced for clarity of discussion.
A more complete understanding of the present disclosure may be derived by referring to the detailed description and claims when considered in connection with the Figures, where like reference numbers refer to similar elements throughout the Figures.
Embodiments, or examples, of the disclosure illustrated in the drawings are now described using specific language. It shall be understood that no limitation of the scope of the disclosure is hereby intended. Any alteration or modification of the described embodiments, and any further applications of principles described in this document, are to be considered as normally occurring to one of ordinary skill in the art to which the disclosure relates. Reference numerals may be repeated throughout the embodiments, but this does not necessarily mean that feature(s) of one embodiment apply to another embodiment, even if they share the same reference numeral.
It shall be understood that, although the terms first, second, third, etc. may be used herein to describe various elements, components, regions, layers or sections, these elements, components, regions, layers or sections are not limited by these terms. Rather, these terms are merely used to distinguish one element, component, region, layer or section from another element, component, region, layer or section. Thus, a first element, component, region, layer or section discussed below could be termed a second element, component, region, layer or section without departing from the teachings of the present inventive concept.
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limited to the present inventive concept. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It shall be further understood that the terms “comprises” and “comprising,” when used in this specification, point out the presence of stated features, integers, steps, operations, elements, or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or groups thereof.
The communication bus 17 may allow the processor 11 to execute a program PG1 stored in the memory 13. When executed, the program PG1 may generate one or more interrupts (e.g., software-interrupt) to cause the processor 11 to perform functions of the program PG1 for processing orders. The functions of the program PG1 will be further described hereinafter.
Please refer to
In some embodiments, the node N-A may be configured to trigger an operation when the information INFO of the orders OD meets a condition. In detail, the node N-A may be configured with a condition C-X. The condition C-X may be associated with an operation. When information INFO of the order OD meets the condition C-X, the operation may be triggered. More specifically, the condition C-X may be set with a criterion C1. The criterion C1 may be set to trigger the operation when the information INFO of the order OD matches the criterion C1.
Please refer to
In particular, as shown in
Accordingly, after inputting information INFO-1 of an order OD-1 into the node N-A, the program PG1 may cause the processor 11 to determine whether the information INFO-1 of the order OD-1 matches the criterion C1 of the condition C-X. When the information INFO-1 of the order OD-1 matches the criterion C1 of the condition C-X, the program PG1 may cause the processor 11 to move the order OD-1 from the node N-A to the node N-B in response to the determination.
For example, as shown in
For instance, after inputting the information INFO-1 of the order OD-1 into the node N-A, the program PG1 may cause the processor 11 to determine whether a field of the information INFO-1 contains “Keyword”. When the field of the information INFO-1 contains “Keyword”, the program PG1 may cause the processor 11 to move the order OD-1 from the node N-A to the node N-B in response to the determination.
In some embodiments, the nodes N-A and N-B for processing orders may be established, arranged and configured before the order processing. In particular, when the program PG1 is running, the program PG1 may receive one or more node establishment instructions from a user. The program PG1 may cause the processor 11 to establish the nodes N-A and N-B in the program PG1 according to the node establishment instructions.
Next, the program PG1 may receive one or more node arrangement instructions from the user. The program PG1 may cause the processor 11 to arrange the nodes N-A and N-B in order in the program PG1 according to the node arrangement instructions.
Further, the program PG1 may receive one or more node configuration instructions from the user. The program PG1 may cause the processor 11 to configure the nodes N-A and N-B in the program PG1 according to the node configuration instructions.
Please refer to
More specifically, as shown in
Please refer to
Further, the GUI G2 shown in
In some embodiments, each condition may have a switch SI for enabling the condition (e.g., by turning ON the switch) or disabling the condition (e.g., by turning OFF the switch). After establishing the condition C-X, the user may click an inverted triangle button TB of the condition C-X for expanding a GUI G3 as shown in
More specifically, the GUI G3 shown in
More specifically, when the user clicks a symbol “+” of the timing button “WHEN”, different timings (e.g., timing of information entering node, timing of information leaving node or timing of information being updated in node) may be provided for the user to set the criterion C1. In this example, the user sets a timing of information entering node for the timing button.
Next, when the user clicks a symbol “+” of the event button “THEN”, sub-parameters may be provided for the user to set the operation. In this example, the user sets “if” as operator parameter, “Pay Status” as field under-checked parameter, “Contains” as decision parameter, and “Paid” as requirement parameter. Further, the user sets “then” as operator parameter and “Move to N-B” as action parameter. The configuration of the criterion C1 is completed after the parameters are set.
Based on the criterion C1 of the condition C-X of the node N-A in the example, when the information of the orders is inputted into the node N-A (i.e., when the information of the orders is entered into the node N-A), the program PG1 may cause the processor 11 to determine whether the information of each order matches the criterion C1.
In other words, the program PG1 may cause the processor 11 to determine whether the field “Pay Status” of the information of each order contains the word “Paid”. If the field “Pay Status” of the information of the order contains “Paid”, the order is moved to the node N-B.
In some embodiments, action parameters for the user to set the criterion may be pre-configured. Please refer to
As shown in
After creating the action parameter “Move to N-B”, the user may click an inverted triangle button TB of the action parameter “Move to N-B” for expanding a GUI G5 as shown in
More specifically, when the user clicks an action button AB provided in the GUI G5, different actions (e.g., move to a specific node, add attribute, export node data, etc.) may be provided for the user to set the action parameter “Move to N-B”. In this example, the user sets an action of moving to a specific node and sets the node N-B as the specific node.
Please refer to
In some embodiments, as shown in
As shown in
Accordingly, in some embodiments, after inputting information INFO-2 of order OD-2 into the node N-C, the program PG1 may cause the processor 11 to determine whether the information INFO-2 of the order OD-2 matches the criterion C2 of the condition C-W. When the information INFO-2 of the order OD-2 matches the criterion C2 of the condition C-W, the node N-C of the program PG1 may cause the processor 11 to transmit the control signal 10 to the apparatus 4 by the I/O assembly 15 in response to the determination.
Please refer to
The communication bus 47 may allow the processor 41 to execute a program PG2 stored in the memory 43. When executed, the program PG2 may cause the processor 41 to control the apparatus 4.
In some embodiments, as shown in
For example, the apparatus 4 may be a money gun as shown in
In another example, the apparatus 4 may be a disco ball as shown in
In some embodiments, the processor 41, the memory 43 and the I/O assembly 45 of the apparatus 4 may be cooperatively functioned as a Programmable Logic Controller (PLC). The program PG2 stored in the memory 43 may be re-programmed by the user. Accordingly, the apparatus 4 may perform more complicated operations.
For example, the apparatus 4 may be a goods counting machine as shown in
In another example, the apparatus 4 may be a conveyer as shown in
In some embodiments, the I/O assembly 15 of the computing device 1 and the I/O assembly 45 of the apparatus 4 may include wireless communication modules. The I/O assembly 15 of the computing device 1 and the I/O assembly 45 of the apparatus 4 may communicate with each other wirelessly according to a wireless network protocol such as Message Queuing Telemetry Transport (mqtt).
In some embodiments, the information of the order may include several fields. For instance, the information may include: “Order Number” field, “Name” field, “Address” field, “Cellphone Number” field, “Email” field, “Pay Status” field, “Pay Method” field, etc.
Please refer to
In some embodiments, when the program PG1 causes the processor 11 to retrieve information INFO-3, INFO-4, INFO-5 of orders OD-3, OD-4, OD-5 from the storage device 2, the program PG1 may then cause the processor 11 to input the information INFO-3, INFO-4, INFO-5 of orders OD-3, OD-4, OD-5 into the node N-D of the program PG1.
After inputting the information INFO-3, INFO-4, INFO-5 of orders OD-3, OD-4, OD-5 into the node N-D, the program PG1 may cause the processor 11 to determine whether the information INFO-3, INFO-4, INFO-5 of orders OD-3, OD-4, OD-5 matches the criterion C3 of the condition C-Y.
In some embodiments, the “Address” fields of the information INFO-3 and INFO-5 contain “US”. Therefore, the processor 11 may determine that the information INFO-3 and INFO-5 of the orders OD-3 and OD-5 matches the criterion C3 of the condition C-Y. Next, the program PG1 may cause the processor 11 to move the orders OD-3 and OD-5 from the node N-D to the node N-E in response to the determination.
In some embodiments, since the “Address” field of the information INFO-4 of the order OD-3 does not contain “US”, the program PG1 may cause the processor 11 to determine whether the information INFO-4 of the order OD-4 matches a next criterion of a next condition, which is the criterion C4 of the condition C-Z.
In some embodiments, the “Address” field of the information INFO-4 contains “GB”. Therefore, the processor 11 may determine that the information INFO-4 of the order OD-4 matches the criterion C4 of the condition C-Z. Next, the program PG1 may cause the processor 11 to move the order OD-4 from the node N-D to the node N-F in response to the determination.
As shown in
In some embodiments, after inputting the information INFO-3 and INFO-5 of the orders OD-3 and OD-5 into the node N-E, the program PG1 may cause the processor 11 to determine whether the information INFO-3 and INFO-5 of the orders OD-3 and OD-5 matches the criterion C5 of the condition C-P.
In some embodiments, the “Pay Status” field of the information INFO-3 contains “Paid”. Therefore, the processor 11 may determine that the information INFO-3 of the order OD-3 matches the criterion C5 of the condition C-P. Next, the program PG1 may cause the processor 11 to move the order OD-3 from the node N-E to the node N-G in response to the determination.
In some embodiments, since the “Pay Status” field of the information INFO-5 of the order OD-5 does not contain “Paid”, the program PG1 may cause the processor 11 to determine whether the information INFO-5 of the order OD-5 matches a next criterion of a next condition, which is the criterion C6 of the condition C-P.
In some embodiments, the “Pay Status” field of the information INFO-5 contains “Pending”. Therefore, the processor 11 may determine that the information INFO-5 of the order OD-5 matches the criterion C6 of the condition C-Q. Next, the program PG1 may cause the processor 11 to move the order OD-5 from the node N-E to the node N-H in response to the determination.
In some embodiments, orders in the node N-G may be ready for shipment. When the program PG1 is running, the program PG1 may cause the processor 11 to display the orders in the node N-G on the display 9. For example, the program PG1 may cause the processor 11 to display the information INFO-3 of the order OD-3 on the display 9.
Further, the information INFO-3 of the order OD-3 may include an item data of an item. The display 9 may show the item data of the item of the information INFO-3. Accordingly, an operator may pick the item indicated by the information INFO-3 of the order OD-3 in a storehouse based on the item data shown on the display 9.
Next, the operator may use the scanner 8 (e.g., barcode scanner) to scan an item code (e.g., barcode) on the item. After scanning the item code, the scanner 8 may transmit a scan signal 80 to the computing device 1. Subsequently, the computing device 1 may receive the scan signal 80 from the scanner 8 via the I/O assembly 15.
After receiving the scan signal 80, the program PG1 may cause the processor 11 to update the item data for indicating that the corresponding item is picked. When all items of the order OD-3 are picked and packed in a package, the operator may manipulate the program PG1 to cause the processor 11 to transmit part of the information INFO-3 (e.g., address, name and cellphone number) of the order OD-3 to the printer 7 via the I/O assembly 15. The printer 7 may print part of the information INFO-3 on a shipping label for the operator to apply to the package.
In some embodiments, the computing device 1 may search for information of an order for a specific item which is included in an order. In particular, a specific item code may be generated for a specific item (e.g., a customized item). The specific item code may be associated with information of an order which includes the specific item.
Accordingly, when the operator uses the scanner 8 to scan the specific item code on the specific item, the scanner 8 may transmit a scan signal 82 to the computing device 1. Subsequently, after receiving the scan signal 82 from the scanner 8 via the I/O assembly 15, the program PG1 may cause the processor 11 to search for information of an order associated with the specific item. When the information of the order that includes the specific item is found, the program PG1 may cause the processor 11 to display the information of the order on the display 9 via the I/O assembly 15.
In some embodiments, the storage device 2 may be included in the computing device 1. In some embodiments, as shown in
In some embodiments, a format of information of an order retrieved from the network database may be different from a format of information of an order used in the program PG1. Therefore, information of the order retrieved from the network database may be mapped to information of the order used in the program PG1.
Please refer to
More specifically, when the information of the order is retrieved from the network database, the program PG1 may cause the computing device 1 to parse the information into Format 1 which includes number, user_name, address, cell_number, email_add, pay and pay_method.
Next, the program PG1 may provide a GUI G6 for mapping Format 1 to Format 2. In detail, in GUI G6, each column of Format 2 may be set as one of the fields, which include “Order Name”, “Name”, “Address”, “Cellphone Number”, “Email”, “Pay Status” and “Pay Method”, of the information of the order used in the program PG1.
For example, for the first column of Format 2, the user may click an inverted triangle button TB to select a field from “Order Name”, “Name”, “Address”, “Cellphone Number”, “Email”, “Pay Status” and “Pay Method” for mapping the first column “number” of Format 1. In this example, the user may set this column as field “Order Number” for mapping the first column “number” of Format 1.
Similarly, for the second column of Format 2, the user may click an inverted triangle button TB to select a field from “Order Name”, “Name”, “Address”, “Cellphone Number”, “Email”, “Pay Status” and “Pay Method” for mapping the second column “user_name” of Format 1. In this example, the user may set this column as field “Name” for mapping the second column “user_name” of Format 1. After setting all the columns of Format 2 to map the columns of Format 1, the subsequent retrieved information with Format 1 may be mapped to the information with Format 2 accordingly.
Some embodiments of the present disclosure include a computer-implemented method, and flowchart diagrams thereof are shown in
Step S1301 is executed, by a processor of the computing device, to retrieve information of a plurality of orders. The information of the orders may be stored in a storage device. Step S1302 is executed, by the processor, to input the information of the orders into a first node. A condition of the first node may be associated with an operation.
Step S1303 is executed, by the processor, to determine whether information of an order meets a criterion of the condition. When the information of the order meets the criterion of the condition, step S1304 is executed, by the processor, to automatically perform the operation associated with the condition of the first node. When the information of the order does not meet the criterion of the condition, step S1303 is executed, by the processor, to determine whether information of a next order meets the criterion of the condition.
In some embodiments, as shown in
In some embodiments, as shown in
In some embodiments, as shown in
In some embodiments, as shown in
In some embodiments, the condition of the first node may be pre-configured to be associated with at least one of the above operations. More specifically, the condition of the first node may be pre-configured to trigger at least one of the above operations when the information of the order inputted in the first node meets the criterion of the condition. In some embodiments, the first node and the second node may be established and arranged in order before being utilized.
In some embodiments, the computer-implemented method may further include steps for achieving different functions. In particular, some functions for facilitating the procedure of shipping may be implemented.
As shown in
Next, the operator may use a scanner to scan an item code on the item. The I/O assembly of the computing device may connect to the scanner. After scanning the item code, the scanner may transmit a scan signal to the computing device via the I/O assembly. Subsequently, step S1306 is executed, by the processor, to receive the scan signal from the scanner via the I/O assembly after an item code on the item is scanned by the scanner.
Step S1307 is executed to update, by the processor, the item data of the information of the order according to the scan signal. When all items of the order are picked and packed in a package, the operator may direct the computing device to print a shipping label.
Step S1308 is executed, by the processor, to transmit part of the information of the order to a printer via the I/O assembly, connected to the printer, for printing the information after the item data is updated. The printer may print part of the information on a shipping label.
In some embodiments, the computer-implemented method may further include steps for achieving different functions. In particular, some functions of searching for information of an order for a specific item may be implemented.
In detail, a specific item code of the specific item may be associated with the corresponding information of the order. When the operator uses the scanner to scan the specific item code on the specific item, the scanner may transmit a scan signal to the computing device.
As shown in
Some embodiments of the present disclosure include a method, and a flowchart diagram thereof is shown in
Step S1401 is executed, by a program stored in a memory of the computing device, to establish a plurality of nodes for processing a plurality of orders. One or more of the plurality of nodes may be assigned to process orders. Step S1402 is executed, by a first node of the plurality of nodes, to receive information of an order. The first node may be configured to move orders to other nodes based on whether the information meets a condition that identifies a certain status associated with the other nodes and the order.
Step S1403 is executed, by the first node, to determine whether to move the order to a second node of the plurality of nodes based on whether the information of the order matches a criterion of the condition that identifies the certain status associated with the second node and the order.
When the information of the order matches the criterion of the condition that identifies the certain status associated with the second node and the order, step S1404 is executed, by the first node responsive to the determination, to move the order to the second node.
When the information of the order does not match the criterion of the condition that identifies the certain status associated with the second node and the order, step S1402 is executed, by the first node, to receive information of a next order.
Some embodiments of the present disclosure include a method, and flowchart diagram thereof is shown in
Step S1501 is executed, by a program stored in a memory of the computing device, to establish a plurality of nodes for processing a plurality of orders. One or more of the plurality of nodes may be assigned to process orders. Step S1502 is executed, by a first node of the plurality of nodes, to receive information of an order. The first node may be configured to transmit a control signal to an apparatus based on whether the information meets a condition that identifies a certain status associated with the apparatus and the order.
Step S1503 is executed, by the first node, to determine whether to transmit the control signal to the apparatus based on whether the information of the order matches a criterion of the condition that identifies the certain status associated with the apparatus and the order.
When the information of the order matches the criterion of the condition that identifies the certain status associated with the apparatus and the order, step S1504 is executed, by the program responsive to the determination, to transmit the control signal to the apparatus.
When the information of the order does not match the criterion of the condition that identifies the certain status associated with the apparatus and the order, step S1503 is executed, by the first node, to receive information of a next order.
It shall be particularly appreciated that the processors mentioned in the above embodiments may be a central processing unit (CPU), other hardware circuit elements capable of executing relevant instructions, or combination of computing circuits that are well-known by those skilled in the art based on the above disclosures.
Moreover, the I/O assembly mentioned in the above embodiments may include an I/O port for connecting to the display, an I/O port for connecting the scanner and an I/O port for connecting to the printer. Further, the I/O assembly may include a network interface for connecting to the display, the scanner, the printer and the apparatus. The network interface may be a combination of a network data transmitter and a network data receiver. The memories mentioned in the above embodiments may be memories, such as ROM, RAM, etc., or storing unit, such as flash memory, HDD, SSD, etc., for storing data.
Further, the communication buses mentioned in the above embodiments may include a communication interface for transferring data between the elements, such as the processor, the memory, the I/O assembly, the network interface and the switch, and may include electrical bus interface, optical bus interface or even wireless bus interface. However, such description is not intended to limit the hardware implementation embodiments of the present disclosure.
Although the present disclosure and its advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the disclosure as defined by the appended claims. For example, many of the processes discussed above can be implemented in different methodologies and replaced by other processes, or a combination thereof.
Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, composition of matter, means, methods and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure of the present disclosure, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed, that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized according to the present disclosure. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.
This application claims priority of U.S. provisional application Ser. No. 62/786,035 filed on Dec. 28, 2018, the entire disclosure of which is incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62786035 | Dec 2018 | US |