A data query system and method based on big data in OA system
By establishing a connection relationship between employee and project data in the OA system and filtering associated data based on client identity, the problem of inefficient data query in traditional OA systems is solved, and efficient, secure and intelligent data query and analysis are achieved.
Patent Information
- Application Number
- CN202411554970.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-01
- Publication Date
- 2025-08-22
- Estimated Expiration
- 2044-11-01
AI Technical Summary
Traditional OA systems are inefficient in data query and are prone to errors. There is a lack of effective correlation between employee data and project data. Query results cannot be prioritized according to user needs and cannot provide accurate and intelligent services.
By establishing a connection relationship between employee and project data in the OA system, filtering associated data according to client identity, and calculating priority indexes to sort and display query results, achieving accurate matching and efficient retrieval.
It improves the efficiency and accuracy of data query and analysis, ensures the security and privacy of data, and improves the user experience and system intelligence level.
Smart Images

Figure CN119691787B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data query technology, and in particular to a data query system and method based on big data in an OA system. Background Art
[0002] As enterprises expand and their operations become more complex, office automation (OA) systems play an increasingly important role in their daily management and operations. OA systems not only integrate multiple functional modules, such as employee information management, project management, and attendance management, but also leverage big data technologies to improve the efficiency of data processing and analysis, providing strong support for enterprise decision-making. However, faced with massive and complex data, how to quickly and accurately query and display required information has become a key issue that OA systems urgently need to address.
[0003] Traditional OA systems often rely on manual operations for data query, which is not only inefficient but also prone to errors. At the same time, there is a lack of effective association between employee data and project data in traditional OA systems. In actual applications, when querying employee data or project data, the related projects of an employee or the related employees in a project cannot be displayed well. This will separate the employee data and project data, and it will be impossible to form an effective information chain, making it impossible for users to obtain comprehensive information when querying. In addition, traditional query results are often sorted in the order of storage in the database or in simple alphabetical order. It is impossible to prioritize the results according to the user's actual needs or historical query behavior, making it impossible for the system to provide more accurate and intelligent services. Summary of the Invention
[0004] (1) Technical problems solved
[0005] In response to the technical problems in the background technology, the present invention proposes a data query system and method based on big data in an OA system. For the successfully matched employee and project data, the system filters the related data according to the client identity, and calculates the priority index to sort and display the query results; thereby solving the technical problems recorded in the background technology.
[0006] (2) Technical solution
[0007] To achieve the above objectives, the present invention is implemented through the following technical solutions:
[0008] A data query method based on big data in an OA system, comprising:
[0009] Step 1: Obtain employee total data and project total data from the OA system database, divide the data into several employee sub-data and several project sub-data, and then segment the employee sub-data and project sub-data; establish a connection relationship between employee data and project data;
[0010] Step 2: Obtain the data query request sent by the client, match the query data according to the keyword, and identify the data category of the matching data after a successful match; if the data category matched by the query request is employee data, proceed to step 3; if the data category matched by the query request is project data, proceed to step 4;
[0011] Step 3: Obtain employee sub-data of the matching employee, filter out first related data from the employee sub-data of the matched employee based on the client's identity; obtain project data from the first related data, filter out second related data from the total project data based on the obtained project data; combine the first related data with the second related data and send it to the client;
[0012] Step 4: Obtain project sub-data of the matching project, filter out third related data from the project sub-data of the matching project based on the client's identity; obtain employee data from the third related data, and filter out fourth related data from the total employee data based on the obtained employee data; combine the third related data with the fourth related data and send it to the client;
[0013] Step 5: Before the first and second related data or the third and fourth related data are displayed on the client device, the priority index Pi of each data in the query result is calculated based on the historical query data. i , sort and display the employee data and project data obtained by the query according to the priority index.
[0014] Specifically, all employee data and project data are obtained from the employee database and project database of the OA system, and the obtained employee data and project data are divided into several employee sub-data and project sub-data according to different employees and different projects; each employee sub-data represents a unique employee; each project sub-data represents a unique project;
[0015] Employee sub-data is divided into first employee sub-data and second employee sub-data. The first employee sub-data is the employee's identity data, and the second employee sub-data is the data of each project in which the employee participates, represented by the project name; the project sub-data is divided into first project sub-data, second project sub-data and third project sub-data. The first project sub-data is the general data of the project; the second project sub-data is the employee data included in the project and the task data corresponding to each employee, and the employee data is represented by the employee's name; the third project sub-data is the allocation data and evaluation data of each member's tasks.
[0016] Furthermore, each client in the OA system is matched with the identity of the corresponding user, and the user identities include ordinary employees, project managers, and company managers; based on employee sub-data and project sub-data, an employee and project association model is constructed; identity associations are established between ordinary employees in the OA system, including relationships between colleagues in different groups, relationships between colleagues in the same group, and project managers of the projects they are responsible for, a corresponding relationship between ordinary employees and project managers in each project is established, and a corresponding relationship between company managers and all employees is established; an API data access interface is constructed, and data access is controlled according to the user's identity and authority.
[0017] Specifically, the data query request sent by the client is obtained, and the search keyword in the data query request is used to match the data; for employee sub-data, the matching keyword is the employee's name; for project sub-data, the matching keyword is the project name;
[0018] During the keyword matching process, if the search keyword in the data query request is completely consistent with one of the keywords in the employee sub-data or project sub-data, the corresponding employee sub-data or project sub-data will be regarded as a successful matching result; if the search keyword in the data query request is partially consistent with several keywords in the employee sub-data or project sub-data, that is, all words in the search keyword are continuously included in several keywords in the employee sub-data or project sub-data, then the keyword of the employee sub-data or project sub-data will be sent to the client for further selection or determination by the client; if the search keyword in the data query request is inconsistent with all keywords in the employee sub-data or project sub-data, then a corresponding result information that no query was found will be sent to the client.
[0019] Specifically, when the data category matched by the query request is employee data:
[0020] The identity information of the client is compared with the identity of the employee to be queried. If the client is an ordinary employee and is not a colleague of the queried employee in the same group, the first employee sub-data in the employee sub-data of the queried employee is used as the first associated data; if the client is an ordinary employee and is a colleague of the queried employee in the same group or a project manager, the first employee sub-data in the employee sub-data of the queried employee is combined with the corresponding project name data in the second employee sub-data to obtain the first associated data; if the client is the queried employee himself or a company manager, the first employee sub-data in the employee sub-data of the queried employee is combined with all project name data in the second employee sub-data to obtain the first associated data.
[0021] Furthermore, the project data in the first associated data is obtained. If it does not contain project data, the second associated data is empty; if it contains project data, the second associated data is filtered according to the identity of the client, specifically: if the client is an ordinary employee and is a colleague in the same group or a project manager of the queried employee, the first project sub-data of the corresponding project for which the client is responsible is combined with the second project sub-data to obtain the second associated data; if the client is the queried employee himself or the company manager, the first employee sub-data of all projects for which the queried employee is responsible is combined with all project data in the second employee sub-data to obtain the second associated data.
[0022] Specifically, when the data category matched by the query request is project data:
[0023] The client's identity information is combined with the project to be queried. If the client is an ordinary employee and is not a project member of the queried project, the first project sub-data in the project sub-data of the queried project is used as the third associated data; if the client is an ordinary employee and is a project member of the queried project, the first project sub-data and the second project sub-data in the project sub-data of the queried project are combined to obtain the third associated data; if the client is the project supervisor or company supervisor of the queried project, the first project sub-data, the second project sub-data and the third project sub-data in the project sub-data of the queried project are combined to obtain the third associated data.
[0024] Furthermore, the employee data in the third associated data is obtained. If it does not contain employee data, the fourth associated data is empty; if it contains employee data, the fourth associated data is filtered according to the identity of the client, specifically: if the client is an ordinary employee and is a project member or project manager of the queried project, the first employee sub-data of all members in the queried project is combined with the project name data of the current project in the second employee sub-data to obtain the fourth associated data; if the client is a company manager, the first employee sub-data of all members in the queried project is combined with the project name data of all projects in the second employee sub-data to obtain the fourth associated data.
[0025] Furthermore, for the several project data or employee data in the query result, the query records of the several project data or employee data are obtained from the historical query data of the current client, including the number of queries n, the timestamp T of each query, and the query time. i And the time t that the client stays on the query result interface i , according to the timestamp T of each query i And the time t that the client stays on the query result interface i Calculate the priority index Pi of all project data or employee data in the query results i , the expression is:
[0026]
[0027] Among them, T represents the current timestamp, i represents the i-th project data or employee data; all project data or employee data in the query results are sorted according to the priority index Pi i Sort by priority index Pi i The order from largest to smallest is displayed on the client page.
[0028] A data query system based on big data in an OA system, comprising:
[0029] The data acquisition and preprocessing module obtains the total employee data and total project data from the OA system database, divides the data into several employee sub-data and several project sub-data, further segments the employee sub-data and project sub-data, and establishes a connection relationship between employee data and project data;
[0030] The keyword matching module matches employee sub-data and project sub-data by searching for keywords, with employee name and project name being the key matching criteria. If the keyword and the data are completely or partially consistent, the match is considered successful; otherwise, a message indicating that no results were found is returned.
[0031] The data query module obtains query results after a successful match and is divided into an employee data query unit and a project data query unit. The employee data query unit obtains the matched employee sub-data keywords from the employee waiting queue and filters the first associated data based on the client's identity; filters the second associated data from the project database based on the project data in the first associated data, combines the first associated data with the second associated data, and sends the result to the client; the project data query unit obtains the matched project sub-data keywords from the project waiting queue and filters the third associated data based on the client's identity; filters the fourth associated data from the employee database based on the employee data in the third associated data, combines the third associated data with the fourth associated data, and sends the result to the client;
[0032] The query result display module stores the query results in the search result cache, obtains the query records of employee data and project data in the query results from the historical query data and calculates the priority index respectively, sorts the query results according to the priority index and displays them in the client page in the order of priority.
[0033] (3) Beneficial effects
[0034] The present invention provides a data query system and method based on big data in an OA system, which has the following beneficial effects:
[0035] 1. By meticulously classifying and processing employee and project data in the OA system, a clear association model was constructed, data standardization and cleansing were achieved, and data quality was ensured. At the same time, data access was controlled based on user identity and permissions, which not only improved the efficiency of data query and analysis, but also effectively guaranteed data security and privacy;
[0036] 2. By accurately matching keywords in data query requests sent by clients, efficient retrieval of employee and project data is achieved. By setting up a waiting queue to manage successfully matched keywords, subsequent data processing and analysis are facilitated, effectively improving the accuracy and efficiency of data queries.
[0037] 3. Filter out employee-related data (first related data) or project-related data (third related data) at different levels based on the client's identity, and further obtain project data related to these employees or project-related employee data to filter out project-related data (second related data) or employee-related data (fourth related data). By filtering and combining employees and their associated project data or employee data based on the client's identity and permissions, each client can be guaranteed to access only the data they are authorized to view, effectively protecting data privacy and security. This also improves data practicality and query efficiency, allowing clients to more quickly obtain the information they need.
[0038] 4. By calculating the priority index of each data item, the query results are intelligently sorted; this sorting method takes into account the user's historical query behavior, so that data that the user is more likely to be interested in or more important can be displayed first, thereby improving the user experience and enabling users to find the required information more quickly; at the same time, this personalized data sorting method also reflects the in-depth application of big data processing technology in the OA system, improving the intelligence level of the system. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 A flowchart of the steps of the data query method based on big data in the OA system provided by the present invention;
[0040] Figure 2 This is a structural diagram of the data query system based on big data in the OA system provided by the present invention. DETAILED DESCRIPTION
[0041] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0042] refer to Figure 1 The present invention provides a data query method based on big data in an OA system, comprising:
[0043] Step 1: Obtain employee total data and project total data from the OA system database, divide the data into several employee sub-data and several project sub-data, and then segment the employee sub-data and project sub-data; establish a connection relationship between employee data and project data;
[0044] The step 1 includes the following steps:
[0045] Step 101: Obtain all employee data and project data from the employee database and project database of the OA system, and divide the obtained employee data and project data into several employee sub-data and project sub-data according to different employees and different projects; each employee sub-data represents a unique employee, including the employee's basic information, work history, and projects involved; each project sub-data represents a unique project, including detailed project information, participating employees, and project progress;
[0046] Step 102: Employee sub-data is divided into first employee sub-data and second employee sub-data. The first employee sub-data is the employee's identity data, including basic information, work history, and other basic data. The second employee sub-data is the data of each project in which the employee has participated, represented by the project name. The project sub-data is divided into first project sub-data, second project sub-data, and third project sub-data. The first project sub-data is the project overview data, i.e., the project profile information, providing a basic overview of the project. The second project sub-data is the data of the employees included in the project and the task data corresponding to each employee. The employee data is represented by the employee's name. Project team members can view the task allocation status of all project members, but cannot adjust or allocate tasks. The third project sub-data is the task allocation data and evaluation data of each member. The project manager and company manager can view the task allocation status of all project members and can adjust and reallocate tasks.
[0047] Step 103: Clean the acquired employee data and project data to remove duplicate, incomplete, or erroneous information. Standardize the data to ensure consistency in data format for easy subsequent analysis and processing.
[0048] Step 104: Match each client in the OA system with the corresponding user identity, where the user identities include ordinary employees, project managers, and company managers. A project involves multiple ordinary employees and a project manager. The project manager manages all ordinary employees in a project, and the company manager manages all employees in the entire company.
[0049] Based on employee sub-data and project sub-data, an association model is constructed to clarify the projects each employee participates in, the role in the project, and the specific circumstances of the project; in addition, identity associations are established between ordinary employees in the OA system, including relationships between colleagues in different groups, relationships between colleagues in the same group, and project supervisors of the projects they are responsible for, and a corresponding relationship is established between ordinary employees and project supervisors in each project, and a corresponding relationship is established between company supervisors and all employees; an API data access interface is constructed, and data access is controlled based on the user's identity and permissions.
[0050] When using, combine the contents in steps 101 to 104:
[0051] By meticulously classifying and processing employee and project data in the OA system, a clear association model was constructed, data standardization and cleansing were achieved, and data quality was ensured. At the same time, data access was controlled based on user identity and permissions, which not only improved the efficiency of data query and analysis, but also effectively guaranteed data security and privacy.
[0052] Step 2: Obtain the data query request sent by the client, match the query data according to the keyword, and identify the data category of the matching data after a successful match; if the data category matched by the query request is employee data, proceed to step 3; if the data category matched by the query request is project data, proceed to step 4;
[0053] The second step includes the following steps:
[0054] Step 201: Obtain a data query request sent by the client. The search keyword in the data query request is used to match data. For employee sub-data, the matching keyword is the employee's name. If there are employees with the same name, the specific department of the queried employee is required for further query. For project sub-data, the matching keyword is the project name.
[0055] Step 202: During the keyword matching process, if the search keyword in the data query request is completely consistent with one of the keywords in the employee sub-data or project sub-data, the corresponding employee sub-data or project sub-data is considered a successful match result; if the search keyword in the data query request is partially consistent with several keywords in the employee sub-data or project sub-data, that is, all characters in the search keyword are continuously included in several keywords in the employee sub-data or project sub-data, the keywords of the employee sub-data or project sub-data are sent to the client for further selection or determination by the client; if the search keyword in the data query request is inconsistent with all keywords in the employee sub-data or project sub-data, a message indicating that no corresponding result was found is sent to the client;
[0056] Step 203: For the keywords that are successfully matched, determine the data category that the query request matches. If the data category that the query request matches is employee data, proceed to step three and record the corresponding employee sub-data keyword in the employee waiting queue; if the data category that the query request matches is project data, proceed to step four and record the corresponding project sub-data keyword in the project waiting queue.
[0057] When using, combine the contents in steps 201 to 203:
[0058] By accurately matching the keywords in the data query requests sent by the client, efficient retrieval of employee data and project data is achieved; by setting up a waiting queue to manage successfully matched keywords, it facilitates subsequent data processing and analysis, effectively improving the accuracy and efficiency of data queries.
[0059] Step 3: Obtain employee sub-data of the matching employee, filter out first related data from the employee sub-data of the matched employee based on the client's identity; obtain project data from the first related data, filter out second related data from the total project data based on the obtained project data; combine the first related data with the second related data and send it to the client;
[0060] The step three includes the following steps:
[0061] Step 301: Take out the employee sub-data keyword that matches successfully from the employee waiting queue, and obtain the employee sub-data that matches it from the employee database of the OA system, including the first employee sub-data and the second employee sub-data;
[0062] Step 302: Compare the client's identity information with the employee identity to be queried. If the client is an ordinary employee and is not a colleague of the queried employee in the same group, use the first employee sub-data in the employee sub-data of the queried employee as the first associated data. If the client is an ordinary employee and is a colleague of the queried employee in the same group or a project manager, combine the first employee sub-data in the employee sub-data of the queried employee with the corresponding project name data in the second employee sub-data to obtain the first associated data. If the client is the queried employee himself or a company manager, combine the first employee sub-data in the employee sub-data of the queried employee with all project name data in the second employee sub-data to obtain the first associated data.
[0063] Step 303: Obtain project data from the first associated data. If the first associated data does not contain project data, the second associated data is empty. If the first associated data contains project data, the second associated data is filtered based on the client's identity. Specifically, if the client is an ordinary employee and a colleague of the queried employee or a project manager, the first project sub-data of the corresponding project for which the client is responsible is combined with the second project sub-data to obtain the second associated data. If the client is the queried employee or a company manager, the first employee sub-data of all projects for which the queried employee is responsible is combined with all project data in the second employee sub-data to obtain the second associated data.
[0064] Step 304: Combine the first associated data and the second associated data and send them to the client.
[0065] When using, combine the contents in steps 301 to 304:
[0066] Employee-related data (first related data) of different levels are filtered out based on the client's identity, and project data related to these employees is further obtained to filter out project-related data (second related data). By filtering and combining employee and related project data based on the client's identity and permissions, it can be ensured that each client can only access the data it is authorized to view, thereby effectively protecting the privacy and security of the data. At the same time, it also improves the practicality and query efficiency of the data, allowing the client to obtain the required information more quickly.
[0067] Step 4: Obtain project sub-data of the matching project, filter out third related data from the project sub-data of the matching project based on the client's identity; obtain employee data from the third related data, and filter out fourth related data from the total employee data based on the obtained employee data; combine the third related data with the fourth related data and send it to the client;
[0068] Step 401: Take out the successfully matched project sub-data keyword from the project waiting queue, and obtain the matching project sub-data from the project database of the OA system, including the first project sub-data, the second project sub-data, and the third project sub-data;
[0069] Step 402: The client's identity information is combined with the project to be queried. If the client is an ordinary employee and not a project member of the queried project, the first project sub-data in the project sub-data of the queried project is used as the third associated data. If the client is an ordinary employee and a project member of the queried project, the first project sub-data and the second project sub-data in the project sub-data of the queried project are combined to obtain the third associated data. If the client is a project manager or company manager of the queried project, the first project sub-data, the second project sub-data, and the third project sub-data in the project sub-data of the queried project are combined to obtain the third associated data.
[0070] Step 403: Obtain employee data from the third related data. If the third related data does not contain employee data, the fourth related data is empty. If the third related data contains employee data, the fourth related data is filtered based on the client's identity. Specifically, if the client is an ordinary employee and a project member or project manager of the queried project, the first employee sub-data of all members in the queried project is combined with the project name data of the current project in the second employee sub-data to obtain the fourth related data. If the client is a company manager, the first employee sub-data of all members in the queried project is combined with the project name data of all projects in the second employee sub-data to obtain the fourth related data.
[0071] Step 404: Combine the third associated data and the fourth associated data and send them to the client.
[0072] When using, combine the contents in steps 401 to 404:
[0073] Based on the client's identity, project-related data (third-related data) of different levels are filtered out, and employee data related to these projects is further obtained to filter out employee-related data (fourth-related data). By filtering and combining projects and their associated employee data based on the client's identity and permissions, it can be ensured that each client can only access the data it is authorized to view, thereby effectively protecting the privacy and security of the data. At the same time, it also improves the practicality and query efficiency of the data, allowing clients to obtain the required information more quickly.
[0074] Step 5: Before the first and second related data or the third and fourth related data are displayed on the client device, the priority index Pi of each data in the query result is calculated based on the historical query data. i , sort and display the employee data and project data obtained by the query according to the priority index respectively;
[0075] The step five comprises the following steps:
[0076] Step 501: Store the first and second related data or the third and fourth related data obtained from the query in a search result cache of the client; wherein the first and fourth related data in the query result include a plurality of project data, and the second and third related data include a plurality of employee data;
[0077] Step 502: For the project data or employee data in the query result, obtain the query records of the project data or employee data from the historical query data of the current client, including the number of queries n, the timestamp T of each query, and the query result of the query. i And the time t that the client stays on the query result interface i , according to the timestamp T of each query i And the time t that the client stays on the query result interface i Calculate the priority index Pi of all project data or employee data in the query results i , the expression is:
[0078]
[0079] Where T represents the current timestamp, and i represents the i-th project data or employee data;
[0080] Step 503: sort all the project data or employee data in the query results according to the priority index Pi. i Sort by priority index Pi i The order from largest to smallest is displayed on the client page.
[0081] When using, combine the contents in steps 501 to 503:
[0082] By calculating the priority index of each data item, query results are intelligently sorted. This sorting method takes into account the user's historical query behavior, so that data that is more likely to be of interest to the user or more important is displayed first, thereby improving the user experience and enabling users to find the information they need more quickly.
[0083] At the same time, this personalized data sorting method also reflects the in-depth application of big data processing technology in OA systems, improving the system's intelligence level and user satisfaction.
[0084] refer to Figure 2 The present invention also provides a data query system based on big data in an OA system, comprising:
[0085] The data acquisition and preprocessing module obtains the total employee data and total project data from the OA system database, divides the data into several employee sub-data and several project sub-data, further segments the employee sub-data and project sub-data, and establishes a connection relationship between employee data and project data;
[0086] The keyword matching module matches employee sub-data and project sub-data by searching for keywords, with employee name and project name being the key matching criteria. If the keyword and the data are completely or partially consistent, the match is considered successful; otherwise, a message indicating that no results were found is returned.
[0087] The data query module obtains query results after a successful match and is divided into an employee data query unit and a project data query unit. The employee data query unit obtains the matched employee sub-data keywords from the employee waiting queue and filters the first associated data based on the client's identity; filters the second associated data from the project database based on the project data in the first associated data, combines the first associated data with the second associated data, and sends the result to the client; the project data query unit obtains the matched project sub-data keywords from the project waiting queue and filters the third associated data based on the client's identity; filters the fourth associated data from the employee database based on the employee data in the third associated data, combines the third associated data with the fourth associated data, and sends the result to the client;
[0088] The query result display module stores the query results in the search result cache, obtains the query records of employee data and project data in the query results from the historical query data and calculates the priority index respectively, sorts the query results according to the priority index and displays them in the client page in the order of priority.
[0089] In the above embodiments, all or part of the embodiments may be implemented using software, hardware, firmware, or any combination thereof. When implemented using software, all or part of the embodiments may be implemented in the form of a computer program product. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present invention are generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer storage medium or transmitted via a computer storage medium.
[0090] Computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. Computer storage media can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media. Available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).
[0091] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A data query method based on big data in an OA system, characterized by: include: Step 1: Obtain employee total data and project total data from the OA system database, divide the data into several employee sub-data and several project sub-data, and then segment the employee sub-data and project sub-data; establish a connection relationship between employee data and project data; The employee sub-data is divided into the first employee sub-data and the second employee sub-data; the project sub-data is divided into the first project sub-data, the second project sub-data and the third project sub-data; Step 2: Obtain the data query request sent by the client, match the query data according to the keyword, and identify the data category of the matching data after a successful match; if the data category matched by the query request is employee data, proceed to step 3; if the data category matched by the query request is project data, proceed to step 4; Step 3: Obtain employee sub-data of the matching employee, and filter out the first associated data from the employee sub-data of the matching employee based on the client's identity; Compare the client's identity information with the employee identity to be queried. If the client is an ordinary employee and is not a colleague of the queried employee in the same group, use the first employee sub-data in the employee sub-data of the queried employee as the first associated data. If the client is an ordinary employee and is a colleague of the queried employee in the same group or a project manager, combine the first employee sub-data in the employee sub-data of the queried employee with the corresponding project name data in the second employee sub-data to obtain the first associated data. If the client is the queried employee himself or a company manager, combine the first employee sub-data in the employee sub-data of the queried employee with all project name data in the second employee sub-data to obtain the first associated data. Obtaining project data from the first associated data, filtering out second associated data from the total project data based on the acquired project data; combining the first associated data with the second associated data and sending them to the client; Step 4: Obtain the project sub-data of the matching project, and filter out the third related data from the project sub-data of the matching project based on the client's identity; The client's identity information is combined with the project to be queried. If the client is an ordinary employee and is not a project member of the queried project, the first project sub-data in the project sub-data of the queried project is used as the third associated data. If the client is an ordinary employee and is a project member of the queried project, the first project sub-data and the second project sub-data in the project sub-data of the queried project are combined to obtain the third associated data. If the client is the project manager or company manager of the queried project, the first project sub-data, the second project sub-data, and the third project sub-data in the project sub-data of the queried project are combined to obtain the third associated data. Obtaining employee data from the third related data, filtering out fourth related data from the total employee data based on the obtained employee data; combining the third related data with the fourth related data and sending them to the client; Step 5: Before the first and second related data or the third and fourth related data are displayed on the client device, the priority index Pi of each data in the query result is calculated based on the historical query data. i , sort and display the employee data and project data obtained by the query according to the priority index.
2. The data query method based on big data in an OA system according to claim 1, characterized in that: Obtain all employee data and project data from the employee database and project database of the OA system, and divide the obtained employee data and project data into several employee sub-data and project sub-data according to different employees and different projects; The first employee sub-data is the employee's identity data; the second employee sub-data is the data of each project in which the employee participates, represented by the project name; the first project sub-data is the general data of the project; the second project sub-data is the employee data included in the project and the task data corresponding to each employee, and the employee data is represented by the employee's name; the third project sub-data is the allocation data and evaluation data of each member's tasks.
3. The data query method based on big data in an OA system according to claim 2, characterized in that: Match each client in the OA system with the identity of the corresponding user, including ordinary employees, project managers, and company managers; build an employee-project association model based on employee sub-data and project sub-data; establish identity associations between ordinary employees in the OA system, including relationships between colleagues in different groups, relationships between colleagues in the same group, and project managers of the projects they are responsible for, establish a corresponding relationship between ordinary employees and project managers in each project, and establish a corresponding relationship between company managers and all employees; build an API data access interface, and control data access based on the user's identity and permissions.
4. The data query method based on big data in an OA system according to claim 3, characterized in that: Get the data query request sent by the client. The search keyword in the data query request is used to match the data. For employee sub-data, the matching keyword is the employee's name; for project sub-data, the matching keyword is the project name. During the keyword matching process, if the search keyword in the data query request is completely consistent with one of the keywords in the employee sub-data or project sub-data, the corresponding employee sub-data or project sub-data will be regarded as a successful matching result; if the search keyword in the data query request is partially consistent with several keywords in the employee sub-data or project sub-data, that is, all words in the search keyword are continuously included in several keywords in the employee sub-data or project sub-data, then the keyword of the employee sub-data or project sub-data will be sent to the client for further selection or determination by the client; if the search keyword in the data query request is inconsistent with all keywords in the employee sub-data or project sub-data, then a corresponding result information that no query was found will be sent to the client.
5. The data query method based on big data in an OA system according to claim 1, characterized in that: The project data in the first associated data is obtained. If it does not contain project data, the second associated data is empty; if it contains project data, the second associated data is filtered according to the identity of the client. Specifically, if the client is an ordinary employee and is a colleague of the queried employee or a project manager, the first project sub-data of the corresponding project in charge is combined with the second project sub-data to obtain the second associated data; if the client is the queried employee himself or a company manager, the first employee sub-data of all projects in charge of the queried employee is combined with all project data in the second employee sub-data to obtain the second associated data.
6. The data query method based on big data in an OA system according to claim 1, characterized in that: The employee data in the third associated data is obtained. If it does not contain employee data, the fourth associated data is empty; if it contains employee data, the fourth associated data is filtered according to the identity of the client. Specifically, if the client is an ordinary employee and a project member or project manager of the queried project, the first employee sub-data of all members in the queried project is combined with the project name data of the current project in the second employee sub-data to obtain the fourth associated data; if the client is a company manager, the first employee sub-data of all members in the queried project is combined with the project name data of all projects in the second employee sub-data to obtain the fourth associated data.
7. The data query method based on big data in an OA system according to claim 1, characterized in that: For several project data or employee data in the query results, obtain the query records of the several project data or employee data from the historical query data of the current client, including the number of queries n, the timestamp T of each query i And the time t that the client stays on the query result interface i , according to the timestamp T of each query i And the time t that the client stays on the query result interface i Calculate the priority index Pi of all project data or employee data in the query results i , the expression is: Among them, T represents the current timestamp, i represents the i-th project data or employee data; all project data or employee data in the query results are sorted according to the priority index Pi i Sort by priority index Pi i The order from largest to smallest is displayed on the client page.
8. A data query system based on big data in an OA system, used to implement the method according to any one of claims 1 to 7, characterized in that: include: The data acquisition and preprocessing module obtains the total employee data and total project data from the OA system database, divides the data into several employee sub-data and several project sub-data, further segments the employee sub-data and project sub-data, and establishes a connection relationship between employee data and project data; The keyword matching module matches employee sub-data and project sub-data by searching for keywords, with employee name and project name being the key matching criteria. If the keyword and the data are completely or partially consistent, the match is considered successful; otherwise, a message indicating that no results were found is returned. The data query module obtains query results after a successful match and is divided into an employee data query unit and a project data query unit. The employee data query unit obtains the matched employee sub-data keywords from the employee waiting queue and filters the first associated data based on the client's identity; filters the second associated data from the project database based on the project data in the first associated data, combines the first associated data with the second associated data, and sends the result to the client; the project data query unit obtains the matched project sub-data keywords from the project waiting queue and filters the third associated data based on the client's identity; filters the fourth associated data from the employee database based on the employee data in the third associated data, combines the third associated data with the fourth associated data, and sends the result to the client; The query result display module stores the query results in the search result cache, obtains the query records of employee data and project data in the query results from the historical query data and calculates the priority index respectively, sorts the query results according to the priority index and displays them in the client page in the order of priority.
Citation Information
Patent Citations
Engineering project management system and method
CN111859110A