Workflow Deployment Method, Device, Computer System, and Readable Storage Medium

The vertical projection scheme in work flow deployment simplifies complex diagrams by using encoded characters for task node audits, reducing maintenance and deployment risks.

CN113762702BActive Publication Date: 2025-07-15BEIJING WODONG TIANJUN INFORMATION TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110421348.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-04-19
Publication Date
2025-07-15
Estimated Expiration
2041-04-19

AI Technical Summary

Technical Problem

The existing workflow engine framework deployed has complex structure and high maintenance difficulty. Too many gateway nodes lead to complex flow charts, affecting the difficulty of modification and test regression, and isolating online data sources difficult.

Method used

The vertical projection scheme is designed using custom encoding methods, and the audit method of task nodes is determined through characters in the process variables, the flowchart structure is simplified, and real-time deployment and heterogeneous data storage are combined with mapping tables to reduce maintenance difficulty and risks.

Benefits of technology

It simplifies the complexity and maintenance difficulty of the flow chart, reduces the risks of process operation and maintenance, and realizes the flexibility of real-time deployment of the flow chart and data storage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113762702B_ABST
    Figure CN113762702B_ABST
Patent Text Reader

Abstract

The present disclosure provides a workflow deployment method, a workflow deployment device, a computer system, a computer-readable storage medium, and a computer program product. Among them, the workflow deployment method includes: obtaining a target task node in a target workflow, where the target workflow includes multiple task nodes; obtaining process variables preset for the target workflow in a target business system, where the process variables are encoded strings, and the encoding length of the strings is equal to the number of multiple task nodes, and each character in the process variables corresponds to each task node in the multiple task nodes one by one; determining a target character corresponding to the target task node from the process variables; and using the target character to determine an auditing method for the target task node, so as to implement the deployment of the target workflow, where the auditing method includes machine automatic auditing or manual auditing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technologies, and more particularly, to a workflow deployment method, a workflow deployment device, a computer system, a computer-readable storage medium, and a computer program product. Background Art

[0002] A workflow is an abstraction, generalization, and description of a work process and the business rules between its operation steps. Workflow modeling means representing the logic and rules of how the work in a work process is organized before and after in a computer with an appropriate model and performing calculations on it.

[0003] With the development of computer technologies, more and more business processes are deployed through modeling, and are presented and put into use in the form of a flowchart obtained by final deployment. The modeling process inevitably needs to be implemented in combination with a modeling tool (such as a workflow engine framework, etc.).

[0004] In the process of implementing the concept of the present disclosure, the inventors found that there are at least the following problems in the related technologies. The flowchart structure of the workflow deployed based on the existing workflow engine framework is complex and difficult to maintain. Summary of the Invention

[0005] In view of this, the present disclosure provides a workflow deployment method, a workflow deployment device, a computer system, a computer-readable storage medium, and a computer program product.

[0006] One aspect of the present disclosure provides a workflow deployment method, including: obtaining a target task node in a target workflow, where the target workflow includes a plurality of task nodes; obtaining process variables preset for the target workflow in a target business system, where the process variables are encoded strings, the encoding length of the strings is equal to the number of the plurality of task nodes, and each character in the process variables corresponds to each task node in the plurality of task nodes one by one; determining a target character corresponding to the target task node from the process variables; and determining an approval method for the target task node by using the target character, so as to implement the deployment of the target workflow, where the approval method includes machine automatic approval or manual approval.

[0007] According to an embodiment of the present disclosure, each of the task nodes is configured with a listening function. The method for determining the review method of the target task node by using the target character includes: listening to the target character by using the listening function; when the target character is a first preset character, determining that the first target task node corresponding to the target character is automatically reviewed by a machine and flowing to the second target task node corresponding to the second target character when the next target character is reached; and when the target character is the second target character, visually displaying the task corresponding to the second target task node for manual review.

[0008] According to an embodiment of the present disclosure, before obtaining the target task node in the target workflow, it further includes: obtaining key values of different types for characterizing the workflow and identification values for characterizing different versions of the same type of workflow; obtaining a target key value and a target identification value for characterizing the workflow corresponding to the target business system; and determining the target workflow according to the target key value or the target identification value.

[0009] According to an embodiment of the present disclosure, the key values of different types for characterizing the workflow and the identification values for characterizing different versions of the same type of workflow are stored in a mapping table. Determining the target workflow according to the target key value or the target identification value includes: determining the operating environment of the workflow corresponding to the target business system; when the operating environment is a pre-release environment, determining the target workflow according to the target key value; when the operating environment is an online environment or a test environment, determining whether there is a corresponding target identification value for the target key value in the mapping table; when there is a corresponding target identification value for the target key value in the mapping table, determining the target workflow according to the target identification value; and when there is no corresponding target identification value for the target key value in the mapping table, determining the target workflow according to the target version of the target key value.

[0010] According to an embodiment of the present disclosure, the above workflow deployment method further includes: determining a target database for storing data corresponding to the first task node that needs to be manually reviewed; obtaining historical data corresponding to the second task node that needs to be automatically reviewed; and heterogeneously storing the historical data in another database different from the target database.

[0011] Another aspect of the present disclosure provides a workflow deployment device, including: a first acquisition module configured to acquire a plurality of task nodes related to a target workflow; a second acquisition module configured to acquire process variables preset for the target workflow in a target business system, where the process variables are encoded strings, and the encoding length of the strings is equal to the number of the plurality of task nodes, and each character in the process variables corresponds to each task node in the plurality of task nodes one by one; a first determination module configured to determine a target character corresponding to the target task node from the process variables; and a second determination module configured to determine the review method for each of the task nodes by using the characters of the process variables, so as to implement the deployment of the target workflow, where the review method includes machine automatic review or manual review.

[0012] According to an embodiment of the present disclosure, each of the task nodes is configured with a listening function, and the second determination module includes: a listening unit configured to listen for the target character by using the listening function; a first review unit configured to, when the target character is a first preset character, determine that the first target task node corresponding to the target character is for machine automatic review and transfer to the second target task node corresponding to the second target character when the next target character is reached; and a second review unit configured to, when the target character is the second target character, visually display the task corresponding to the second target task node for manual review.

[0013] Another aspect of the present disclosure provides a computer system, including: one or more processors; a memory configured to store one or more programs, where when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the workflow deployment method as described above.

[0014] Another aspect of the present disclosure provides a computer-readable storage medium, on which computer-executable instructions are stored, and the instructions are used to implement the workflow deployment method as described above when executed.

[0015] Another aspect of the present disclosure provides a computer program product, where the computer program product includes computer-executable instructions, and the instructions are used to implement the workflow deployment method as described above when executed.

[0016] According to an embodiment of the present disclosure, by adopting the steps of obtaining a target task node in a target workflow, where the target workflow includes multiple task nodes; obtaining process variables preset for the target workflow in a target business system, where the process variables are encoded strings, and the encoding length of the strings is equal to the number of multiple task nodes, and each character in the process variables corresponds to each task node in the multiple task nodes one by one; determining a target character corresponding to the target task node from the process variables; and using the target character to determine an approval method for the target task node so as to implement the deployment of the target workflow, where the approval method includes technical means of machine automatic approval or manual approval. Since the approval method of the task node can be determined by using the characters of the process variables without the need for the deployment of complicated gateway nodes, at least partially overcoming the technical problems of complex flowchart structure and high maintenance difficulty obtained when using gateway nodes for workflow deployment, and thus achieving the technical effect of realizing a workflow deployment method for simplifying the flowchart. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Through the following description of the embodiments of the present disclosure with reference to the drawings, the above and other objects, features and advantages of the present disclosure will become clearer. In the drawings:

[0018] Figure 1 Schematically shows an exemplary system architecture to which the workflow deployment method according to an embodiment of the present disclosure can be applied;

[0019] Figure 2 Schematically shows a flowchart of the workflow deployment method according to an embodiment of the present disclosure;

[0020] Figure 3 Schematically shows the deployment result of a workflow in the form of a flowchart obtained by modeling an actual business process using a traditional workflow engine framework;

[0021] Figure 4 Schematically shows the implementation principle diagram of the vertical projection scheme according to an embodiment of the present disclosure;

[0022] Figure 5 Schematically shows the deployment result for the target workflow according to an embodiment of the present disclosure;

[0023] Figure 6 Schematically shows the mapping table structure for maintaining the process deployment id according to an embodiment of the present disclosure;

[0024] Figure 7 Schematically shows a schematic diagram of the full process of real-time workflow deployment according to an embodiment of the present disclosure;

[0025] Figure 8 Schematically shows an example diagram of a heterogeneous data copy of a relational database according to an embodiment of the present disclosure;

[0026] Figure 9 A schematic diagram showing a solution for storing heterogeneous data copies of partial historical data according to an embodiment of the present disclosure;

[0027] Figure 10 A block diagram schematically showing a workflow deployment device according to an embodiment of the present disclosure; and

[0028] Figure 11 A block diagram schematically showing a computer system suitable for implementing a workflow deployment method according to an embodiment of the present disclosure. Detailed implementation manners

[0029] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present disclosure. In the following detailed description, for the sake of explanation, numerous specific details are set forth in order to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is obvious that one or more embodiments can be implemented without these specific details. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessarily obscuring the concepts of the present disclosure.

[0030] The terms used herein are merely for describing specific embodiments and are not intended to limit the present disclosure. The terms "including", "comprising", etc. used herein indicate the presence of the described features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0031] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0032] In cases where expressions such as "at least one of A, B, and C, etc." are used, generally, it should be interpreted according to the meaning commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include, but is not limited to, a system having only A, only B, only C, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.). In cases where expressions such as "at least one of A, B, or C, etc." are used, generally, it should be interpreted according to the meaning commonly understood by those skilled in the art (for example, "a system having at least one of A, B, or C" should include, but is not limited to, a system having only A, only B, only C, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.).

[0033] The most popular workflow engine framework at present is Activiti (a process engine based on the BPMN protocol), which is an open source BPM (Business Process Management) platform based on the Apache license. It is an open source, flexible, and easily extensible executable process language framework covering business process management, workflow, service collaboration and other fields.

[0034] Taking the Activiti workflow as an example, there may be complex processes in the deployed flowchart. Complex processes refer to processes running online with many conditional branches. The simplified solution for complex processes in the current existing flowchart deployment is mainly to draw gateway branch flows on the flowchart, that is, the aforementioned conditional branches are generated by the gateway (the gateway can consume or generate tokens. The types of gateways can include exclusive gateways, parallel gateways, inclusive gateways, event gateways, etc.), and the judgment conditions of the gateway are determined by the client. The conditional gateways are continuously accumulated with the iteration of requirements, so that different audit processes are carried out under different gateway conditions when the client calls. The current existing flowchart deployment solution is mainly manifested as non-real-time deployment, which is mainly deployed through processDefinitionKey (the identifier of the flowchart). The initiation of each process is determined by the latest version of processDefinitionKey.

[0035] In the process of implementing the concept of the present disclosure, the inventor found that although the complex process solution of adding gateways to the flowchart to accommodate branch processes with different conditions can solve complex processes, too many conditional gateways will lead to a complicated flowchart, increasing the difficulty of subsequent flowchart maintenance and modification. At the same time, the increase in gateway branches will lead to an increase in repeated branch flows, which will in turn lead to an exponential increase in the complexity of the flowchart's nodes, increase the complexity of the flowchart, make the flowchart appear too cumbersome, and affect the modification of subsequent flowcharts. In addition, it will increase the difficulty and workload of the test regression process.

[0036] In the process of realizing the concept of the present disclosure, the inventor also found that through processDefinitionKey deployment, the process is initiated through the processDefinitionKey identification, and the workflow deployment scheme of initiating the process is initiated by the latest version of the current identification by default each time. Although the replacement action of updating the flowchart can be realized, when the online data source is not isolated, it is necessary to isolate the data source or replace the processDefinitionKey as the verification key, otherwise the normal online traffic will go to the new process during the verification stage, which is risky. At the same time, the online process is cumbersome, and each modification of the flowchart will have an impact on the online, and the cooperation of the caller is required, which is not flexible enough.

[0037] Embodiments of the present disclosure provide a workflow deployment method, a workflow deployment device, a computer system, a computer-readable storage medium, and a computer program product. The method includes obtaining a target task node in a target workflow, where the target workflow includes a plurality of task nodes; obtaining a process variable preset for the target workflow in a target business system, where the process variable is an encoded string, the encoding length of the string is equal to the number of the plurality of task nodes, and each character in the process variable corresponds to each task node in the plurality of task nodes one by one; determining a target character corresponding to the target task node from the process variable; and determining an approval method for the target task node by using the target character, so as to implement the deployment of the target workflow, where the approval method includes machine automatic approval or manual approval.

[0038] Figure 1 Schematically shown is an exemplary system architecture 100 to which the workflow deployment method according to an embodiment of the present disclosure can be applied. It should be noted that Figure 1 The illustration is only an example of the system architecture to which the embodiments of the present disclosure can be applied, to help those skilled in the art understand the technical content of the present disclosure, but it does not mean that the embodiments of the present disclosure cannot be used in other devices, systems, environments or scenarios.

[0039] As Figure 1 shown, the system architecture 100 according to this embodiment may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for a communication link between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired and / or wireless communication links, and so on.

[0040] Users may use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications may be installed on the terminal devices 101, 102, 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, and so on.

[0041] The terminal devices 101, 102, 103 may be various electronic devices with a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, and desktop computers, and so on.

[0042] Server 105 can be a server that provides various services. For example, it can be a back-end management server that supports websites browsed by users using terminal devices 101, 102, and 103. The back-end management server can analyze and process data such as user requests received, and feedback the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.

[0043] It should be noted that the workflow deployment method provided by the embodiments of the present disclosure can generally be executed by server 105. Correspondingly, the workflow deployment device provided by the embodiments of the present disclosure can generally be set in server 105. The workflow deployment method provided by the embodiments of the present disclosure can also be executed by a server or a server cluster different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105. Correspondingly, the workflow deployment device provided by the embodiments of the present disclosure can also be set in a server or a server cluster different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105. Alternatively, the workflow deployment method provided by the embodiments of the present disclosure can also be executed by terminal devices 101, 102, or 103, or can also be executed by other terminal devices different from terminal devices 101, 102, or 103. Correspondingly, the workflow deployment device provided by the embodiments of the present disclosure can also be set in terminal devices 101, 102, or 103, or set in other terminal devices different from terminal devices 101, 102, or 103.

[0044] For example, the task nodes can originally be stored in any one of terminal devices 101, 102, or 103 (for example, terminal device 101, but not limited to this), or stored on an external storage device and can be imported into terminal device 101. Then, terminal device 101 can execute the workflow deployment method provided by the embodiments of the present disclosure locally, or send the task nodes to other terminal devices, servers, or server clusters, and the other terminal devices, servers, or server clusters that receive the task nodes execute the workflow deployment method provided by the embodiments of the present disclosure.

[0045] It should be understood that Figure 1 the numbers of terminal devices, networks, and servers in

[0046] Figure 2 are merely illustrative. According to the implementation requirements, there can be any number of terminal devices, networks, and servers.

[0047] As Figure 2 shown, the method includes operations S201 to S204.

[0048] In operation S201, obtain a target task node in a target workflow, where the target workflow includes a plurality of task nodes.

[0049] According to an embodiment of the present disclosure, the above-mentioned target workflow may be, for example, a workflow related to an actual business process or a workflow in the form of a flowchart obtained by modeling an actual business process using a traditional workflow engine framework. The above-mentioned target task node may be, for example, any one of the above-mentioned plurality of task nodes. Taking the audit process of commodity procurement as an example of the actual business process, the above-mentioned plurality of task nodes may include, for example, audit nodes composed of the audit processes of purchase and sales, purchase and sales manager, purchase and sales director, quality control manager, and quality control director. Taking the audit process of commodity commission as an example of the actual business process, the above-mentioned plurality of task nodes may include, for example, audit nodes composed of the audit processes of channel manager, channel director, etc.

[0050] Figure 3 Schematically shows the deployment result of a workflow in the form of a flowchart obtained by modeling an actual business process using a traditional workflow engine framework.

[0051] As Figure 3 shown, for example, it is an Activiti workflow obtained by modeling the above-mentioned schematic business process using the Activiti workflow engine framework. Among them, the nodes corresponding to the rounded rectangles (such as purchase and sales, purchase and sales manager, purchase and sales director, quality control manager (omnichannel), and quality control director (omnichannel), etc.) can represent the above-mentioned plurality of task nodes. The diamond-shaped graph with a small X-shaped icon inside can be used to represent the above-mentioned gateway to control the flow direction of the process, such as controlling the process to take the path that requires purchase and sales audit or the path that does not require purchase and sales audit.

[0052] According to an embodiment of the present disclosure, to reduce Figure 3 the complexity of the target workflow shown in the figure with a complex flowchart (including multiple repeated gateway nodes and branch flows) and facilitate subsequent maintenance of the flowchart, in this embodiment, for Figure 3 the gateway nodes and branch flows that cause the flowchart to be cumbersome and complex, a vertical projection scheme is designed and processed using a custom coding method, as Figure 4 shown.

[0053] Figure 4 Schematically shows the implementation principle diagram of the vertical projection scheme according to an embodiment of the present disclosure. The following further describes the vertical projection scheme shown in Figure 4 in combination with operations S202 to S204.

[0054] In operation S202, obtain the process variables preset for the target workflow in the target business system. The process variables are encoded strings, and the encoding length of the string is equal to the number of multiple task nodes. Each character in the process variable corresponds one-to-one with each task node among the multiple task nodes.

[0055] According to an embodiment of the present disclosure, the above-mentioned target business system is, for example, a related business operation or instruction that can trigger the above-mentioned target workflow, or the business party system corresponding to these operations and instructions. The above-mentioned process variable can be, for example, a variable passed in by the business party when triggering the process initiation corresponding to the above-mentioned target workflow, and this variable can be represented by autoAuditFlag, for example.

[0056] According to an embodiment of the present disclosure, referring to Figure 4 as shown, taking Figure 3 the complex flowchart within the rectangular box in as an example, each gateway node therein includes two output branches, for example. Then, each character in the above-mentioned string can be set to one of two preset characters (such as 0 and 1). If there are 5 audit nodes, for example, it can be determined that the encoding length of the above-mentioned string is 5. Thus, the value of the above-mentioned autoAuditFlag can be obtained as a string encoding of length 5 composed of 0 or 1, for example.

[0057] It should be noted that each character in the above-mentioned string is not limited to one of the two preset characters. For example, in the case where the above-mentioned gateway node includes three or more output branches, the characters in the above-mentioned string can be one of three or more preset characters, and each character can correspond to a different output branch.

[0058] In operation S203, determine the target character corresponding to the target task node from the process variable.

[0059] According to an embodiment of the present disclosure, for example, the multiple task nodes can be sorted first according to the start order of the multiple task nodes, then the sorting position of the target task node among the multiple task nodes can be obtained, and then the character at the corresponding position in autoAuditFlag can be obtained as the above-mentioned target character.

[0060] In operation S204, use the target character to determine the audit method of the target task node to implement the deployment of the target workflow, where the audit method includes machine automatic audit or manual audit.

[0061] According to an embodiment of the present disclosure, referring to Figure 4As shown, for example, the audit method of each audit node (i.e., automatic machine audit or manual audit) can be controlled by each character (0 or 1) in the string encoding. The processing method of the above automatic machine audit can correspond to, for example, Figure 3 the processing method corresponding to the output branch without an audit node after the gateway node in the complex flowchart in Figure 3 The processing method corresponding to the output branch with an audit node after the gateway node in the complex flowchart in. Based on the deployment of the above target workflow implemented by this operation, for example, it can be the deployment of the above workflow related to the actual business process in the form of a flowchart, or it can also be the redeployment of the workflow in the form of a flowchart obtained by modeling the actual business process using the traditional workflow engine framework.

[0062] Figure 5 Schematically shows the deployment result of the target workflow according to an embodiment of the present disclosure.

[0063] As Figure 5 shown, for example, it is the deployment result after redeploying the complex flowchart within the rectangular box in Figure 4 based on the vertical projection scheme of Figure 3 In this deployment result, the deployment of the gateway node is reduced, and whether each audit node is executed (i.e., determining whether to audit by automatic machine audit or manual audit) can be determined by the character corresponding to autoAuditFlag, simplifying the deployment structure of the flowchart and reducing the maintenance difficulty.

[0064] According to an embodiment of the present disclosure, for each task node described in the above operations S201 to S204, for example, a listening function can be configured. The above operation S204 can include, for example: using the listening function to listen to the above target character; when the target character is the first preset character, determining that the first target task node corresponding to the target character is an automatic machine audit and flowing to the second target task node corresponding to the next target character being the second target character; and when the target character is the second target character, visually displaying the task corresponding to the second target task node for manual audit.

[0065] According to an embodiment of the present disclosure, for each task node after the gateway node and the repeated branch flow are projected, an event listener taskListener (such as including a preset code execution logic) can be configured. The expression is ${taskSkipListener.skip(task.id, i)}, to implement the above monitoring function. Wherein, task.id represents the current task id (i.e., the unique identifier of the above task node), and i represents the configuration position of the node corresponding to the current task (i.e., the above task node) in the flowchart (such as the flowchart obtained after modeling the actual business process using the traditional workflow engine framework), for example, a certain task node is configured at the i-th position in a certain flowchart, and at the same time, it can correspond to the subscript of the autoAuditFlag value, which is used to determine the value of the character corresponding to the task node at a certain position (such as the i-th position) in the autoAuditFlag (the i-th position).

[0066] According to an embodiment of the present disclosure, as shown in Figure 4 For example, event listeners are configured for 5 audit nodes such as procurement and sales, procurement and sales manager, procurement and sales director, quality control manager (omnichannel), and quality control director (omnichannel). Assume that autoAuditFlag = 10110. Then, according to the preset code logic of the event listener, tasks generated by nodes with a corresponding bit of 0 (for example, it can correspond to the above first preset character) (for example, it can correspond to the above first target task node) will be automatically audited (for example, it can correspond to the above machine automatic audit) and completed, and will default to flow to the next node with a non-0 corresponding bit (for example, it can correspond to the above second preset character) (for example, it can correspond to the above second target task node) to generate tasks. In this embodiment, tasks generated by nodes with a non-0 corresponding bit can be visually displayed, and for example, manual audit operations can be performed on the visual display results. Based on this solution, for example, a simplified flowchart as shown in Figure 5 can be obtained.

[0067] Through the above embodiments of the present disclosure, combined with the event listening mechanism of the Activiti engine, a vertical projection method is adopted for the gateway node of the complex process, and a custom coding method is used to remove the drawing of repeated branch flows, obtaining a simplified workflow deployment method, which makes the complexity and maintenance difficulty of the flowchart decrease exponentially, and at the same time can reduce the risks during the process operation and maintenance.

[0068] According to an embodiment of the present disclosure, for a workflow platform built based on the Activiti workflow engine (such as the workflow in the form of a flowchart obtained by modeling the actual business process using the traditional workflow engine framework as described above), in view of the current situation where the process is initiated according to the current latest version number of the specified processDefinitionKey (i.e., the latest version of the flowchart), in order to achieve the replacement of the flowchart that is currently running online without affecting user usage, the present disclosure can, for example, provide a solution for real-time workflow deployment, including adding a process deployment id (processDefinitionId, the unique identifier of different version flowcharts) and its maintenance rules, and formulating a deployment solution for implementing the entire process of real-time workflow deployment based on the maintenance rules of the process deployment id.

[0069] Figure 6 Schematically shows a mapping table structure for maintaining a process deployment id according to an embodiment of the present disclosure.

[0070] According to an embodiment of the present disclosure, corresponding to the design solution of the above process deployment id, the above workflow deployment method may further include, for example: before the above operation S201, obtaining key values of different types for characterizing the workflow and identification values for characterizing different versions of the same type of workflow; obtaining a target key value and a target identification value for characterizing the workflow corresponding to the target business system; and determining the target workflow according to the target key value or the target identification value.

[0071] According to an embodiment of the present disclosure, the maintenance rules of the above process deployment id may include, for example: a. The online environment needs to maintain the mapping relationship between the specified processDefinitionKey (i.e., the key values of different types for characterizing the workflow as described above) and the currently running processDefinitionId (i.e., the identification values for characterizing different versions of the same type of workflow). The mapping table structure is as Figure 6 shown. The table name of the mapping table may be, for example, process_definition_key_id_relation. The fields of the mapping table may include fields such as definition_key and definition_id, indicating that the mapping table is used to maintain the correspondence between the workflow flowchart definition key (i.e., processDefinitionKey) and the flowchart definition id (i.e., processDefinitionId); b. When an updated flowchart (i.e., an updated process deployment id) goes online, the processDefinitionId needs to be replaced with the updated process deployment id to maintain the mapping relationship between the above processDefinitionKey and processDefinitionId in real time.

[0072] Figure 7 Schematically shows a schematic diagram of the full process of real-time deployment of a workflow according to an embodiment of the present disclosure.

[0073] According to an embodiment of the present disclosure, referring to Figure 6 and Figure 7 as shown, for example, a mapping table process_definition_key_id_relation as shown in Figure 6 can be maintained in the data storage layer, and the field value of definition_id in the mapping table can be updated in a timely manner based on the above-mentioned maintenance rules of the process deployment id, so that the currently runnable latest workflow version can be determined in real time according to the relationship between the flowchart definition key and the flowchart definition id saved in the mapping table. On this basis, the business system can trigger the latest version of the workflow in a timely manner for business processing.

[0074] Through the above embodiments of the present disclosure, by designing that one processDefinitionKey can correspond to multiple versions of the process (i.e., processDefinitionId), and by replacing the process deployment id to maintain the mapping relationship between processDefinitionKey and the updated processDefinitionId in real time, the purpose of not affecting user use when replacing the flowchart running online can be achieved.

[0075] According to an embodiment of the present disclosure, corresponding to the above-mentioned maintenance rules based on the process deployment id, a deployment solution for implementing the full process of real-time deployment of a workflow is formulated. The above-mentioned determination of the target workflow according to the target key value or the target identification value may include: determining the running environment of the workflow corresponding to the target business system; in the case where the running environment is a pre-release environment, determining the target workflow according to the target key value; in the case where the running environment is an online environment or a test environment, determining whether there is a corresponding target identification value for the target key value in the above mapping table; in the case where there is a corresponding target identification value for the target key value in the mapping table, determining the target workflow according to the target identification value; and in the case where there is no corresponding target identification value for the target key value in the mapping table, determining the target workflow according to the target version of the target key value.

[0076] According to an embodiment of the present disclosure, referring to Figure 7As shown, based on the construction of the above mapping table, the initiation process of the above business system ultimately initiates according to the processDefinitionId corresponding to the specified processDefinitionKey. Specifically, after the business system initiates a process, for example, the type of the initiated process, that is, the processDefinitionKey, can be determined first. And the determination process of the workflow (i.e., the above target workflow) ultimately used to implement business processing can include, for example: judging the current running environment of the workflow corresponding to the initiated process (such as Figure 7 the identified env in it). If it is a pre-release environment, initiate uniformly according to the flowchart definition key (i.e., the above target key value) (according to the latest version); if it is a test environment or a production environment, obtain the corresponding relationship between the flowchart definition key and the flowchart definition id (i.e., the above target identification value) from the called service (corresponding to Figure 8 obtaining the process definition id corresponding to the process definition key from the key-value cache service composed of the flowchart definition key and the flowchart definition id in the data storage layer in it, and judging whether there is a mapping relationship). If there is a mapping relationship, initiate the process according to the configured flowchart definition id. If there is no mapping relationship, initiate the process according to the latest version of the flowchart currently available (i.e., the above target version). Among them, the latest version can be obtained by the workload engine through the corresponding API interface, for example; after initiating the process according to the flowchart definition id or the flowchart definition key, generate the corresponding instance id (the unique identifier of each activity instance of the workflow), and then complete the business processing based on the process corresponding to the instance id.

[0077] Through the above embodiments of the present disclosure, a mapping relationship between the processDefinitionKey (process definition key) and the processDefinitionId (process deployment id) is established, so that when the process deployment id is used as the online running version or the test version, the process deployment id can be used as the identifier for initiating the process, achieving the purpose of real-time deployment of the workflow flowchart and real-time modification of the online running process, reducing the risk of workflow going live, and effectively decoupling the complex go-live process.

[0078] According to an embodiment of the present disclosure, since relational databases perform well in many scenarios, such as in terms of support for transactions, high performance in reading and writing, and ensuring data consistency, they are inadequate when it comes to hiding user-invisible data, retrieving partial content, handling high-concurrency Internet queries, and supporting massive data. In this embodiment, since a workflow contains task nodes that require manual review and task nodes that do not require manual review (i.e., machine automatic review), in order to differentially search for and process data of task nodes with different review methods, a solution for storing heterogeneous data copies of some historical data is provided. Corresponding to this solution, the above-mentioned workflow deployment method may further include, for example: determining a target database for storing data corresponding to a first task node that requires manual review; obtaining historical data corresponding to a second task node that requires automatic review; and heterogeneously storing the historical data in another database different from the target database.

[0079] Figure 8 FIG. schematically shows an example diagram of a relational database heterogeneous data copy according to an embodiment of the present disclosure.

[0080] According to an embodiment of the present disclosure, the above-mentioned target database may be MySQL, for example, and the above-mentioned other database may be other middleware systems different from the MySQL database, such as Redis (Remote Dictionary Server), ES (elasticserch, a search and data analysis engine), Hbase (a distributed, column-oriented open-source database), etc.

[0081] Figure 9 FIG. schematically shows a schematic diagram of a solution for storing heterogeneous data copies of some historical data according to an embodiment of the present disclosure.

[0082] According to an embodiment of the present disclosure, in combination with the code execution logic preset by the listener, in order to ensure that the historical tasks generated by the nodes with the corresponding bit of autoAuditFlag being 0 cannot be queried by the user. For example, the historical task data in the Activiti table act_hi_taskinst can be pushed to the heterogeneous storage in ES, increasing the writing complexity, and at the same time improving the retrieval performance of the historical data. In this embodiment, the implementation process of this heterogeneous storage can include, for example: listening to the binlog (log) of the table act_hi_taskinst; when there is a change in the recorded End_Time_ field, query the historical task entity according to the task id to obtain the corresponding instance id; obtain the autoAuditFlag process variable according to the instance id, and by comparing the node position identified by i in the listener configuration ${taskSkipListener.skip(task.id, i)} expression corresponding to the corresponding task node and the value of the i-th bit of autoAuditFlag: 0 or 1, determine whether to push to the ES storage. In some embodiments, for example, it can be set that if the corresponding bit is 1, it is necessary to push to the ES, otherwise it is not pushed (that is, when the corresponding bit is 0, it is not pushed to the ES).

[0083] According to an embodiment of the present disclosure, as shown in Figure 9 As shown, the process of "listening to the update operation of the act_hi_taskinst table" and "Is End_Time_ NULL?" can be determined by listening to the change of the End_Time_ field in the above binlog. In the case where End_Time_ is not NULL, for example, it can indicate that there is a change in the recorded End Time_ field above, and it is necessary to query the historical task entity object according to the task id, including obtaining the autoAuditFlag variable according to the instance id, and parsing the listener expression corresponding to the task node and obtaining the bit flag configured for the task corresponding node, so as to be able to obtain the value flag of the i-th bit of autoAuditFlag according to the bit flag i, and assemble and push the data to the ES when flag is 1, and perform a discard (that is, not push) operation when flag is not 1 (such as 0). It should be noted that in the case where End_Time_ is NULL, for example, it can indicate that there is no change in the recorded End_Time_ field above, and at this time, the data of the corresponding task node can be directly executed with this discard operation.

[0084] Through the above embodiments of the present disclosure, since the Activiti historical data is heterogeneous with data copies, the historical data that does not need to be displayed (such as the task data corresponding to the automatic audit node) can be filtered out.

[0085] Through the above embodiments of the present disclosure, for example, the above real-time deployment solution, the vertical projection solution for complex flowcharts, and the heterogeneous data source solution can be adopted for the workflow of an actual business system or the deployment of an Activiti workflow, so as to achieve the purpose of simplifying and optimizing the flowchart deployment. For scenarios with a large number of gateways and repeated branch flows in complex flowcharts, for example, the vertical projection solution can be used to simplify the drawing of flowcharts, and heterogeneous data sources can be used for historical data, so as to achieve the goals of reducing the complexity of the process, reducing the risk of workflow going live, and reducing the amount of test regression.

[0086] Figure 10 A block diagram of a workflow deployment device according to an embodiment of the present disclosure is schematically shown.

[0087] As Figure 10 shown, the workflow deployment device 1000 includes a first acquisition module 1010, a second acquisition module 1020, a first determination module 1030, and a second determination module 1040.

[0088] The first acquisition module 1010 is configured to acquire a target task node in a target workflow, where the target workflow includes a plurality of task nodes;

[0089] The second acquisition module 1020 is configured to acquire a process variable preset for the target workflow in the target business system, where the process variable is an encoded string, the encoding length of the string is equal to the number of the plurality of task nodes, and each character in the process variable corresponds to each task node in the plurality of task nodes one by one.

[0090] The first determination module 1030 is configured to determine a target character corresponding to the target task node from the process variable.

[0091] The second determination module 1040 is configured to use the target character to determine an approval method for the target task node, so as to implement the deployment of the target workflow, where the approval method includes machine automatic approval or manual approval.

[0092] According to an embodiment of the present disclosure, by adopting the steps of obtaining a plurality of task nodes related to a target workflow; obtaining process variables preset for the target workflow in a target business system, where the process variables are encoded strings, and the encoding length of the strings is equal to the number of the plurality of task nodes, and each character in the process variables corresponds to each task node in the plurality of task nodes one by one; and using the characters of the process variables to determine the review method for each task node to implement the deployment of the target workflow, where the review method includes technical means of machine automatic review or manual review. Since the review method for task nodes can be determined using the characters of the process variables without the need for the deployment of complicated gateway nodes, at least partially, the technical problems of complex flowchart structure and high maintenance difficulty obtained when using gateway nodes for workflow deployment are overcome, and thus the technical effect of realizing a workflow deployment method for simplifying the flowchart is achieved.

[0093] According to an embodiment of the present disclosure, each of the above-mentioned task nodes is configured with a listening function, and the second determination module includes a listening unit, a first review unit, and a second review unit.

[0094] The listening unit is used to listen for target characters using the listening function.

[0095] The first review unit is used to determine that the first target task node corresponding to the target character is machine automatically reviewed when the target character is a first preset character, and transfer to the second target task node corresponding to the next target character being a second target character.

[0096] The second review unit is used to visually display the task corresponding to the second target task node for manual review when the target character is the second target character.

[0097] According to an embodiment of the present disclosure, the above-mentioned workflow deployment device further includes a third acquisition module, a fourth acquisition module, and a third determination module, which are arranged before the above-mentioned first acquisition module.

[0098] The third acquisition module is used to acquire key values of different types for characterizing workflows and identification values of different versions for characterizing the same type of workflows.

[0099] The fourth acquisition module is used to acquire a target key value and a target identification value for characterizing the workflow corresponding to the target business system.

[0100] The third determination module is used to determine the target workflow according to the target key value or the target identification value.

[0101] According to an embodiment of the present disclosure, the above-mentioned key values for characterizing different types of workflows and the identification values for characterizing different versions of the same type of workflow are stored in a mapping table. The above-mentioned third determination module includes a first determination unit, a second determination unit, a judgment unit, a third determination unit, and a fourth determination unit.

[0102] The first determination unit is used to determine the operating environment of the workflow corresponding to the target business system.

[0103] The second determination unit is used to determine the target workflow according to the target key value when the operating environment is a pre-release environment.

[0104] The judgment unit is used to judge whether there is a corresponding target identification value of the target key value in the mapping table when the operating environment is an online environment or a test environment.

[0105] The third determination unit is used to determine the target workflow according to the target identification value when there is a corresponding target identification value of the target key value in the mapping table.

[0106] The fourth determination unit is used to determine the target workflow according to the target version of the target key value when there is no corresponding target identification value of the target key value in the mapping table.

[0107] According to an embodiment of the present disclosure, the above-mentioned workflow deployment device further includes a fourth determination module, a fifth acquisition module, and a storage module.

[0108] The fourth determination module is used to determine the target database for storing the data corresponding to the first task node that needs to be manually reviewed.

[0109] The fifth acquisition module is used to acquire the historical data corresponding to the second task node that needs to be automatically reviewed.

[0110] The storage module is used to heterogeneously store the historical data into another database different from the target database.

[0111] Any of a plurality of modules or units according to embodiments of the present disclosure, or at least part of the functions of any of them, can be implemented in one module. Any one or more of the modules or units according to embodiments of the present disclosure can be split into multiple modules for implementation. Any one or more of the modules or units according to embodiments of the present disclosure can be at least partially implemented as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or can be implemented by any other reasonable way of integrating or packaging circuits, or by hardware or firmware, or by any one or a suitable combination of the three implementation manners of software, hardware, and firmware. Alternatively, one or more of the modules or units according to embodiments of the present disclosure can be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding functions can be executed.

[0112] For example, any of the first acquisition module 1010, the second acquisition module 1020, and the first determination module 1030 can be combined and implemented in one module / unit, or any one of the modules / units can be split into multiple modules / units. Alternatively, at least part of the functions of one or more of these modules / units can be combined with at least part of the functions of other modules / units and implemented in one module / unit. According to embodiments of the present disclosure, at least one of the first acquisition module 1010, the second acquisition module 1020, and the first determination module 1030 can be at least partially implemented as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or can be implemented by any other reasonable way of integrating or packaging circuits, or by hardware or firmware, or by any one or a suitable combination of the three implementation manners of software, hardware, and firmware. Alternatively, at least one of the first acquisition module 1010, the second acquisition module 1020, and the first determination module 1030 can be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding functions can be executed.

[0113] It should be noted that the part of the workflow deployment device in the embodiments of the present disclosure corresponds to the part of the workflow deployment method in the embodiments of the present disclosure. For the description of the workflow deployment device part, please refer to the workflow deployment method part specifically, and details will not be repeated here.

[0114] Figure 11 A block diagram of a computer system suitable for implementing the workflow deployment method according to an embodiment of the present disclosure is schematically shown. Figure 11The computer system shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of the present disclosure.

[0115] As Figure 11 shown, the computer system 1100 according to an embodiment of the present disclosure includes a processor 1101, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1102 or a program loaded from a storage section 1108 into a random access memory (RAM) 1103. The processor 1101 can include, for example, a general-purpose microprocessor (e.g., CPU), an instruction set processor, and / or a related chipset, and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), and so on. The processor 1101 can also include on-board memory for caching purposes. The processor 1101 can include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0116] In the RAM 1103, various programs and data required for the operation of the system 1100 are stored. The processor 1101, the ROM 1102, and the RAM 1103 are connected to each other via a bus 1104. The processor 1101 performs various operations of the method flow according to an embodiment of the present disclosure by executing the program in the ROM 1102 and / or the RAM 1103. It should be noted that the program can also be stored in one or more memories other than the ROM 1102 and the RAM 1103. The processor 1101 can also perform various operations of the method flow according to an embodiment of the present disclosure by executing the program stored in the one or more memories.

[0117] According to an embodiment of the present disclosure, the system 1100 may further include an input / output (I / O) interface 1105, and the input / output (I / O) interface 1105 is also connected to the bus 1104. The system 1100 may further include one or more of the following components connected to the I / O interface 1105: an input section 1106 including a keyboard, a mouse, etc.; an output section 1107 including, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1108 including a hard disk, etc.; and a communication section 1109 including a network interface card such as a LAN card, a modem, etc. The communication section 1109 performs communication processing via a network such as the Internet. A drive 1110 is also connected to the I / O interface 1105 as needed. A removable medium 1111, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1110 as needed so that a computer program read from it can be installed into the storage section 1108 as needed.

[0118] According to an embodiment of the present disclosure, the method flow according to the embodiments of the present disclosure can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable storage medium, and the computer program contains program codes for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 1109, and / or installed from the removable medium 1111. When the computer program is executed by the processor 1101, the above functions defined in the system of the embodiments of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described systems, devices, apparatuses, modules, units, etc. can be implemented by computer program modules.

[0119] The present disclosure also provides a computer-readable storage medium, which can be included in the device / device / system described in the above embodiments; or can exist alone without being assembled into the device / device / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiments of the present disclosure is implemented.

[0120] According to an embodiment of the present disclosure, the computer-readable storage medium can be a non-volatile computer-readable storage medium. For example, it can include but is not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In the present disclosure, the computer-readable storage medium can be any tangible medium that contains or stores a program, and the program can be used by or in combination with an instruction execution system, device, or device.

[0121] For example, according to an embodiment of the present disclosure, the computer-readable storage medium can include the above-described ROM 1102 and / or RAM 1103 and / or one or more memories other than ROM 1102 and RAM 1103.

[0122] An embodiment of the present disclosure also includes a computer program product, which includes a computer program that contains program codes for executing the method provided by the embodiments of the present disclosure. When the computer program product runs on an electronic device, the program codes are used to cause the electronic device to implement the workflow deployment method provided by the embodiments of the present disclosure.

[0123] When the computer program is executed by the processor 1101, the above functions defined in the system / device of the embodiments of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described systems, devices, modules, units, etc. can be implemented by computer program modules.

[0124] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices and magnetic storage devices. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication section 1109, and / or installed from the removable medium 1111. The program code included in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0125] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiments of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include but are not limited to, such as Java, C++, Python, the "C" language, or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (e.g., by using an Internet service provider to connect through the Internet).

[0126] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a portion of code that contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions noted in the blocks may occur in a different order than noted in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, and combinations of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or by a combination of dedicated hardware and computer instructions. Those skilled in the art will appreciate that the features recited in the various embodiments and / or claims of the present disclosure may be combined and / or combined in various ways, even if such combinations or combinations are not explicitly recited in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features recited in the various embodiments and / or claims of the present disclosure may be combined and / or combined in various ways. All such combinations and / or combinations fall within the scope of the present disclosure.

[0127] The embodiments of the present disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments have been described separately above, this does not mean that the measures in each embodiment cannot be used advantageously in combination. The scope of the present disclosure is defined by the appended claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art can make various substitutions and modifications, and all such substitutions and modifications should fall within the scope of the present disclosure.

Claims

1. A workflow deployment method, comprising: Obtaining a target task node in a target workflow, where the target workflow includes multiple task nodes, and each task node is configured with an event listener that includes a preset code execution logic to implement a listening function. The event listener includes a unique identifier of the task node and a position parameter indicating the configuration position of the task node in the flowchart; Obtaining a process variable preset for the target workflow in a target business system, where the process variable is an encoded string, the encoding length of the string is equal to the number of the multiple task nodes, each character in the process variable corresponds to each task node in the multiple task nodes one by one, and the position parameter in the event listener also represents the subscript of the process variable, and is used to determine the value of the character at the position represented by the subscript from the process variable for the task node at the configuration position corresponding to the position parameter in the flowchart; Parsing a target expression in a target event listener configured on the target task node to obtain a target configuration position identifier of the target task node identified by the target position parameter in the target event listener; Determining a target character corresponding to the target task node from the process variable according to the subscript of the process variable represented by the target configuration position identifier; and Using the target character to determine an audit method for the target task node, so as to implement the deployment of the target workflow, where the audit method includes machine automatic audit or manual audit; In the case where the operating environment of the workflow corresponding to the target business system is a pre-release environment, determining the target workflow according to a target key value of the workflow corresponding to the target business system, where key values used to represent different types of workflows and identification values used to represent different versions of the same type of workflow are stored in a mapping table; In the case where the operating environment is an online environment or a test environment and the target key value has a corresponding target identification value in the mapping table, determining the target workflow according to the target identification value; In the case where the target key value does not have a corresponding target identification value in the mapping table, determining the target workflow according to the target version of the target key value.

2. The method according to claim 1, wherein, Using the target character to determine the audit method for the target task node includes: In the case where the target character is a first preset character, determining that the first target task node corresponding to the target character is subject to machine automatic audit and flowing to the second target task node corresponding to the second target character when the next target character is reached; and In the case where the target character is the second target character, visually displaying the task corresponding to the second target task node for manual audit.

3. The method according to claim 1, further comprising: Determining a target database for storing data corresponding to a first task node that requires manual audit; Obtaining historical data corresponding to a second task node that requires automatic audit; And Heterogeneously store the historical data in a database different from the target database.

4. A workflow deployment device, comprising: A first acquisition module, configured to acquire a target task node in a target workflow, where the target workflow includes a plurality of task nodes, and each of the task nodes is configured with an event listener that includes a preset code execution logic to implement a listening function. The event listener includes a unique identifier of the task node and a position parameter representing the configuration position of the task node in a flowchart; A second acquisition module, configured to acquire process variables preset for the target workflow in a target business system, where the process variables are encoded strings, the encoding length of the strings is equal to the number of the plurality of task nodes, each character in the process variables corresponds to each of the plurality of task nodes one by one, and the position parameter in the event listener also represents the subscript of the process variable, and is used to determine the value of the character at the position represented by the subscript from the process variables for the task node at the configuration position corresponding to the position parameter in the flowchart; The device is further configured to parse a target expression in a target event listener configured on the target task node, and acquire a target configuration position identifier of the target task node identified by the target position parameter in the target event listener; A first determination module, configured to determine a target character corresponding to the target task node from the process variables according to the subscript of the process variable represented by the target configuration position identifier; and A second determination module, configured to use the characters of the process variables to determine the review method for each of the task nodes, so as to implement the deployment of the target workflow, where the review method includes machine automatic review or manual review; Wherein, when the operating environment of the workflow corresponding to the target business system is a pre-release environment, determine the target workflow according to the target key value of the workflow corresponding to the target business system, where the key values used to represent different types of workflows and the identification values used to represent different versions of the same type of workflow are stored in a mapping table; When the operating environment is an online environment or a test environment, and the target key value has a corresponding target identification value in the mapping table, determine the target workflow according to the target identification value; When the target key value does not have a corresponding target identification value in the mapping table, determine the target workflow according to the target version of the target key value.

5. The device according to claim 4, wherein The second determination module includes: A first review unit, configured to, when the target character is a first preset character, determine that the first target task node corresponding to the target character is subject to machine automatic review, and transfer to the second target task node corresponding to the second target character when the next target character is reached; and A second review unit, configured to, when the target character is the second target character, visually display the task corresponding to the second target task node for manual review.

6. A computer system, comprising: One or more processors; A memory for storing one or more programs, wherein, when the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 3.

7. A computer-readable storage medium having executable instructions stored thereon, which when executed by a processor cause the processor to implement the method according to any one of claims 1 to 3.

8. A computer program product comprising computer-executable instructions that are used to implement the method according to any one of claims 1 to 3 when executed.

Citation Information

Patent Citations

  • Implementation method for realizing multistage auditing workflow function by simple configuration items

    CN101630385A

  • Service processing method and apparatus

    CN109472540A