A method, apparatus, and device for determining an approval process

By generating and executing directed graphs to process approval process creation requests, the problem of bulky and inflexible approval process in the existing technology is solved, and efficient and flexible approval process management is achieved.

CN113506035BActive Publication Date: 2025-06-13INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202110854825.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-07-28
Publication Date
2025-06-13
Estimated Expiration
2041-07-28

AI Technical Summary

Technical Problem

The existing technology cannot efficiently implement business process approval based on business needs, resulting in bulky and inflexible approval processes, high development costs, and difficulty in dealing with changes in business needs.

Method used

By receiving the approval process creation request, obtain the target approval node set and the target process edge set, generate a target directed graph, and use this graph to execute the target approval process to achieve flexibility and efficiency of the approval process.

Benefits of technology

It realizes dynamic adjustment of approval processes according to business needs, and does not require business personnel to have programming knowledge, which reduces development difficulty and cost, and improves the flexibility and response speed of approval processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113506035B_ABST
    Figure CN113506035B_ABST
Patent Text Reader

Abstract

An embodiment of this specification provides a method, apparatus, and device for determining an approval process, which relates to the field of big data technology. The method includes: receiving an approval process creation request; the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario; obtaining a target approval node set and a target process edge set according to the identification information of the approval process initiator and the business scenario; generating a target directed graph based on the target approval node set and the target process edge set; the target directed graph includes multiple approval nodes, and adjacent approval nodes are connected by directed edges; executing a target approval process using the target directed graph; the object of the target approval process is the business data to be approved. In the embodiment of this specification, an approval process can be efficiently established through a directed graph according to business requirements, and business personnel do not need to have programming knowledge, with low development difficulty, and can respond to business requirements in a timely manner.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of this specification relate to the field of big data technology, and particularly to a method, device, and equipment for determining an approval process. Background Art

[0002] With the continuous development of banking business, more and more business processes require cross-institutional, cross-departmental, and cross-role approvals, and the approval links are gradually increasing. Moreover, as business requirements tend to be more complex and diversified, the approval process also needs to be adjusted accordingly, resulting in a complete business approval process having characteristics such as a large number of participants, a long approval cycle, and complex approval statuses.

[0003] In the prior art, the approval process needs to be pre-written and generated into a template by developers according to business requirements. The development difficulty of the approval process is large and requires a certain learning time. Therefore, the approval process needs to be gradually completed in a fixed order in the fixed approval process template, resulting in a cumbersome and inflexible approval process. When the approval process in the fixed approval process template involves changes, developers need to modify the entire approval process relationship, which is time-consuming, laborious, and has a high development cost. It can be seen that the technical solutions in the prior art cannot efficiently implement business process approval based on business requirements.

[0004] In response to the above problems, no effective solution has been proposed yet. Summary of the Invention

[0005] The embodiments of this specification provide a method, device, and equipment for determining an approval process to solve the problem in the prior art that business process approval cannot be efficiently implemented based on business requirements.

[0006] The embodiments of this specification provide a method for determining an approval process, including: receiving an approval process creation request; wherein, the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario; obtaining a target approval node set and a target process edge set according to the identification information of the approval process initiator and the business scenario; generating a target directed graph based on the target approval node set and the target process edge set; wherein, the target directed graph includes multiple approval nodes, and adjacent approval nodes are connected by directed edges; executing a target approval process using the target directed graph; wherein, the object of the target approval process is the business data to be approved.

[0007] The embodiments of this specification also provide a device for determining an approval process, including: a receiving module, configured to receive an approval process creation request; wherein, the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario; an obtaining module, configured to obtain a target approval node set and a target process edge set according to the identification information of the approval process initiator and the business scenario; a generating module, configured to generate a target directed graph based on the target approval node set and the target process edge set; wherein, the target directed graph includes a plurality of approval nodes, and adjacent approval nodes are connected by directed edges; an execution module, configured to execute a target approval process by using the target directed graph; wherein, the object of the target approval process for approval is the business data to be approved.

[0008] The embodiments of this specification also provide a device for determining an approval process, including a processor and a memory for storing instructions executable by the processor. When the processor executes the instructions, the steps of any one of the method embodiments in the embodiments of this specification are implemented.

[0009] The embodiments of this specification also provide a computer-readable storage medium, on which computer instructions are stored. When the instructions are executed, the steps of any one of the method embodiments in the embodiments of this specification are implemented.

[0010] The embodiments of this specification provide a method for determining an approval process, which can receive an approval process creation request. Among them, the approval process creation request may include the identification information of the approval process initiator, the business data to be approved, and the business scenario. And according to the identification information of the approval process initiator and the business scenario, a target approval node set and a target process edge set are obtained. Since the target approval node set can be used to represent all approval nodes involved in the entire approval process, the approval person information corresponding to each approval node, etc., and the target process edge set can be used to represent the approval operation relationship between each approval node, therefore, a target directed graph can be generated based on the target approval node set and the target process edge set. The target directed graph may include a plurality of approval nodes, and adjacent approval nodes are connected by directed edges. Further, a target approval process can be executed by using the target directed graph; wherein, the object of the target approval process for approval is the business data to be approved. Thus, an approval process can be efficiently established through a directed graph according to business requirements, and business personnel do not need to have programming knowledge, the development difficulty is low, and business requirements can be responded to in a timely manner. Description of the Drawings

[0011] The drawings described herein are used to provide a further understanding of the embodiments of this specification, and constitute a part of the embodiments of this specification, but do not limit the embodiments of this specification. In the drawings:

[0012] Figure 1It is a schematic diagram of the steps of the method for determining an approval process provided according to an embodiment of this specification;

[0013] Figure 2 It is a schematic diagram of the steps of the method for determining an approval process provided according to a specific embodiment of this specification;

[0014] Figure 3 It is a schematic structural diagram of an apparatus for determining an approval process provided according to an embodiment of this specification;

[0015] Figure 4 It is a schematic structural diagram of a device for determining an approval process provided according to an embodiment of this specification. Specific Embodiments

[0016] Next, the principles and spirit of the embodiments of this specification will be described with reference to several exemplary embodiments. It should be understood that these embodiments are provided only to enable those skilled in the art to better understand and then implement the embodiments of this specification, rather than limiting the scope of the embodiments of this specification in any way. On the contrary, these embodiments are provided to make the disclosure of the embodiments of this specification more thorough and complete, and to be able to convey the scope of this disclosure fully to those skilled in the art.

[0017] Those skilled in the art know that the embodiments of the embodiments of this specification can be implemented as a system, a device, a method, or a computer program product. Therefore, the disclosure of the embodiments of this specification can be specifically implemented in the following forms, namely: completely hardware, completely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.

[0018] Although the processes described below include multiple operations that occur in a specific order, it should be clearly understood that these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel (for example, using a parallel processor or a multi-threaded environment).

[0019] Please refer to Figure 1 , this embodiment can provide a method for determining an approval process. The method for determining an approval process can be used to efficiently establish an approval process through a directed graph according to business requirements. The above method for determining an approval process may include the following steps.

[0020] S101: Receive an approval process creation request; wherein, the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario.

[0021] In this embodiment, the initiator of the approval process can fill in the business data and business scenarios to be approved according to business requirements on the front-end interface. After filling is completed, a submission event is triggered to initiate a new approval process creation request. The server side can receive the above approval process creation request, and the above approval process creation request may include the identification information of the approval process initiator, the business data to be approved, and the business scenario.

[0022] In this embodiment, the identification information of the above approval process initiator can be used to uniquely identify the approval process initiator. In some embodiments, the above identification information may be the number, ID card number, name, etc. of the approval process initiator, and can be specifically determined according to the actual situation. The embodiments of this specification do not limit this.

[0023] In this embodiment, the above business data to be approved can be determined according to actual business requirements. For example, when the business requirement is to review an expense report, the business data to be approved is a specific expense report. In some embodiments, the above business data to be approved may include: user number, user name, currency, amount, business type, interest rate code, etc. Of course, the business data to be approved is not limited to the above examples. Those skilled in the art may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to those of the embodiments of this specification, they should all be covered within the protection scope of the embodiments of this specification.

[0024] In this embodiment, the above business scenario can be used to represent different business types, such as: leave approval, expense reimbursement approval, large amount transfer approval, loan approval, etc. Of course, the business scenario is not limited to the above examples. Those skilled in the art may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to those of the embodiments of this specification, they should all be covered within the protection scope of the embodiments of this specification.

[0025] S102: Obtain a target approval node set and a target process edge set according to the identification information of the approval process initiator and the business scenario.

[0026] In this embodiment, a target approval node set and a target process edge set can be obtained according to the identification information of the approval process initiator and the business scenario. Among them, the above target approval node set may contain parameter information of multiple approval nodes, and the above target process edge set may contain parameter information of at least one process edge.

[0027] In this embodiment, an approval process can be determined correspondingly according to the business scenario. For example, for leave approval, a two-level approval is required. The approver of the first-level approval node is the direct leader of the approval process initiator, and the approver of the second-level approval node is the general manager. The approval logic is that when both the direct leader of the approval process initiator and the general manager approve, the approval process ends. Thus, a target approval node set and a target process edge set can be determined. Of course, the corresponding relationship between the business scenario and the approval process is not limited to the above example. Those skilled in the art may make other changes under the inspiration of the technical essence of the embodiments of this specification. However, as long as the functions and effects achieved are the same as or similar to those of the embodiments of this specification, they should all be covered within the protection scope of the embodiments of this specification.

[0028] In this embodiment, since the approval process initiators are different, the approval processes corresponding to the same business scenario will also be different. For example, the leave approval process initiated by the supervisor may only require the general manager for first-level approval. Therefore, the target approval node set and the target process edge set can be obtained according to the identification information of the approval process initiator and the business scenario. Of course, it can be understood that in some embodiments, the target approval node set and the target process edge set can also be obtained only according to the identification information of the approval process initiator, which can be determined according to the actual situation, and this specification does not limit this.

[0029] In this embodiment, the above approval node set and process edge set can be pre-configured and stored in the target database. The corresponding approval node set and process edge set can be configured respectively for different types of approval process initiators and business scenarios, so as to obtain them in a timely manner when receiving an approval process creation request.

[0030] In this embodiment, if the corresponding approval node set and process edge set cannot be obtained according to the identification information of the approval process initiator and the business scenario, it means that this is a new approval process, and it can be configured in real time, and the approver information and approval logic of each approval node can be configured. For example: a complete approval process is determined through the business scenario and the identification information of the approval process initiator, which includes n levels of approvers (n approval nodes can be determined) and m types of approval relationships (m process edges can be determined), and then the determined information is parsed and configured in the approval node set and process edge set. Specifically, for business scenario Z that needs to generate approval process Y, and the whole process requires three-level approval, then process nodes A, B, and C can be configured. Among them, process node A is operated by the approver in the "agent" role, and the approver information of node A can be configured as the "agent" role, and the subsequent configuration is carried out in turn, so as to obtain the corresponding approval node set and process edge set.

[0031] In this embodiment, the above-mentioned target database may also be pre-configured with the approval logics of each approval node, so as to determine the flow direction of the approval node when executing the corresponding approval process.

[0032] In this embodiment, the above-mentioned target approval node set may include multiple approval node subsets. Each approval node subset may include: approval node number, approval role, approval role name, primary key, etc. The above-mentioned primary key may be an ID uniquely determined according to the identification information of the approval process initiator and the business scenario. Of course, it can be understood that the above-mentioned approval node subset may also include other parameter information, such as: approval level, etc., which can be specifically determined according to the actual situation, and the embodiments of this specification do not limit this.

[0033] In this embodiment, the above-mentioned target process edge set may include at least one process edge subset. Each process edge subset may include: operation type, previous node number, next node number, primary key, etc. The above-mentioned primary key may be an ID uniquely determined according to the identification information of the approval process initiator and the business scenario. Of course, it can be understood that the above-mentioned process edge subset may also include other parameter information, such as: approval logic, etc., which can be specifically determined according to the actual situation, and the embodiments of this specification do not limit this.

[0034] S103: Generate a target directed graph based on the target approval node set and the target process edge set; wherein, the target directed graph includes multiple approval nodes, and adjacent approval nodes are connected by directed edges.

[0035] In this embodiment, since the above-mentioned target approval node set can be used to represent all approval nodes involved in the entire approval process, the approval person information corresponding to each approval node, etc., and the target process edge set can be used to represent the approval operation relationships between each approval node. For example: if process node A performs an "approve" operation, then according to the flow direction of the "approve edge", the next process node is determined to be B; if process node A performs a "disapprove" operation, then according to the flow direction of the "disapprove edge", the next process node is determined to be C. Therefore, a target directed graph can be generated based on the target approval node set and the target process edge set; wherein, the target directed graph may include multiple approval nodes, and adjacent approval nodes are connected by directed edges.

[0036] In this embodiment, the target directed graph is drawn based on the target approval node set and the target process edge set. The target directed graph can clearly and concisely display the relationships of the entire approval process. A directed graph is composed of multiple vertices and multiple directed edges. The set of all vertices is called the vertex set of the directed graph, and the set of all directed edges is called the edge set of the directed graph. Each vertex is connected by a directed edge one by one, with characteristics such as strong connectivity and clear flow direction. Therefore, the characteristics of strong connectivity and clear flow direction of the directed graph can be utilized to automatically draw the directed graph of the approval process through the dynamically configured approval node set and process edge set, making the entire approval process more flexible and continuous development more simple and fast.

[0037] S104: Execute the target approval process using the target directed graph; wherein, the object of the target approval process is the business data to be approved.

[0038] In this embodiment, since the target directed graph can be used to represent the relationships of the entire approval process, the target approval process can be executed using the target directed graph. Among them, the object of the above target approval process can be the business data to be approved.

[0039] In this embodiment, the transfer can start from the initial approval node in the target directed graph. After the approver corresponding to the initial approval node performs the approval operation, the flow direction of the initial approval node can be determined according to the approval logic of the initial approval node. The flow direction of the initial approval node has two cases. One is to directly jump to the designated approval node, and the other is that the approval process ends directly. Among them, the above designated approval node can be the next approval node of the initial approval node, and can be specifically determined according to the approval logic. Further, the above steps can be repeated based on the target directed graph until the target approval process ends.

[0040] From the above description, it can be seen that the embodiments of this specification achieve the following technical effects: It can receive an approval process creation request, where the approval process creation request may include the identification information of the approval process initiator, the business data to be approved, and the business scenario. And based on the identification information of the approval process initiator and the business scenario, obtain a target approval node set and a target process edge set. Since the target approval node set can be used to represent all the approval nodes involved in the entire approval process, the approval person information corresponding to each approval node, etc., and the target process edge set can be used to represent the approval operation relationship between each approval node, therefore, a target directed graph can be generated based on the target approval node set and the target process edge set. The target directed graph may include multiple approval nodes, and adjacent approval nodes are connected by directed edges. Further, the target approval process can be executed using the target directed graph; where the object of the target approval process is the business data to be approved. Thus, an approval process can be efficiently established through a directed graph according to business requirements, and business personnel do not need to have programming knowledge, the development difficulty is low, and business requirements can be responded to in a timely manner.

[0041] In one embodiment, obtaining a target point set and a target edge set according to the identification information of the approval process initiator and the business scenario may include: determining the organizational level corresponding to the approval process initiator based on the identification information of the approval process initiator. Further, the process approval type may be determined according to the organizational level corresponding to the approval process initiator and the business scenario, and the target approval node set and the target process edge set may be obtained from the target database based on the process approval type.

[0042] In this embodiment, the identification information of the approval process initiator can be used to uniquely determine the approval process initiator. In some embodiments, the identification information may be the number, ID card number, name, etc. of the approval process initiator, and specifically can be determined according to the actual situation, and the embodiments of this specification do not limit this. Further, the organizational level corresponding to the approval process initiator can be determined according to the identification information of the approval process initiator. The corresponding relationship between the identification information and the organizational level can be pre-configured and stored in a table in the form of key-value pairs.

[0043] In this embodiment, the organizational level can be used to represent the level of the user in the organization. For example, the organizational level may be: branch type, secondary branch type, primary branch type, etc. Of course, the organizational level is not limited to the above examples. Those skilled in the art may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to those of the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.

[0044] In this embodiment, the above approval node set and process edge set can be pre-configured and stored in the target database. Corresponding approval node sets and process edge sets can be configured respectively according to the institutional level and business scenario corresponding to different approval process initiators, so as to obtain them in a timely manner when receiving an approval process creation request.

[0045] In this embodiment, the primary key of the above approval node set and process edge set can be the process approval type. According to a process approval type, an approval node set and a process edge set can be uniquely determined. According to the institutional level and business scenario corresponding to an approval process initiator, a process approval type can be uniquely determined.

[0046] In this embodiment, due to different institutional levels of the approval process initiators, the corresponding approval processes may be different. For example, there are differences between the approval processes initiated by the head office and those initiated by the branch, and there are differences between the approval processes initiated by ordinary employees and those initiated by the general manager. Specifically, it can be determined according to the actual situation. Therefore, the process approval type can be determined by combining the institutional level and business scenario corresponding to the approval process initiator. Among them, the corresponding relationship between the institutional level and business scenario corresponding to the approval process initiator and the process approval type can be pre-stored in the process type table for timely acquisition.

[0047] In one embodiment, after executing the target approval process using the target directed graph, it may further include: obtaining business requirements. When it is determined that the target approval process needs to be adjusted according to the business requirements, the target approval node set and the target process edge set are modified based on the business requirements to obtain the modified target approval node set and target process edge set. Further, a modified target directed graph can be generated using the modified target approval node set and target process edge set, and the adjusted target approval process can be continued to be executed based on the modified target directed graph.

[0048] In this embodiment, since the business requirements may change during the execution of the target approval process, and the target directed graph needs to be adjusted. Therefore, the latest business requirements can be obtained. When it is determined that the target approval process needs to be adjusted according to the latest obtained business requirements, the target approval node set and the target process edge set can be adjusted accordingly. The adjustment methods can include adding or deleting approval nodes and / or process edges, and can also include modifying the attributes of approval nodes (such as approver information, node name, etc.) and modifying the attributes of process edges (such as operation type, approval logic, etc.). Of course, the adjustment methods are not limited to the above examples. Those skilled in the art may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to those of the embodiments of this specification, they should all be covered within the protection scope of the embodiments of this specification.

[0049] In this embodiment, a modified target directed graph is generated by using the modified target approval node set and the target process edge set, so that the modified target directed graph can accurately reflect the latest business requirements, and thus the adjusted target approval process can be continued based on the modified target directed graph. In this embodiment, when the inherent approval process involves changes, there is no need to modify the entire approval process relationship, and only the corresponding node set and edge set need to be modified, making the change of the approval process simpler and more convenient.

[0050] In this embodiment, the entire approval process can be restarted from the initial approval node in the adjusted target approval process, or continued from the last transferred approval node in the target approval process before adjustment. Specifically, it can be determined according to the actual situation, and the embodiments of this specification do not limit this.

[0051] In one embodiment, executing the target approval process by using the target directed graph may include: receiving an approval operation for the current approval node, and obtaining the approval logic of the current approval node from the target database. Further, the approval status of the current approval node can be determined according to the approval logic of the current approval node. When it is determined that the approval status of the current approval node is approved, it is determined whether the current approval node is a termination node. If the current approval node is a termination node, the target approval process can be ended.

[0052] In this embodiment, the target approval process can be started by calling an API (interface) function. Among them, the above API function is a set of common functional functions for executing the approval logic corresponding to each approval node.

[0053] In this embodiment, the transfer can start from the initial approval node in the target directed graph, and the approval logic of the current approval node can be obtained from the target database when an approval operation for the current approval node is received. Among them, the target database can be pre-configured with the approval person information and approval logic of each approval node in the target approval process. Since the approval person information of the approval node in the target directed graph can be recorded as a node attribute, the approval logic can be obtained from the target database. In some embodiments, the approval logic can also be recorded as an attribute of the process edge in the directed graph, so that the transfer of the approval node can be directly performed according to the target directed graph. In some embodiments, the approval role and approval logic can also be obtained from the target database simultaneously. Specifically, it can be determined according to the actual situation, and the embodiments of this specification do not limit this.

[0054] In this embodiment, the approval logic of the currently obtained approval node can be executed by calling the API function to obtain the approval status of the currently obtained approval node. Among them, the above approval status may include: not submitted, submitted, under approval, application for deletion, agreed, disagreed, approved, not approved, approval form deleted, etc. Of course, the approval status is not limited to the above examples. Those skilled in the art may make other changes under the inspiration of the technical essence of the embodiments of this specification. However, as long as the functions and effects achieved are the same as or similar to those of the embodiments of this specification, they should all be covered within the protection scope of the embodiments of this specification.

[0055] In this embodiment, when the approval status is not submitted, under approval, etc., it is possible to continue waiting and re-determine the approval status of the currently obtained approval node at preset intervals. When the approval status is application for deletion, disagreed, not approved, approval form deleted, etc., the target approval process can be ended. When the approval status is agreed, it can be equivalent to approved.

[0056] In this embodiment, when it is determined that the approval status of the currently obtained approval node is approved, it is possible to further determine whether the currently obtained approval node is a termination node. If the currently obtained approval node is a termination node, it means that the target approval process has been fully executed, and the target approval process can be ended.

[0057] In this embodiment, if the approval status of the above approval node is other than approved, it is possible to determine whether to end the target approval process, jump to a specified approval node, or pause the target approval process for modification according to the approval logic. Specifically, it can be determined according to the actual situation, and the embodiments of this specification do not limit this.

[0058] In this embodiment, after the approval logic of the currently obtained approval node is executed, the approval process data of the currently obtained approval node can also be stored and updated. The above approval process data may include: approval process number, approval status, currently obtained approval node, approval process initiator information, approver information of the next approval node, approval logic of the next approval node, etc. The above approval process data can be generated after the target approval process is submitted and continuously updated during the execution process. Each update can overwrite the historical data to ensure that the stored data is the latest, which is convenient for improving the update efficiency of the approval process data.

[0059] In this embodiment, if the currently obtained approval node is a termination node, when updating the approval process data, the approver information of the next approval node and the approval logic of the next approval node can be updated to control. Of course, it can be understood that the approver information of the next approval node and the approval logic of the next approval node may not be updated. Specifically, it can be determined according to the actual situation, and the embodiments of this specification do not limit this.

[0060] In one embodiment, after determining whether the current approval node is a termination node, it may further include: when the current approval node is not a termination node, obtaining the approver information of the next approval node of the current approval node according to the target directed graph. Further, based on the approver information of the next approval node of the current approval node, the target approval process may be jumped to the next approval node of the current approval node.

[0061] In this embodiment, when the current approval node is not a termination node, the approver information of the next approval node of the current approval node may be obtained according to the target directed graph. In some embodiments, the approval logic of the next approval node of the current approval node may also be obtained from the target database, and the approval process data may be updated.

[0062] In this embodiment, the jump API function may be called to jump the target approval process to the next approval node of the current approval node based on the approver information of the next approval node of the current approval node.

[0063] In one embodiment, after jumping the target approval process to the next approval node of the current approval node, it may further include: updating the process jump log; wherein, the process jump log contains the approver information of the current approval node. When it is determined that the approval node needs to be rolled back, the approver information of the approval node to be rolled back is determined according to the process jump log. Further, based on the approver information of the approval node to be rolled back, the target approval process may be jumped to the approval node to be rolled back.

[0064] In this embodiment, when performing the jump operation of the current approval node in the center, the process jump log of the current approval node may be synchronously recorded. Among them, the above process jump log may contain the approval information of each approval node that has performed the jump operation in the target approval process, including the specific approver information of each approval node. Thus, by saving redundant data, the operation of the "rollback" function can be simplified.

[0065] In this embodiment, when the target approval process is in the normal approval process, when it is determined that the target approval process needs to be rolled back to the historical approver for modification operations, the process jump log may be queried first to determine the approver information of the approval node to be rolled back, and further determine the approval node information corresponding to the approver information. Then, the approval rollback API function is called to roll back the target approval process to the corresponding approval node to be rolled back. After the approver of the approval node to be rolled back modifies according to the requirements, the target approval process can be completed again.

[0066] In this embodiment, whether a rollback operation is required can be determined by the current approver or determined according to the approval logic. For example, when the business data filled in the approval form is incorrect, the current approver can perform a rollback operation, and the approval person information list of all historical approval nodes can be queried from the process jump log for the current approver to select.

[0067] In this embodiment, after determining the approval node to be rolled back, the approval person information of the approval node to be rolled back can be queried from the process jump log and updated to the latest approval process data.

[0068] In one embodiment, before determining whether the current approval node is a termination node, it may further include: obtaining the control parameter of the current approval node, and determining whether the current approval node is a termination node when the control parameter of the current approval node is empty.

[0069] In this embodiment, the control parameter of the approval node refers to special restriction conditions for the approval process. For example: the total amount control, the daily total amount control parameter is configured as AMT1, the sum of the amounts of the approval forms already submitted on the same day is AMT2, and the amount of the approval form in the current approval process is AMT3. If AMT2 + AMT3 < AMT1, the approval can be carried out normally; otherwise, a prompt of "amount exceeded" will be given. At this time, the amount can be rolled back and modified, or directly "approval not passed", which can be determined according to the actual situation, and the embodiments of this specification do not limit this.

[0070] In this embodiment, after, or at the same time as, or before performing the approval logic judgment on the current approval node, the control parameter of the current approval node can be obtained.

[0071] In this embodiment, it can be first determined whether the control parameter of the current approval node is empty. If it is empty, it means that the current approval node has no configured control parameter, and it can be determined whether the current approval node is a termination node.

[0072] In one embodiment, after obtaining the control parameter of the current approval node, it may further include: when the control parameter of the current approval node is not empty, determining the verification order of at least one control parameter. The current approval node is verified in sequence according to the verification order of at least one control parameter to obtain a verification result. Further, the flow direction of the current approval node can be determined according to the verification result.

[0073] In this embodiment, the current approval node can be verified in sequence according to the verification order of at least one control parameter. If the verification of the current control parameter fails, the next control parameter can be verified in sequence, and the above logic can be repeated until all control parameters are traversed. If the verification of the current control parameter passes, the specific configuration information of the control parameter can be obtained to dynamically change the direction of the approval process. Among them, changing the direction of the approval process is divided into two cases. One is that the approval process directly jumps to the specified approval node, and the other is that the approval process directly ends.

[0074] In this embodiment, the specific configuration information of the control parameter can include the information of the next approval node in the approval process after the control parameter verification passes. For example: for the total amount control of the amount, when the total amount exceeds the limit, if the rollback operation is selected, the next approval node is to read the information and approval logic of the node where the rollback person is located; if "approval not passed" is selected, the next approval node is directly "approval ended".

[0075] In this embodiment, the above verification results can include: verification passed and verification failed. The control parameters of each approval node can be pre-configured with corresponding verification logics, and the specific judgment method can be determined according to the verification logics. Among them, when there are multiple control parameters for an approval node, the verification logic can also include whether other control parameters still need to be verified when one control parameter fails the verification, and whether other control parameters still need to be verified when one control parameter passes the verification, etc., which can be determined according to the actual situation, and the embodiments of this specification do not limit this.

[0076] In one embodiment, a front-end interface can also be provided to provide functions such as filling in the business data to be approved, querying, presenting, and operating the approval process data for business personnel.

[0077] The above method will be described below in combination with a specific embodiment. However, it should be noted that this specific embodiment is only for better explaining the embodiments of this specification and does not constitute an improper limitation to the embodiments of this specification. As Figure 2 shown, it can include:

[0078] Step S201: The initiator of the approval process fills in the business data to be approved on the front-end interface of the approval device according to business requirements. After filling is completed, a submission event is triggered to initiate a new approval process.

[0079] Step S202: Call the approval process start API function to officially start the new approval process.

[0080] Step S203: After the approval process is initiated, query the corresponding approval process type ID from the process flow type table (process_flow_type) according to the institutional level and business scenario of the approval process initiator. Then, query the corresponding node set and edge set from the approval process node set table (process_flow_node) and the process flow edge set table (process_flow_transition) respectively based on the approval process type ID, and draw the corresponding directed graph of the approval process.

[0081] Step S204: Obtain the approval role and approval logic of the current approval node in the directed graph of the approval process, then call the execution API function to execute the approval logic of the currently read approval node, and complete the real-time update of the approval process status.

[0082] Step S205: Conduct control parameter verification.

[0083] Read the control parameters of the current approval node, and then call the approval control API function to perform control parameter logic verification. First, judge whether the total number of control parameters of the current approval node is zero. If it is zero, there is no approval control configured for this approval node, and the approval process jumps to Step S206; if it is not zero, verify one by one according to the configured control parameter verification order. If the current control parameter verification fails, the total number of control parameters decreases, and the above logic is repeated; if the current control parameter verification passes, the specific configuration information of the control parameter can be read to dynamically change the direction of the approval process. There are two cases for changing the direction of the approval process. One is that the approval process directly jumps to the specified approval node, as shown in Step S208, and the other is that the approval process directly ends, as shown in Step S209.

[0084] Step S206: After the approval logic of the current approval node is executed, continue to read the approver information and approval logic of the next approval node, and then call the jump API function to complete the jump between approval nodes.

[0085] Step S207: Judge whether the current approval node is the termination node of the approval process. If it is, the approval process ends; if not, the approval process jumps to Step S204 and repeats the above steps until the termination node is reached.

[0086] In this embodiment, the total number of control parameters refers to the total number of control parameters configured at the current process node.

[0087] In this embodiment, based on the characteristics of strong connectivity and clear flow direction of the directed graph, a way to create an approval process with strong integration, high processing efficiency, low development difficulty, and convenient continuous maintenance is realized. Moreover, it can support approval links at any institutional level, support dynamically adding various approval controls during process jumps, and can record the process jump logs of each approval node in real time throughout the approval process to implement a rollback mechanism. Further, by adopting a development mode of separating process data and business data, the process data can be dynamically maintained to draw the directed graph of the approval process in real time. Additionally, the approval control function between each process jump is realized through the real-time configuration of control parameters, flexibly controlling the direction of the entire approval process, achieving the purpose of strong integration, high flexibility, and convenient continuous maintenance. And it is convenient for continuous development with less performance loss.

[0088] Based on the same inventive concept, an apparatus for determining an approval process is also provided in an embodiment of this specification, as described in the following embodiments. Since the principle of the apparatus for determining the approval process to solve problems is similar to that of the method for determining the approval process, the implementation of the apparatus for determining the approval process can refer to the implementation of the method for determining the approval process, and the repeated parts will not be elaborated. Hereinafter, the term "unit" or "module" may refer to a combination of software and / or hardware that can implement a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated. Figure 3 is a structural block diagram of the apparatus for determining the approval process according to an embodiment of this specification, as Figure 3 shown, and may include: a receiving module 301, an obtaining module 302, a generating module 303, and an executing module 304. The following will describe this structure.

[0089] The receiving module 301 can be used to receive an approval process creation request; wherein, the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario.

[0090] The obtaining module 302 can be used to obtain a target approval node set and a target process edge set according to the identification information of the approval process initiator and the business scenario.

[0091] The generating module 303 can be used to generate a target directed graph based on the target approval node set and the target process edge set; wherein, the target directed graph includes multiple approval nodes, and adjacent approval nodes are connected by directed edges.

[0092] The executing module 304 can be used to execute the target approval process by using the target directed graph; wherein, the object of the target approval process is the business data to be approved.

[0093] An embodiment of the implementation manner of this specification also provides an electronic device, which can be specifically referred to Figure 4Schematic diagram of the composition structure of an electronic device for the method of determining an approval process provided in an embodiment of this specification. The electronic device may specifically include an input device 41, a processor 42, and a memory 43. Among them, the input device 41 may specifically be used to input an approval process creation request. The processor 42 may specifically be used to receive an approval process creation request; among them, the approval process creation request includes identification information of the approval process initiator, business data to be approved, and a business scenario; based on the identification information of the approval process initiator and the business scenario, obtain a target approval node set and a target process edge set; based on the target approval node set and the target process edge set, generate a target directed graph; among them, the target directed graph includes multiple approval nodes, and adjacent approval nodes are connected by directed edges; execute a target approval process using the target directed graph; among them, the object of approval of the target approval process is the business data to be approved. The memory 43 may specifically be used to store data such as the target directed graph.

[0094] In this embodiment, the input device may specifically be one of the main devices for information exchange between a user and a computer system. The input device may include a keyboard, a mouse, a camera, a scanner, a light pen, a handwriting input board, a voice input device, etc.; the input device is used to input raw data and programs for processing these numbers into the computer. The input device may also obtain data transmitted from other modules, units, and devices. The processor may be implemented in any suitable manner. For example, the processor may take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program code (such as software or firmware) executable by the (micro)processor, logic gates, switches, an application specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller, etc. The memory may specifically be a memory device for storing information in modern information technology. The memory may include multiple levels. In a digital system, as long as it can store binary data, it can be a memory; in an integrated circuit, a circuit with a storage function without a physical form is also called a memory, such as a RAM, a FIFO, etc.; in a system, a storage device with a physical form is also called a memory, such as a memory stick, a TF card, etc.

[0095] In this embodiment, the functions and effects specifically implemented by the electronic device may be explained in comparison with other embodiments and will not be elaborated here.

[0096] In the implementation manner of the embodiments of this specification, a computer storage medium for a determination method based on an approval process is further provided. The computer storage medium stores computer program instructions, and when the computer program instructions are executed, the following can be achieved: receiving an approval process creation request; wherein, the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario; according to the identification information of the approval process initiator and the business scenario, obtaining a target approval node set and a target process edge set; generating a target directed graph based on the target approval node set and the target process edge set; wherein, the target directed graph includes a plurality of approval nodes, and adjacent approval nodes are connected by directed edges; executing a target approval process by using the target directed graph; wherein, the object of the target approval process is the business data to be approved.

[0097] In this implementation manner, the above storage medium includes, but is not limited to, a random access memory (RAM), a read-only memory (ROM), a cache, a hard disk drive (HDD), or a memory card. The memory can be used to store computer program instructions. The network communication unit can be set according to the standards specified by the communication protocol and is used for the interface of network connection communication.

[0098] In this implementation manner, the functions and effects specifically implemented by the program instructions stored in this computer storage medium can be explained by comparison with other implementation manners, and will not be elaborated here.

[0099] Obviously, those skilled in the art should understand that the above modules or steps of the embodiments of this specification can be implemented by a general computing device. They can be concentrated on a single computing device or distributed on a network composed of multiple computing devices. Optionally, they can be implemented by program codes executable by the computing device. Thus, they can be stored in the storage device and executed by the computing device. And in some cases, the steps shown or described can be executed in a different order from here, or they can be separately made into individual integrated circuit modules, or multiple modules or steps among them can be made into a single integrated circuit module to implement. In this way, the embodiments of this specification are not limited to any specific combination of hardware and software.

[0100] Although the embodiments of this specification provide method operation steps as described in the above embodiments or flowcharts, more or fewer operation steps may be included in the method based on routine or non-creative labor. In steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided in the embodiments of this specification. When the actual device or terminal product of the described method is executed, it may be executed in the method order shown in the embodiments or the drawings or in parallel (for example, in an environment of parallel processors or multi-threaded processing).

[0101] It should be understood that the above description is for illustrative purposes and not for limitation. Many embodiments and many applications other than the examples provided will be apparent to those skilled in the art upon reading the above description. Therefore, the scope of the embodiments of this specification should not be determined with reference to the above description, but should be determined with reference to the full scope of the foregoing claims and the equivalents thereof.

[0102] The above are only the preferred embodiments of the embodiments of this specification and are not used to limit the embodiments of this specification. For those skilled in the art, various changes and modifications can be made to the embodiments of this specification. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the embodiments of this specification shall be included within the protection scope of the embodiments of this specification.

Claims

1. A method for determining an approval process, characterized in that, it includes: Receiving an approval process creation request; wherein, the approval process creation request includes the identification information of the approval process initiator, the business data to be approved, and the business scenario; According to the identification information of the approval process initiator and the business scenario, obtaining a target approval node set and a target process edge set; Based on the target approval node set and the target process edge set, generating a target directed graph; wherein, the target directed graph includes multiple approval nodes, and adjacent approval nodes are connected by directed edges; Executing a target approval process using the target directed graph; wherein, the object of the target approval process is the business data to be approved; Executing a target approval process using the target directed graph includes: Receiving an approval operation for the current approval node; Obtaining the approval logic of the current approval node from the target database; According to the approval logic of the current approval node, determining the approval status of the current approval node; When determining that the approval status of the current approval node is approved, determining whether the current approval node is a termination node; When the current approval node is a termination node, ending the target approval process; Before determining whether the current approval node is a termination node, it further includes: Obtaining the control parameter of the current approval node; the control parameter is used to restrict the approval process; When the control parameter of the current approval node is not empty, determining the verification order of at least one control parameter; Verifying the current approval node in sequence according to the verification order of at least one control parameter and the verification logic corresponding to each control parameter to obtain a verification result; According to the verification result and the configuration information of at least one control parameter, determining the flow direction of the current approval node.

2. The method according to claim 1, characterized in that, According to the identification information of the approval process initiator and the business scenario, obtaining a target point set and a target edge set, including: Based on the identification information of the approval process initiator, determining the institutional level corresponding to the approval process initiator; According to the institutional level corresponding to the approval process initiator and the business scenario, determining the process approval type; Based on the process approval type, obtaining a target approval node set and a target process edge set from the target database.

3. The method according to claim 1, characterized in that, After executing the target approval process using the target directed graph, it further includes: Obtaining business requirements; When it is determined according to the business requirements that the target approval process needs to be adjusted, modifying the target approval node set and the target process edge set based on the business requirements to obtain a modified target approval node set and a modified target process edge set; Using the modified target approval node set and the modified target process edge set to generate a modified target directed graph; Continuing to execute the adjusted target approval process based on the modified target directed graph.

4. The method according to claim 1, characterized in that, After determining whether the current approval node is a termination node, it further includes: When the current approval node is not a termination node, obtain the approver information of the next approval node of the current approval node according to the target directed graph; Based on the approver information of the next approval node of the current approval node, jump the target approval process to the next approval node of the current approval node.

5. The method according to claim 4, wherein, after jumping the target approval process to the next approval node of the current approval node, further includes: Updating the process jump log; wherein, the process jump log contains the approver information of the current approval node; When it is determined that approval node rollback is required, determine the approver information of the approval node to be rolled back according to the process jump log; According to the approver information of the approval node to be rolled back, jump the target approval process to the approval node to be rolled back.

6. The method according to claim 1, wherein, Before determining whether the current approval node is a termination node, further includes: when the control parameter of the current approval node is empty, determine whether the current approval node is a termination node.

7. An approval process determination device, wherein, includes: A receiving module, configured to receive an approval process creation request; wherein, the approval process creation request contains the identification information of the approval process initiator, the business data to be approved, and the business scenario; An obtaining module, configured to obtain a target approval node set and a target process edge set according to the identification information of the approval process initiator and the business scenario; A generating module, configured to generate a target directed graph based on the target approval node set and the target process edge set; wherein, the target directed graph contains multiple approval nodes, and adjacent approval nodes are connected by directed edges; An execution module, configured to execute a target approval process by using the target directed graph; wherein, the object of the target approval process is the business data to be approved; The execution module is specifically configured to: Receive an approval operation for the current approval node; Obtain the approval logic of the current approval node from the target database; Determine the approval status of the current approval node according to the approval logic of the current approval node; When it is determined that the approval status of the current approval node is approval passed, determine whether the current approval node is a termination node; When the current approval node is a termination node, end the target approval process; Before determining whether the current approval node is a termination node, further includes: Obtain the control parameter of the current approval node; the control parameter is used to limit the approval process; When the control parameter of the current approval node is not empty, determine the verification order of at least one control parameter; Verify the current approval node in sequence according to the verification order of the at least one control parameter and the verification logic corresponding to each control parameter to obtain a verification result; Determine the flow direction of the current approval node according to the verification result and the configuration information of the at least one control parameter.

8. An approval process determination device, wherein, Comprising a processor and a memory for storing processor-executable instructions, when the processor executes the instructions, the steps of the method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium, characterized in that computer instructions are stored thereon, and when the instructions are executed, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Approval workflow dynamic configuration method and system based on SAP platform

    CN105404952A

  • Process approval method and terminal device

    CN109636320A

  • Business approval process processing method, apparatus and device, and storage medium

    CN112330275A