Invoice management method, system and device and storage medium
By configuring invoice duplication checking and reuse scope, setting up information tables and performing asynchronous processing, the problem of cross-cluster access and data sharing in invoice management between different platforms is solved, the efficiency and accuracy of invoice management are improved, the process is optimized and resource waste is reduced.
Patent Information
- Application Number
- CN202510906357.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-01
- Publication Date
- 2025-10-21
AI Technical Summary
Invoice management systems on different platforms are difficult to access and share data across clusters, resulting in high system performance and resource consumption.
Configure invoice duplicate checking and reuse scope, set invoice basic information and ownership information table, query invoices by duplicate checking and reuse scope, perform validation, occupation or release operations, and use asynchronous processing and hot data tables to optimize invoice management.
It improves the efficiency and accuracy of invoice processing, avoids duplicate entry and waste of resources, optimizes management processes, and ensures the authenticity and integrity of financial data.
Smart Images

Figure CN120823012A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of invoice management, and in particular to an invoice management method, system, device and storage medium. Background Art
[0002] In existing invoice management methods, different platforms have different maintenance systems, which makes it difficult for clusters between platforms to communicate, files cannot be accessed across clusters, and data between platforms is difficult to share.
[0003] In this way, the invoices of each cluster need to be synchronized between platforms, which results in high system performance and resource consumption. Summary of the Invention
[0004] To address the above issues, this application provides an invoice management method, including the following:
[0005] In a first aspect, the present application provides an invoice management method, the method comprising:
[0006] Configure the invoice duplicate checking range and invoice reuse range of the target invoice;
[0007] Set up an invoice basic information table to record the basic information of all invoices; an invoice basic information hotspot data table to record only hotspot data based on invoice status; an invoice ownership information table to record the ownership information of all invoices; and an invoice ownership information hotspot data table to record the invoice ownership information corresponding to the invoice basic information hotspot data table.
[0008] Performing a duplicate check on the target invoice to be checked based on the configured invoice duplicate checking range;
[0009] Search for reusable invoices based on the configured invoice reuse range;
[0010] For the non-duplicate invoices in the duplicate check results and the reusable invoices found, perform invoice validation, occupation or release operations.
[0011] Optionally, the performing duplicate checking on the target invoice to be checked based on the configured invoice duplicate checking range includes:
[0012] Checking whether the target invoice exists in the invoice basic information table based on the invoice number and invoice code, and determining that the target invoice is not a duplicate if it does not exist;
[0013] If it exists, all the ownership information of the target invoice is further obtained from the invoice ownership information table, and the corresponding duplicate check configuration range is queried from the invoice dimension configuration table in combination with the dimension of the current invoice, and the ownership information of the invoice is compared with all the duplicate check ranges. If the same items exist, the invoice is determined to be a duplicate.
[0014] Optionally, searching for reusable invoices based on a configured invoice reuse range includes:
[0015] Based on the configured invoice reuse range, the invoice dimension configuration table is queried to filter out the reuse range that meets the business rules, and based on the reuse range that meets the business rules, the reusable invoices are queried in the invoice basic information hotspot data table and the invoice attribution information hotspot data table.
[0016] Optionally, for the non-duplicate invoices and reusable invoices found in the duplicate check results, the invoice validation operations include:
[0017] For invoices with invoice middleware ID, reuse processing is performed to check whether their ownership information already exists in the database. If not, the corresponding ownership information is added;
[0018] For invoices that do not have an invoice middle platform ID, a duplicate check is first performed. If it is a duplicate invoice, the reuse process is performed. If it is not a duplicate invoice, the basic invoice information and ownership information are added to the database;
[0019] Maintain the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table, and asynchronously process invoice verification information and dictionary information maintenance related to newly effective invoices.
[0020] Optionally, for the non-duplicate invoices in the duplicate check results and the found reusable invoices, the invoice occupation operations include:
[0021] Select the invoice set with a financing balance greater than the preset balance value;
[0022] Lock the collection based on invoice element information to prevent concurrent operations;
[0023] Calculate the used amount, remaining amount and status information of the invoice, maintain the invoice basic information hotspot data table, the invoice attribution information hotspot data table and the invoice occupancy record table information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0024] Optionally, for non-duplicate invoices and reusable invoices found in the duplicate check results, the invoice release operation includes:
[0025] Query the invoice corresponding to the invoice release operation based on the invoice occupation record information;
[0026] Lock the collection based on invoice element information to prevent concurrent operations;
[0027] Combine the data of the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table to calculate the used amount, remaining amount and status information of the invoice, maintain the data of the invoice basic information hot data table and the invoice attribution information hot data table and delete the corresponding occupancy information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0028] In a second aspect, the present application provides an invoice management system, the system comprising:
[0029] The invoice details viewing page is used to view the basic information, ownership information, occupancy information, and verification information of the effective invoice;
[0030] The rule configuration module is used to customize the invoice duplicate checking range and invoice reuse range;
[0031] The invoice duplication check module is used to automatically check submitted invoices for duplicates based on business information dimensions and pre-configured duplication check ranges;
[0032] The invoice reuse module is used to query and select reusable invoices based on business information dimensions and pre-configured reuse scopes;
[0033] The invoice validation module is used to validate unvalidated invoices associated with the business data package upon completion of document review.
[0034] The invoice occupation or release module is used to occupy or release invoices that have passed the review and to keep records of invoice occupation.
[0035] Optionally, the invoice details viewing page also includes:
[0036] Invoice basic information table, used to record the basic face value information of the invoice;
[0037] Invoice attribution information table, used to record invoice attribution information, including platform, tenant, product, business scenario, financial institution, and transaction parties;
[0038] Invoice occupancy record table, used to record invoice occupancy information;
[0039] The invoice inspection record form is used to record the inspection history of invoices.
[0040] Optionally, the invoice reuse module is specifically used to query the invoice dimension configuration table based on the configured invoice reuse range to filter out the reuse range that complies with business rules, and query reusable invoices in the invoice basic information hotspot data table and the invoice attribution information hotspot data table based on the reuse range that complies with business rules.
[0041] Optionally, the invoice validation module is specifically used to:
[0042] For invoices with invoice middleware ID, reuse processing is performed to check whether their ownership information already exists in the database. If not, the corresponding ownership information is added;
[0043] For invoices that do not have an invoice middle platform ID, a duplicate check is first performed. If it is a duplicate invoice, the reuse process is performed. If it is not a duplicate invoice, the basic invoice information and ownership information are added to the database;
[0044] Maintain the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table, and asynchronously process invoice verification information and dictionary information maintenance related to newly effective invoices.
[0045] Optionally, the invoice occupation or release module is specifically used to:
[0046] Select the invoice set with a financing balance greater than the preset balance value;
[0047] Lock the collection based on invoice element information to prevent concurrent operations;
[0048] Calculate the used amount, remaining amount and status information of the invoice, maintain the invoice basic information hotspot data table, the invoice attribution information hotspot data table and the invoice occupancy record table information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0049] Optionally, the invoice occupation or release module is specifically used to:
[0050] Query the invoice corresponding to the invoice release operation based on the invoice occupation record information;
[0051] Lock the collection based on invoice element information to prevent concurrent operations;
[0052] Combine the data of the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table to calculate the used amount, remaining amount and status information of the invoice, maintain the data of the invoice basic information hot data table and the invoice attribution information hot data table and delete the corresponding occupancy information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0053] In a third aspect, the present application provides a device comprising a memory and a processor, wherein the memory is used to store instructions or codes, and the processor is used to execute the instructions or codes so that the device executes the invoice management method introduced in any implementation of the first aspect.
[0054] In a fourth aspect, the present application provides a computer-readable storage medium storing a code. When the code is executed, the device executing the code implements the invoice management method described in any implementation of the first aspect.
[0055] The present application provides an invoice management method. When executing the method, first configure the invoice duplicate check range and invoice reuse range of the target invoice, then set the invoice basic information table for recording the basic information of the full amount of invoices, the invoice basic information hotspot data table for recording only the hotspot data according to the invoice status, the invoice attribution information table for recording the attribution information of the full amount of invoices, the invoice attribution information hotspot data table for recording the invoice attribution information corresponding to the invoice basic information hotspot data table, then based on the configured invoice duplicate check range, the target invoice to be checked for duplicates is checked for duplicates, and then based on the configured invoice reuse range, reusable invoices are searched for, and finally, the invoice validation, occupation or release operations are performed on the non-duplicate invoices in the duplicate check results and the reusable invoices found. Through this method, the efficiency and accuracy of invoice processing can be significantly improved. By accurately configuring the invoice duplicate check and reuse range, the repeated entry of invoices and the waste of resources are effectively avoided. At the same time, by setting up a comprehensive invoice information table and hotspot data table, the rapid retrieval and management of invoice information are achieved. This series of measures not only optimizes the invoice management process, but also reduces human errors, ensures the authenticity and integrity of financial data, and brings higher operational benefits to the enterprise. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] In order to more clearly illustrate the technical solutions in this embodiment or the prior art, the following briefly introduces the drawings required for use in the embodiment or the prior art description. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0057] Figure 1 A flowchart of an invoice management method provided in an embodiment of the present application;
[0058] Figure 2 A schematic diagram of the structure of an invoice management system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0059] In order to make the purpose, technical solutions and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0060] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions.
[0061] Figure 1 A flowchart of an invoice management method provided in an embodiment of the present application. Figure 1 As shown, the invoice management method provided in the embodiment of the present application may include:
[0062] S101. Configure the invoice duplicate checking range and invoice reuse range of the target invoice.
[0063] On the invoice detail view page, configure the invoice duplicate check range and invoice reuse range for the target invoice. The detail view page is used to view the basic information, ownership information, occupancy information, verification information, etc. of the valid invoice, as well as configure the invoice duplicate check range and invoice reuse range for the target invoice. The invoice view page includes various field elements, and users can configure the relevant content by entering query items. The field elements are shown in the following table. Table 1 is a field element table of an invoice detail view page provided in an embodiment of the present application.
[0064] Table 1: Field elements of the invoice details viewing page
[0065]
[0066]
[0067]
[0068] In the invoice detail viewing page, for inquiries about the above-mentioned buyers and sellers, business suppliers, and counterparties, the invoice middle platform needs to store the company name by itself when the invoice is pushed to the middle platform after it takes effect, and provide an interface for the front-end to use for inquiries; if the fuzzy query cannot lock the company, the input field is also supported for fuzzy query. In addition, the page turning function in the invoice detail viewing page does not display the specific total number of pages, only the previous and next pages; the total number of queries is not displayed by default, and a [Total Query] button is provided. Clicking the button triggers the total number of query items for this query condition. After re-querying, the total number needs to be cleared, and the user needs to click the button again to trigger it. For the invoice records in the list, click the [View] button in the operation column to open the invoice details window, browse the invoice file, inspection screenshots, ownership information, occupancy records, and inspection records. The page field elements are as follows:
[0069] Table 2: Invoice Details View List Invoice Details Window Field Description
[0070]
[0071]
[0072] The following describes the process of viewing, adding, editing, and deleting the duplicate checking / reuse range configuration function.
[0073] When configuring and querying the scope of invoice duplicate checking and invoice reuse, in the invoice duplicate checking and reuse link, the business side will pass the current dimension of the invoice to the invoice middle platform. The middle platform matches the configuration item through the dimension, and filters out the invoice list as the scope of duplicate checking and reuse through the configured scope. Specifically, users who have an account on the [Operation Center Service Platform] and have the permission to view the view / reuse scope configuration page, such as initial reviewers, reviewers, and audit supervisors, log in to the [Operation Center Service Platform], select the [Duplicate Check / Reuse Scope Configuration] menu in the left menu of the invoice detail viewing page, and enter the configuration page. At this time, the page initializes and loads all the configuration data, arranged in reverse order by update date, and displays the corresponding fields on the page. The list displays the fields as shown in Table 3 below:
[0074] Table 3: List field display table
[0075]
[0076] Display the query configuration information in response to the query information. Prompt for abnormal situations such as network anomalies and query failures.
[0077] To add or edit duplicate checking / reuse range configurations, users with an Operations Center Service Platform account and permission to view / edit the reuse range configuration page, such as an audit supervisor, can log in to the Operations Center Service Platform and select Duplicate Check / Reuse Range Configuration from the left menu to access the configuration page. Click Add to open the Duplicate Check / Reuse Range Configuration page. The fields on the page are as shown in the table below. The data range is configured as a list, and a single row is displayed by default when the page loads.
[0078] Table 4: Add and edit fields on the duplicate check / reuse range configuration page
[0079]
[0080] The specific operation process is as follows:
[0081] 1. In the configuration window, click [Save] and proceed as follows:
[0082] First, perform mandatory verification. The data range configuration list must be entered in one row. If the list is larger than one row and a row is completely empty, there is no need to perform mandatory verification on that row when saving, and there is no need to save the empty row. Perform range configuration duplication verification. The rules are as follows:
[0083] If two lines of configuration are the same, a prompt will appear: "The configuration items in lines X, Y, and Z are repeated. Please check and modify them."
[0084] If two rows have different product options but the other items are the same, but the products are included in each other, the message "Product configurations in rows X and Y are duplicated. Please check and modify." will appear.
[0085] For example:
[0086] Configure row 1: Rongtong-Rongxin, Mingonghui;
[0087] Configure the second line: Rongtong-Rongxin and Account Financing. These two lines have a common product [Rongxin], so they will be reported as duplicates.
[0088] If the required fields are verified, dimension verification is performed to determine whether the database contains data for the current dimension. If so, a pop-up window will appear: "A configuration for this dimension already exists. Please do not add it again." Click [OK], the pop-up window will disappear, and the user can modify the current configuration and click [Save] again. If all verifications are passed, the data is saved successfully, a pop-up window will appear, the configuration window will close, and the user will return to the list page.
[0089] 2. In the configuration window, click [Cancel] to close the configuration window without saving data and return to the list page;
[0090] 3. On the list page, click the [Edit] button in the operation column of a data item to open the configuration window, where the current configuration content is displayed and the user can modify it.
[0091] After completing the editing or viewing, the database will add or update the corresponding data, and prompts will be given for abnormal situations such as network anomalies and save failures.
[0092] For the process of deleting the duplicate checking / reuse range configuration, users who have an [Operation Center Service Platform] account and have the editing permission to view the / reuse range configuration page, such as the audit supervisor, log in to the [Operation Center Service Platform], select the [Duplicate Check / Reuse Range Configuration] menu on the left menu, and enter the configuration page; on the list page, click the [Delete] button in the operation column of a certain data, and a pop-up window will prompt: "Deleting the configuration item will cause the duplicate checking / reuse data range to change. Do you still want to delete it?" Click [Cancel], the pop-up window will disappear, and the deletion operation will not be performed; click [Delete] to perform the deletion operation, the pop-up window will disappear, and a floating prompt will be displayed indicating that the deletion is successful, and you will return to the list page.
[0093] After the deletion is completed, the database will perform logical deletion of the corresponding data, and prompts will be given for abnormalities such as network abnormalities and deletion failures.
[0094] S102. Set an invoice basic information table, an invoice basic information hot data table, an invoice attribution information table, and an invoice attribution information hot data table.
[0095] The invoice basic information table, also known as the basic information table, is used to record the basic information of all invoices, including the basic face information of the invoice: invoice number, invoice code, invoice type, invoice amount and other basic invoice information;
[0096] The invoice basic information hotspot data table, also known as the basic information small table, has the same structure as the invoice basic information table and is used to record only hotspot data based on the invoice status;
[0097] The invoice ownership information table, also known as the ownership information table, contains invoice ownership information: platform, tenant, product, business scenario, financial institution, transaction parties, buyer and seller, and other information. It is used to record the ownership information of all invoices.
[0098] The invoice ownership information hotspot data table, also known as the ownership information small table, has the same structure as the invoice ownership information table and is used to record the invoice ownership information corresponding to the invoice basic information hotspot data table;
[0099] In addition, you also need to configure an invoice usage log table to record all invoice usage information; an invoice occupancy record table to record the current occupancy information of invoices; and an invoice dimension configuration table to record the scope of invoice duplication and reuse based on invoice ownership.
[0100] Since the business process for analyzing effective invoices, the invoices used in reuse and invoice usage scenarios are invoices with balances, after the business ends and the invoices have consumed the available balance, this portion of invoice data becomes silent. This silent data places considerable database pressure on invoice reuse list queries and updates during invoice usage. Therefore, it is necessary to maintain separate hot data and small table data for unused or unused invoices. This ensures that the data volume of the invoice small table remains stable at around 2 million data points, reduces the proliferation of slow SQL queries for invoice data within complex reuse scopes, and significantly improves performance. This reduces the system pressure on the database caused by invoice reuse list queries and updates associated with invoice usage, improving system stability. To address data consistency issues between the small and large tables, this application first ensures that all business operations are performed within the full data range within the business process. Secondly, it uses asynchronous messaging for update operations and converts large-scale update operations into incremental operations for individual invoices. This effectively limits database operations and ensures eventual consistency between the small and large tables.
[0101] S103: Perform a duplicate check on the target invoice based on the configured duplicate check range.
[0102] The duplication check for the target invoice to be checked based on the configured invoice duplication check range includes: querying whether the target invoice exists in the invoice basic information table according to the invoice number and invoice code, and if not, determining that it is not a duplicate; if it exists, further obtaining all the attribution information of the target invoice from the invoice attribution information table, and querying the corresponding duplication check configuration range from the invoice dimension configuration table in combination with the dimension of the current invoice, comparing the attribution information of the invoice with all the duplication check ranges, and determining that the invoice is a duplicate if the same items exist.
[0103] Specifically, the invoice elements (invoice code and invoice number) are used to match the invoices in the middle office. If there is no matching invoice, it means that there is no duplicate. If there is a match, the configuration item is obtained through the preset configuration item matching logic. Assuming that the matched invoice is in the range x, x may be multiple invoices.
[0104] If the configuration item is hit, and there is an invoice A (there may be multiple A) in x whose ownership is consistent with the configuration range, then it is a duplicate invoice and A is returned; if the configuration item is hit, and the configuration range is inconsistent with the ownership of the invoice in x, then it is not a duplicate invoice; if the configuration item is not hit, then it is a duplicate invoice and X is returned.
[0105] When an invoice is duplicated, the invoice center needs to return the duplicate invoice ID and the remaining financing amount.
[0106] The preset configuration item matching logic is:
[0107] 1. Match configuration items by checking for duplicates and reusing the platform, (tenant), product, business scenario, financial institution, and financial institution (total) in the interface input parameters. Perform precise matching in sequence according to the following rules until a match is found:
[0108] a) If the platform, (tenant), product, business scenario, financial institution, and financial institution (total) all have value, then
[0109] i) By platform, (tenant), product, business scenario, financial institution, financial institution (total)
[0110] ii) By platform, (tenant), product, financial institution, financial institution (total)
[0111] iii) By platform, (tenant), product, business scenario, financial institution (total)
[0112] iv) By platform, (tenant), product, financial institution (total)
[0113] v) By platform, (tenant), product, business scenario, financial institution
[0114] vi) By platform, (tenant), product, financial institution
[0115] vii) By platform, (tenant), product, and business scenario
[0116] viii) According to the platform, (tenant), product
[0117] b) If the platform, (tenant), product, business scenario, and financial institution (total) all have value, then
[0118] i) By platform, (tenant), product, business scenario, financial institution (total)
[0119] ii) By platform, (tenant), product, financial institution (total)
[0120] iii) By platform, (tenant), product, and business scenario
[0121] iv) By platform, (tenant), product
[0122] c) If the participating platform, (tenant), product, business scenario, or financial institution is valuable, then
[0123] i) According to platform, (tenant), product, business scenario, financial institution
[0124] ii) By platform, (tenant), product, financial institution
[0125] iii) By platform, (tenant), product, and business scenario
[0126] iv) By platform, (tenant), product
[0127] d) If the platform, (tenant), product, or business scenario is valuable, then
[0128] i) By platform, (tenant), product, business scenario
[0129] ii) By platform, (tenant), product
[0130] e) If the participating platform, (tenant), product, financial institution, and financial institution (total) are all valuable, then
[0131] i) By platform, (tenant), product, financial institution, financial institution (total)
[0132] ii) By platform, (tenant), product, financial institution (total)
[0133] iii) By platform, (tenant), product, financial institution
[0134] iv) By platform, (tenant), product
[0135] f) If the participating platform, (tenant), product, or financial institution (total) has value, then
[0136] i) By platform, (tenant), product, financial institution (total)
[0137] ii) By platform, (tenant), product
[0138] g) If the participating platform, (tenant), product, or financial institution has value, then
[0139] i) By platform, (tenant), product, financial institution
[0140] ii) By platform, (tenant), product
[0141] h) If the platform, (tenant), or product has value, then
[0142] It should be noted that the duplicate check and reuse interface input parameters must be verified. If the platform is an operating platform, the tenant is required. If the platform is an enterprise platform, the tenant is optional. If a value is passed, it is ignored. When a match is found, the invoice range is determined according to the data range configuration. If there is no match, the range is empty. If there is no match, the message "No configuration item is matched, the invoice is duplicated" will be returned.
[0143] S104. Search for reusable invoices based on the configured invoice reuse range.
[0144] Based on the configured invoice reuse range, the invoice dimension configuration table is queried to filter out the reuse range that meets the business rules, and based on the reuse range that meets the business rules, the reusable invoices are queried in the invoice basic information hotspot data table and the invoice attribution information hotspot data table.
[0145] The invoice reuse feature allows you to reuse invoices that aren't fully utilized. Document review provides a reuse page, requiring you to access a list of reusable invoices through the unified invoice management platform. To access this list, you need to filter by platform, product, transaction parties (including a whitelist), financial institution, and financial institution (total). To filter, you must first obtain the invoice whitelist, summarize the transaction parties, and then filter the reusable invoices using pre-set configuration item matching logic.
[0146] S105. For the non-duplicate invoices in the duplicate check results and the found reusable invoices, perform invoice validation, occupation or release operations.
[0147] For the non-duplicate invoices in the duplicate check results and the reusable invoices found, the invoice validation operation includes: performing reuse processing on the invoices with the invoice middle station ID, checking whether its ownership information already exists in the database, and adding the corresponding ownership information if it does not exist. For the invoices without the invoice middle station ID, first perform invoice duplicate checking. If it is a duplicate invoice, perform the reuse processing. If it is a non-duplicate invoice, add the basic invoice information and ownership information to the database, maintain the invoice basic information table, the invoice basic information hot data table, the invoice ownership information table and the invoice ownership information hot data table, and asynchronously process the invoice verification information and the dictionary information maintenance related to the newly effective invoice.
[0148] Specifically, when an invoice becomes effective, it must be checked again against the effective invoice according to the invoice duplication check scope of the business. It can only become effective if there is no duplication. When the invoice becomes effective, the invoice information is pushed to the invoice center. The center records the basic information and ownership information of the invoice and associates it with the inspection record. For invoices reused in the invoice package, the ownership information of the current business must be inserted into the ownership record. The following judgment needs to be made:
[0149] a) If the current business attribution does not exist in the attribution information, a new attribution record is created. This information includes: the platform that initiated the weight verification invoice, the product, supplier, counterparty, business scenario, financial institution, the financial institution's ID and name on the platform, and the file ID of the invoice (different financial institutions have different invoice requirements, so invoice files need to be stored for different attributions).
[0150] b) If the current business affiliation is included in the affiliation information, there is no need to re-insert the affiliation data;
[0151] c) The following rules apply to the assignment of financial institutions and financial institutions in aggregate:
[0152] i) If both the financial institution and the total financial institution have no value, then the financial institution ID is passed as 88888, and the invoice middleware records the financial institution and the total financial institution as none;
[0153] ii) If the financial institution has a value and the financial institution total has no value, the financial institution value will be assigned to the financial institution total to pass the parameter
[0154] iii) There will be no situation where a financial institution is worthless, and financial institutions always have value.
[0155] When the business-related material package has been reviewed and approved, the invoice occupation operation is performed for the non-duplicate invoices in the duplicate check results and the reusable invoices found, specifically including: selecting a set of invoices whose financing balance is greater than the preset balance value, locking the set according to the invoice element information to prevent concurrent operations, calculating the used amount, remaining amount and status information of the invoice, maintaining the invoice basic information hotspot data table, the invoice attribution information hotspot data table and the invoice occupation record table information, and asynchronously updating the data of the invoice basic information table and the invoice attribution information table.
[0156] When setting a set lock, the Redis Set data structure is used to divide the invoice data into two sets: the currently active invoice set and the invoice set for this operation. A Lua script is then used to perform an intersection operation on the invoices in the two sets. If the current batch of invoices intersects with the currently active invoice set, a spin retry is performed. If the intersection still exists after the retry threshold is reached, the lock fails. If there is no intersection, the current batch of invoices is unioned with the currently active invoice set, successfully locking the invoices. After the lock is successfully locked, the currently active invoice set is renewed. After the transaction is completed, the current batch of invoices is removed from the currently active invoice set, releasing the lock. This allows the lock to be set-created, intersected, and then removed, regardless of the number of invoices involved. This significantly reduces the number of interactions with Redis and improves system performance.
[0157] For invoices that are not duplicated in the duplicate check results and reusable invoices found, the invoice release operations include:
[0158] According to the invoice occupancy record information, query the invoice corresponding to the invoice release operation, perform collection locking based on the invoice element information to prevent concurrent operations, combine the data of the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table to calculate the used amount, remaining amount and status information of the invoice, maintain the data of the invoice basic information hot data table and the invoice attribution information hot data table and delete the corresponding occupancy information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0159] Invoice occupation and release are achieved through the occupation / release function. This interface function is used to occupy or release approved invoices based on the invoice amount associated with the invoice. Since the business side currently calls the document interface, this modification does not change the business-side interface interaction, which is now handled by the document and the unified invoice management platform. Both occupation and release require a record of occupation information.
[0160] The above are some specific implementations of an invoice management method provided in the embodiment of the present application. Based on this, the present application also provides a corresponding system. The system provided in the embodiment of the present application will be introduced from the perspective of functional modularization.
[0161] Figure 2 This is a schematic diagram of the structure of an invoice management system provided in this application embodiment. Figure 2 As shown, the invoice management system 200 provided in this embodiment of the application includes:
[0162] Invoice details viewing page 210 is used to view the basic information, ownership information, occupancy information, and verification information of the effective invoice;
[0163] Rule configuration module 220, used to customize the invoice duplicate checking range and invoice reuse range;
[0164] Invoice duplication checking module 230, for automatically checking submitted invoices for duplicates based on business information dimensions and pre-configured duplication checking ranges;
[0165] Invoice reuse module 240, used to query and select reusable invoices based on business information dimensions and pre-configured reuse scope;
[0166] The invoice validation module 250 is used to validate the unvalidated invoices associated with the business data package when the document review is completed;
[0167] The invoice occupation or release module 260 is used to occupy or release the invoices that have passed the review and to keep records of the invoice occupation.
[0168] In one implementation of the embodiment of the present application, the invoice details viewing page further includes:
[0169] Invoice basic information table, used to record the basic face value information of the invoice;
[0170] Invoice attribution information table, used to record invoice attribution information, including platform, tenant, product, business scenario, financial institution, and transaction parties;
[0171] Invoice occupancy record table, used to record invoice occupancy information;
[0172] The invoice inspection record form is used to record the inspection history of invoices.
[0173] In one implementation of an embodiment of the present application, the invoice reuse module is specifically used to query the invoice dimension configuration table based on the configured invoice reuse range to filter out the reuse range that complies with business rules, and query reusable invoices in the invoice basic information hotspot data table and the invoice attribution information hotspot data table based on the reuse range that complies with business rules.
[0174] In one implementation of the embodiment of the present application, the invoice validation module is specifically configured to:
[0175] For invoices with invoice middleware ID, reuse processing is performed to check whether their ownership information already exists in the database. If not, the corresponding ownership information is added;
[0176] For invoices that do not have an invoice middle platform ID, a duplicate check is first performed. If it is a duplicate invoice, the reuse process is performed. If it is not a duplicate invoice, the basic invoice information and ownership information are added to the database;
[0177] Maintain the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table, and asynchronously process invoice verification information and dictionary information maintenance related to newly effective invoices.
[0178] In one implementation of the embodiment of the present application, the invoice occupation or release module is specifically configured to:
[0179] Select the invoice set with a financing balance greater than the preset balance value;
[0180] Lock the collection based on invoice element information to prevent concurrent operations;
[0181] Calculate the used amount, remaining amount and status information of the invoice, maintain the invoice basic information hotspot data table, the invoice attribution information hotspot data table and the invoice occupancy record table information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0182] In one implementation of the embodiment of the present application, the invoice occupation or release module is specifically configured to:
[0183] Query the invoice corresponding to the invoice release operation based on the invoice occupation record information;
[0184] Lock the collection based on invoice element information to prevent concurrent operations;
[0185] Combine the data of the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table to calculate the used amount, remaining amount and status information of the invoice, maintain the data of the invoice basic information hot data table and the invoice attribution information hot data table and delete the corresponding occupancy information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
[0186] The embodiments of the present application also provide corresponding devices and computer storage media for implementing the solutions provided by the embodiments of the present application.
[0187] The device includes a memory and a processor, the memory is used to store instructions or codes, and the processor is used to execute the instructions or codes so that the device executes the method described in any embodiment of the present application.
[0188] The computer storage medium stores code, and when the code is executed, the device executing the code implements the method described in any embodiment of the present application.
[0189] Through the description of the above implementation methods, it can be known that those skilled in the art can clearly understand that all or part of the steps in the above-mentioned embodiment methods can be implemented by means of software plus a general hardware platform. Based on this understanding, the technical solution of the present application can be embodied in the form of a software product, which can be stored in a storage medium, such as a read-only memory (ROM) / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network communication device such as a router) to execute the methods described in each embodiment of the present application or certain parts of the embodiments.
[0190] It is understandable that in the specific implementation of this application, the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved, when the above embodiments of this application are applied to specific products or technologies, need to obtain user permission or consent, and the collection, use and processing of relevant data need to comply with the relevant laws, regulations and standards of relevant countries and regions.
[0191] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0192] It should also be noted that the various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device and system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments. The device and system embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components indicated as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of this embodiment. A person of ordinary skill in the art can understand and implement it without expending creative work.
[0193] The above is merely one specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application 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. An invoice management method, characterized in that: The method comprises: Configure the invoice duplicate checking range and invoice reuse range of the target invoice; Set up an invoice basic information table to record the basic information of all invoices; an invoice basic information hotspot data table to record only hotspot data based on invoice status; an invoice ownership information table to record the ownership information of all invoices; and an invoice ownership information hotspot data table to record the invoice ownership information corresponding to the invoice basic information hotspot data table. Performing a duplicate check on the target invoice to be checked based on the configured invoice duplicate checking range; Search for reusable invoices based on the configured invoice reuse range; For the non-duplicate invoices in the duplicate check results and the reusable invoices found, perform invoice validation, occupation or release operations.
2. The method according to claim 1, characterized in that The duplication checking of the target invoice to be checked based on the configured invoice duplication checking range includes: Checking whether the target invoice exists in the invoice basic information table based on the invoice number and invoice code, and determining that the target invoice is not a duplicate if it does not exist; If it exists, all the ownership information of the target invoice is further obtained from the invoice ownership information table, and the corresponding duplicate check configuration range is queried from the invoice dimension configuration table in combination with the dimension of the current invoice, and the ownership information of the invoice is compared with all the duplicate check ranges. If the same items exist, the invoice is determined to be a duplicate.
3. The method according to claim 1, characterized in that The search for reusable invoices based on the configured invoice reuse range includes: Based on the configured invoice reuse range, the invoice dimension configuration table is queried to filter out the reuse range that meets the business rules, and based on the reuse range that meets the business rules, the reusable invoices are queried in the invoice basic information hotspot data table and the invoice attribution information hotspot data table.
4. The method according to claim 1, wherein For the invoices that are not duplicated in the duplicate check results and the reusable invoices found, the invoice validation operations include: For invoices with invoice middleware ID, reuse processing is performed to check whether their ownership information already exists in the database. If not, the corresponding ownership information is added; For invoices that do not have an invoice middle platform ID, a duplicate check is first performed. If it is a duplicate invoice, the reuse process is performed. If it is not a duplicate invoice, the basic invoice information and ownership information are added to the database; Maintain the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table, and asynchronously process invoice verification information and dictionary information maintenance related to newly effective invoices.
5. The method according to claim 1, wherein For the invoices that are not duplicated in the duplicate check results and the reusable invoices found, the invoice occupation operations include: Select the invoice set with a financing balance greater than the preset balance value; Lock the collection based on invoice element information to prevent concurrent operations; Calculate the used amount, remaining amount and status information of the invoice, maintain the invoice basic information hotspot data table, the invoice attribution information hotspot data table and the invoice occupancy record table information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
6. The method according to claim 1, characterized in that For invoices that are not duplicated in the duplicate check results and reusable invoices found, the invoice release operations include: Query the invoice corresponding to the invoice release operation based on the invoice occupation record information; Lock the collection based on invoice element information to prevent concurrent operations; Combine the data of the invoice basic information table, the invoice basic information hot data table, the invoice attribution information table and the invoice attribution information hot data table to calculate the used amount, remaining amount and status information of the invoice, maintain the data of the invoice basic information hot data table and the invoice attribution information hot data table and delete the corresponding occupancy information, and asynchronously update the data of the invoice basic information table and the invoice attribution information table.
7. An invoice management system, characterized in that: The system comprises: The invoice details viewing page is used to view the basic information, ownership information, occupancy information, and verification information of the effective invoice; The rule configuration module is used to customize the invoice duplicate checking range and invoice reuse range; The invoice duplication check module is used to automatically check submitted invoices for duplicates based on business information dimensions and pre-configured duplication check ranges; The invoice reuse module is used to query and select reusable invoices based on business information dimensions and pre-configured reuse scopes; The invoice validation module is used to validate unvalidated invoices associated with the business data package upon completion of document review. The invoice occupation or release module is used to occupy or release invoices that have passed the review and to keep records of invoice occupation.
8. The system according to claim 1, wherein: The invoice details viewing page also includes: Invoice basic information table, used to record the basic face value information of the invoice; Invoice attribution information table, used to record invoice attribution information, including platform, tenant, product, business scenario, financial institution, and transaction parties; Invoice occupancy record table, used to record invoice occupancy information; The invoice inspection record form is used to record the inspection history of invoices.
9. A computing device, characterized in that The computing device includes: a memory and a processor; The memory is used to store computer programs; The processor is configured to implement the method according to any one of claims 1 to 6 when executing the computer program.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.