A method and apparatus for push application software OA approval
By generating business models and dynamically transforming data, and utilizing Java generics and reflection technology, the problem of repetitive custom development of the DingTalk OA approval module was solved, achieving efficient OA approval push and unified code standards.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANGHAI ZHONGTONGJI NETWORK TECH CO LTD
- Filing Date
- 2023-02-28
- Publication Date
- 2026-05-26
AI Technical Summary
The existing DingTalk OA approval module requires repeated custom development, resulting in low development efficiency and difficult code maintenance, especially when facing multiple business needs, which leads to a large workload.
By acquiring pending business data to generate a business model, and using Java generics and reflection technology to obtain dynamic configuration relationships, dynamic data transformation and push to OA approval are achieved, avoiding redundant custom development.
It improved development efficiency, reduced code maintenance work, simplified the integration process, and achieved unified code standards and efficient OA approval push.
Smart Images

Figure CN116091005B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of OA approval technology, and specifically to a method and apparatus for OA approval via push application software. Background Technology
[0002] With the rapid development of various companies' businesses, there are constantly new business needs to connect with the OA approval of various application software. Taking DingTalk OA approval as an example, DingTalk OA adopts component-based configuration. You only need to design the approval template required by the business side in the DingTalk OA approval designer, and DingTalk can wait to receive data to fill the corresponding approval template.
[0003] The above approach has the following problems: 1. Because DingTalk's OA approval module uses a component-based configuration, business users need to first set up approval templates in the DingTalk OA designer, and then developers need to customize and integrate these templates. This repeated customization is necessary for integrating different business data with DingTalk OA approval. 2. Mapping different DingTalk OA approval templates not only leads to low development efficiency but also makes the code difficult to maintain and lacks a unified standard. 3. Due to inconsistent code standards, integrating new OA templates often results in code issues in addition to field mapping problems.
[0004] Therefore, the existing method of connecting the approval process with application software requires developers to do a lot of development work when there is a lot of business, and the repetitive customization development results in low development efficiency. Summary of the Invention
[0005] In view of this, the purpose of the present invention is to provide a method and apparatus for pushing application software OA approval, so as to solve the problem that the existing method of connecting the approval process with the application software requires R&D personnel to do a lot of development work and repetitive customization development when there are many business, resulting in low development efficiency.
[0006] According to a first aspect of the present invention, a method for pushing application software OA approval is provided, comprising:
[0007] Obtain business data pending approval and generate business models based on the business data;
[0008] Obtain the dynamic configuration relationship between application software and business data;
[0009] Data is transformed based on the dynamic configuration relationship and the business model to generate the OA approval corresponding to the application software.
[0010] The OA approval is pushed to the corresponding application software.
[0011] Preferably, the step of generating a business model based on business data includes:
[0012] Use Java generics to model business data and generate business models;
[0013] The Java generics mentioned include: abstracting and generalizing different types of business data, and standardizing the processing of standardized programs.
[0014] Preferably, the acquisition of the dynamic configuration relationship between application software and business data includes:
[0015] Retrieve the corresponding OA approval template configuration from the application software;
[0016] Extract the common features of the OA approval templates, model and encapsulate the OA approval components of the application software, and obtain the dynamic configuration relationship.
[0017] Preferably, the data transformation based on the dynamic configuration relationship and the business model includes:
[0018] The business model is dynamically assembled using Java reflection to generate the corresponding OA approval function for the application software.
[0019] The JAVA reflection includes: retrieving values from the business model data using reflection, and then dynamically setting the OA approval data corresponding to the application software according to the dynamic configuration relationship.
[0020] Preferably, pushing the OA approval to the corresponding application software includes:
[0021] Send HTTPS requests to the OA application software using the preset sending method;
[0022] Using the JAVA proxy pattern, we can achieve unified push notifications for OA approvals in the application software.
[0023] Preferably, the step of pushing the OA approval to the corresponding application software further includes:
[0024] Obtain the authorization information of the application software and cache the authorization information;
[0025] Based on the authorization information, the OA approval is pushed to the application software.
[0026] Preferably, after pushing the OA approval to the corresponding application software, the method further includes:
[0027] Send a fee request instruction to the application software and receive a detailed breakdown of the authorization fees;
[0028] The data pushed by the OA approval and the details of the authorization fee are sent to the application software to import the application form.
[0029] According to a second aspect of the present invention, an apparatus for pushing application software OA approval is provided, comprising:
[0030] The data acquisition module is used to acquire business data to be approved and to obtain the dynamic configuration relationship between application software and business data.
[0031] The data modeling module is used to generate business models based on business data.
[0032] The OA approval generation module is used to perform data transformation based on the dynamic configuration relationship and the business model to generate OA approvals corresponding to the application software.
[0033] The push module is used to push the OA approval to the corresponding application software.
[0034] The technical solutions provided by the embodiments of the present invention may include the following beneficial effects:
[0035] It is understood that this invention can acquire business data to be approved and generate a business model based on the business data; acquire the dynamic configuration relationship between application software and business data; perform data transformation based on the dynamic configuration relationship and the business model to generate the OA approval corresponding to the application software; and push the OA approval to the corresponding application software. It is understood that this invention can obtain the dynamic configuration relationship based on the application software, and then dynamically transform the business data. In actual business approval integration, only the business data of the OA approval template needs to be provided, and then the OA approval can be pushed through the business data and the dynamic configuration relationship, avoiding repeated custom development and improving work efficiency.
[0036] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit the invention. Attached Figure Description
[0037] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0038] Figure 1 This is a schematic diagram illustrating the steps of a method for pushing application software OA approval according to an exemplary embodiment;
[0039] Figure 2 This is a flowchart illustrating a method for push application software OA approval according to an exemplary embodiment;
[0040] Figure 3This is a schematic block diagram illustrating an apparatus for push application software OA approval according to an exemplary embodiment. Detailed Implementation
[0041] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.
[0042] Example 1
[0043] Figure 1 This is a schematic diagram illustrating the steps of a method for push application software OA approval according to an exemplary embodiment. See also... Figure 1 This provides a method for pushing application software OA approvals, including:
[0044] Step S11: Obtain the business data to be approved and generate a business model based on the business data;
[0045] Step S12: Obtain the dynamic configuration relationship between application software and business data;
[0046] Step S13: Perform data transformation based on the dynamic configuration relationship and the business model to generate the OA approval corresponding to the application software;
[0047] Step S14: Push the OA approval to the corresponding application software.
[0048] It is understood that the technical solution provided in this embodiment can acquire business data to be approved and generate a business model based on the business data; acquire the dynamic configuration relationship between the application software and the business data; perform data transformation based on the dynamic configuration relationship and the business model to generate the OA approval corresponding to the application software; and push the OA approval to the corresponding application software. It is understood that the technical solution provided in this embodiment can obtain the dynamic configuration relationship based on the application software, and then dynamically transform the business data. In the actual business approval process, only the business data of the OA approval template needs to be provided, and then the OA approval can be pushed through the business data and the dynamic configuration relationship, avoiding repeated custom development and improving work efficiency.
[0049] In practical application, see Figure 2 , Figure 2This is a flowchart illustrating a method for pushing OA approvals to application software according to an exemplary embodiment. Assuming the technical solution output by this embodiment is implemented in the form of a client, firstly, the user can push specific business data to the client. The data conversion engine in the client can generate a business model based on the acquired business data. Then, it obtains the design approval template from the application software. Subsequently, the data conversion engine obtains the dynamic configuration relationship between the application software and the business data based on the design approval template. The data conversion engine converts the business data into the OA approval corresponding to the application software, and finally pushes the OA approval to the corresponding application software.
[0050] It should be noted that the process of generating a business model based on business data includes:
[0051] Use Java generics to model business data and generate business models;
[0052] The Java generics mentioned include: abstracting and generalizing different types of business data, and standardizing the processing of standardized programs.
[0053] In practice, Java generics refer to the abstraction and generalization of different types of business beans, standardizing program processing. This embodiment uses Java generics to model business data and generate a business model, which can standardize program processing and unify code standards.
[0054] It should be noted that the acquisition of the dynamic configuration relationship between application software and business data includes:
[0055] Retrieve the corresponding OA approval template configuration from the application software;
[0056] Extract the common features of the OA approval templates, model and encapsulate the OA approval components of the application software, and obtain the dynamic configuration relationship.
[0057] In practical application, assuming the application software is DingTalk OA approval, DingTalk OA approval includes 21 components. Based on the common characteristics of the corresponding OA approval template configurations, these 21 components can be modeled and encapsulated to obtain the dynamic configuration relationships. It can be understood that the characteristics of DingTalk OA components are dynamically configured. In actual business approval integration, it is only necessary to provide the corresponding hierarchy, type, and relationship between the fields of the OA approval template and the business fields of this system. Then, by configuring these relationships within this system, the push notification and update of approval results for DingTalk OA approvals can be achieved.
[0058] It should be noted that the data transformation based on the dynamic configuration relationship and the business model includes:
[0059] The business model is dynamically assembled using Java reflection to generate the corresponding OA approval function for the application software.
[0060] The JAVA reflection includes: retrieving values from the business model data using reflection, and then dynamically setting the OA approval data corresponding to the application software according to the dynamic configuration relationship.
[0061] In practice, a data transformation engine can be used to transform data, and by utilizing dynamic configuration relationships and the aforementioned business model, the corresponding OA approval functions for the application software can be generated. It can adapt to 21 DingTalk components based on documents, components, fields, and types; and dynamically assemble OA authorization information, application fee import, and application form import using JAVA reflection.
[0062] It should be noted that the step of pushing the OA approval to the corresponding application software includes:
[0063] Send HTTPS requests to the OA application software using the preset sending method;
[0064] Using the JAVA proxy pattern, we can achieve unified push notifications for OA approvals in the application software.
[0065] In practice, assuming the application software is DingTalk OA approval, the Tians http module can be used to send HTTPS requests to DingTalk OA, and finally, the JAVA proxy mode can be used to achieve unified push of DingTalk OA approvals.
[0066] It should be noted that the step of pushing the OA approval to the corresponding application software also includes:
[0067] Obtain the authorization information of the application software and cache the authorization information;
[0068] Based on the authorization information, the OA approval is pushed to the application software.
[0069] In practice, authorization information is cached to avoid duplicate requests during the OA (Office Automation) push process.
[0070] It should be noted that after pushing the OA approval to the corresponding application software, the process also includes:
[0071] Send a fee request instruction to the application software and receive a detailed breakdown of the authorization fees;
[0072] The data pushed by the OA approval and the details of the authorization fee are sent to the application software to import the application form.
[0073] In practice, assuming the application software is DingTalk OA approval, a corresponding fee will be charged. Therefore, a fee application instruction can be automatically sent to DingTalk OA approval. The authorization fee details can be received from DingTalk OA approval. Then, the data pushed by OA approval and the authorization fee details are combined and sent to the corresponding DingTalk OA approval to realize the import of the application form.
[0074] This invention avoids the dilemma of repetitive and customized development for pushing DingTalk OA approvals to different businesses. In the process of continuous integration, the code becomes more robust, richer and easier to use. Based on dynamic configuration, the focus is changed from the original code implementation to the mapping between the two systems. Integration can be completed without technical development if no new components are added to the application software (such as DingTalk).
[0075] Example 2
[0076] Figure 3 This is a schematic block diagram illustrating an apparatus for push application software OA approval according to an exemplary embodiment. See also: Figure 3 A device for pushing application software OA approval is provided, comprising:
[0077] The data acquisition module 101 is used to acquire business data to be approved and to acquire the dynamic configuration relationship between the application software and the business data.
[0078] Data modeling module 102 is used to generate business models based on business data;
[0079] The OA approval generation module 103 is used to perform data conversion based on the dynamic configuration relationship and the business model to generate OA approvals corresponding to the application software.
[0080] The push module 104 is used to push the OA approval to the corresponding application software.
[0081] It is understood that the technical solution provided in this embodiment can acquire business data to be approved through the data acquisition module 101 and generate a business model based on the business data; acquire the dynamic configuration relationship between the application software and the business data through the data modeling module 102; convert the data according to the dynamic configuration relationship and the business model through the OA approval generation module 103 to generate the OA approval corresponding to the application software; and push the OA approval to the corresponding application software through the push module 104. It is understood that this embodiment can obtain the dynamic configuration relationship based on the application software, and then dynamically convert the business data. In the actual business approval process, only the business data of the OA approval template needs to be provided, and the OA approval can be pushed through the business data and the dynamic configuration relationship, avoiding repeated customized development and improving work efficiency.
[0082] It is understood that the same or similar parts in the above embodiments can be referred to each other, and the contents not described in detail in some embodiments can be referred to the same or similar contents in other embodiments.
[0083] It should be noted that in the description of this invention, the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Furthermore, in the description of this invention, unless otherwise stated, "a plurality of" means at least two.
[0084] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of the invention pertain.
[0085] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0086] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0087] Furthermore, the functional units in the various embodiments of the present invention can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0088] The storage media mentioned above can be read-only memory, disk, or optical disk, etc.
[0089] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0090] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A method for pushing approval requests to OA (Office Automation) application software, characterized in that, include: Acquiring business data to be approved and generating business models based on the business data includes: using JAVA generics to model the business data and generate business models; the JAVA generics include: abstracting and generalizing different types of business data, and standardizing the processing of standardized procedures; Obtaining the dynamic configuration relationship between application software and business data includes: obtaining the corresponding OA approval template configuration in the application software; extracting the common features of the OA approval templates, modeling and encapsulating the OA approval component of the application software, and obtaining the dynamic configuration relationship; Based on the dynamic configuration relationship and the business model, data transformation is performed to generate the OA approval corresponding to the application software, including: dynamically assembling the business model using JAVA reflection to generate the OA approval corresponding to the application software; the JAVA reflection includes: retrieving values from the business model data using reflection, and then dynamically setting the OA approval data corresponding to the application software according to the dynamic configuration relationship; The OA approval is pushed to the corresponding application software.
2. The method according to claim 1, characterized in that, The step of pushing the OA approval to the corresponding application software includes: Send HTTPS requests to the OA application software using the preset sending method; Using the JAVA proxy pattern, we can achieve unified push notifications for OA approvals in the application software.
3. The method according to claim 1, characterized in that, The step of pushing the OA approval to the corresponding application software also includes: Obtain the authorization information of the application software and cache the authorization information; Based on the authorization information, the OA approval is pushed to the application software.
4. The method according to claim 1, characterized in that, After pushing the OA approval to the corresponding application software, the process also includes: Send a fee request instruction to the application software and receive a detailed breakdown of the authorization fees; The data pushed by the OA approval and the details of the authorization fee are sent to the application software to import the application form.
5. A device for pushing application software OA approval, characterized in that, include: The data acquisition module is used to acquire business data to be approved and to acquire the dynamic configuration relationship between the application software and the business data, including: acquiring the corresponding OA approval template configuration in the application software; extracting the common features of the OA approval templates, modeling and encapsulating the OA approval components of the application software, and obtaining the dynamic configuration relationship; The data modeling module is used to generate business models based on business data, including: using JAVA generics to model business data and generate business models; the JAVA generics include: abstracting and generalizing different types of business data, and standardizing the processing of standardized programs; The OA approval generation module is used to perform data transformation based on the dynamic configuration relationship and the business model to generate OA approvals corresponding to the application software. This includes: dynamically assembling the business model using JAVA reflection to generate OA approvals corresponding to the application software; the JAVA reflection includes: retrieving values from the business model data using reflection, and then dynamically setting the OA approval data corresponding to the application software based on the dynamic configuration relationship. The push module is used to push the OA approval to the corresponding application software.