Data processing method and device, equipment and storage medium
By dynamically shortening the group's SMS numbers and consolidating the billing amounts, the problems of low settlement and auditing efficiency and lack of accuracy in the group's SMS business have been solved, achieving efficient and accurate bill auditing.
Patent Information
- Application Number
- CN202311478465.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-06
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2043-11-06
AI Technical Summary
In the group SMS business scenario, the existing settlement audit methods are inefficient and inaccurate, especially because the settlement bill audit is difficult due to the dynamic changes in the group SMS sending port. The traditional methods are computationally intensive and lack accuracy.
By reducing the number of digits in the first number, a corresponding second number is generated, and the target number is determined based on the second bill data. The billing amounts are combined for auditing, and multiple numbers of the group's SMS sending port are dynamically matched to reduce the total audit calculation amount.
It improves the efficiency and accuracy of bill auditing, can quickly determine whether there are any abnormalities in the settlement amount, reduces the amount of calculation, and reduces auditing errors.
Smart Images

Figure CN118803628B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the technical field of communication, and particularly relates to a data processing method and device, equipment and a storage medium. BACKGROUND
[0002] In the group short message service scenario, when a group short message is sent to a user number of a non-native province, the native province communication operator will settle accounts with the home province operator of the user number of the non-native province. In the business settlement audit, the existing group short message service audit method is to collect settlement call data and billing call data respectively, and to audit whether the key fields (such as billing number and call data time) in the two types of call data are consistent.
[0003] However, the group customer is allocated a certain port as a short message sending port when opening an account, and the group is allowed to support number expansion, that is, MAS business, for dynamic changes in the port. Therefore, the service number for sending short messages by the same group may include multiple different numbers. Since the generation systems of the settlement data and the billing data are different, the numbers of the same group may not be consistent, and the number of group businesses is huge, which results in a large amount of calculation and low efficiency in the process of auditing the call data. SUMMARY
[0004] The embodiments of the present application provide a data processing method, device, equipment and storage medium, which can improve the efficiency of billing audit.
[0005] In a first aspect, the embodiments of the present application provide a data processing method, which comprises:
[0006] obtaining first billing data generated by a first system and second billing data generated by a second system;
[0007] performing reduced-digit processing on a first number to obtain at least one second number corresponding to the first number, the second number having a number of digits less than or equal to that of the first number, and the first number being a user number in the first billing data;
[0008] determining a target number according to the second number corresponding to each first number and the second billing data, wherein the target number comprises at least one of the following: a user number in the second billing data matching the second number, and a first number for which the corresponding second number does not exist in the second billing data.
[0009] determining a first billing amount of the target number in the first billing data, the first billing amount being the sum of the billing amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or the first billing amount being the billing amount of the target number in the first billing data;
[0010] determine a verification result of the target number according to the first charging amount and a charging amount of the target number in the second billing data, the verification result being used to indicate whether the charging of the target number is abnormal.
[0011] In a second aspect, an embodiment of the present application provides a data processing method and device, the device comprising:
[0012] a first obtaining module, configured to obtain first billing data generated by a first system and second billing data generated by a second system;
[0013] a bit reduction processing module, configured to perform bit reduction processing on a first number to obtain at least one second number corresponding to the first number, the second number having a bit number less than or equal to a bit number of the first number, the first number being a user number in the first billing data;
[0014] a matching module, configured to determine a target number according to the second number corresponding to each first number and the second billing data, wherein the target number comprises at least one of the following: a user number in the second billing data matching the second number, and a first number corresponding to the second number for which there is no matching user number in the second billing data;
[0015] a first determining module, configured to determine a first charging amount of the target number in the first billing data, the first charging amount being a sum of charging amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or the first charging amount being a charging amount of the target number in the first billing data;
[0016] a second determining module, configured to determine a verification result of the target number according to the first charging amount and a charging amount of the target number in the second billing data, the verification result being used to indicate whether the charging of the target number is abnormal.
[0017] In a third aspect, an embodiment of the present application provides a data processing method device, the device comprising: a processor and a memory storing computer program instructions;
[0018] the processor executes the computer program instructions to implement the data processing method as above.
[0019] In a fourth aspect, an embodiment of the present application provides a computer storage medium, the computer storage medium storing computer program instructions, the computer program instructions being executed by a processor to implement the data processing method as above.
[0020] In a fifth aspect, an embodiment of the present application provides a computer program product, which comprises computer program instructions, and the computer program instructions are executed by a processor to implement the data processing method described above.
[0021] The data processing method provided in the present application can obtain first billing data generated by a first system and second billing data generated by a second system, perform reduced-digit processing on first numbers in the first billing data to obtain at least one second number corresponding to each first number, determine a target number according to the second number corresponding to each first number and the second billing data, determine a sum of charging amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or determine a charging amount of the target number in the first billing data as a first charging amount of the target number in the first billing data, and then determine whether the charging of the target number is abnormal according to the first charging amount and a charging amount of the target number in the second billing data. In this way, the user numbers in the first billing data and the user numbers in the charging billing data are matched by using the dynamic reduced-digit method, the charging amounts of the multiple numbers matching the target number in the settlement billing are combined, and then the combined charging amount is audited against the charging amount of the target number, so that it can be quickly determined whether the settlement amount of the target number is abnormal, the calculation amount of the audit is reduced, and the efficiency of the billing audit is improved. BRIEF DESCRIPTION OF DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the embodiments of the present application will be briefly introduced as follows. Obviously, the drawings described below are only some embodiments of the present application, and other drawings can also be obtained by those skilled in the art without creative labor on the basis of these drawings.
[0023] Figure 1 is a flowchart of a data processing method provided by an embodiment of the present application;
[0024] Figure 2 is a flowchart of a data processing method provided by another embodiment of the present application;
[0025] Figure 3 is a schematic diagram of a data processing system provided by an embodiment of the present application;
[0026] Figure 4 is a structural schematic diagram of a data processing device provided by an embodiment of the present application;
[0027] Figure 5 is a structural schematic diagram of a data processing device provided by an embodiment of the present application;
[0028] Figure 6is a schematic diagram of the first bill data provided by an embodiment of the present application. DETAILED DESCRIPTION
[0029] The features and exemplary embodiments of various aspects of the present application will be described below in detail, in order to make the purposes, technical solutions and advantages of the present application more clear and apparent, the present application will be further described in detail below in combination with the drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, but not to limit the present application. For those skilled in the art, the present application can be implemented without some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by showing examples of the present application.
[0030] It should be noted that, in this paper, relational terms such as target and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between the entities or operations. Moreover, the terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or equipment including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or equipment. Without more limitations, the elements defined by the statement "include" do not exclude the presence of other identical elements in the process, method, article or equipment including the elements.
[0031] It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other without conflict.
[0032] Group short message service and personal short message service features are different. When a personal customer sends a short message, the sending number in the short message bill is fixed in length, that is, the user's mobile phone number. But group short message service is different, its sending port is allowed to change dynamically. Group customers are allocated a certain port as a short message sending port when opening an account, for example, 10692423, but the MAS service supports number expansion, and group customers can use 106924230447374, 106924230447401, 10692423111830086, 10692423111830113, 10692423111830236, etc. Service port mode, send short messages to users. Therefore, the same group service number of group short message can be dynamically expanded, that is, the sending number of group short message can be dynamically changed.
[0033] The group short message sending system is composed of a MAS (Mobile Agent Server) deployed in the group and a short message gateway deployed in a communication operator. The MAS server initiates a login request to the short message gateway and submits a downlink short message (the MAS server sends a short message to a mobile phone user). The provincial communication operator charges the MAS accessed in the province by the piece (for example, 0.05 yuan per piece), and meanwhile, charges the user whose mobile phone number is not in the province according to a certain settlement unit price (for example, 0.03 yuan per piece) and settles the provincial group short message service with the provincial operator to which the mobile phone number belongs. Therefore, based on the reason that the sending number of the group short message can dynamically change, it is difficult to audit the settlement bill.
[0034] There are two traditional settlement auditing methods: one is to separately audit the fluctuation of the settlement amount of each month compared with the same period and the ring ratio; and the other is to separately collect the settlement call detail record (CDR) and the charging CDR, and perform auditing by checking whether the key fields (for example, the charging number and the CDR time) in the two types of CDR are consistent. The first method is not good for the group short message service. The sending amount of the group short message is limited by whether there is a marketing service (for example, Double 11) in the month. The ring ratio fluctuation is generally large, and the fluctuation cannot explain the problem. Therefore, the first method has the problem of low accuracy in settlement auditing. By using the second method, the amount of CDR to be audited is several hundred billion or even more. Because the calculation side is the total user, and the settlement side is only the user in the province, the calculation amount is large, the auditing rule is complex, and the service code in the group short message CDR is dynamically changeable. Therefore, the simple CDR number association cannot accurately perform auditing.
[0035] In summary, the traditional settlement auditing method has the problems of large calculation amount, insufficient precision, narrow coverage and the like.
[0036] In order to solve the problems in the prior art, an embodiment of the present application provides a data processing method, device, equipment and storage medium. First, the data processing method provided by the embodiment of the present application is introduced.
[0037] Figure 1 A flowchart of a data processing method provided by an embodiment of the present application is shown. The method includes the following steps S101 to S105.
[0038] S101, first billing data generated by a first system and second billing data generated by a second system are obtained.
[0039] The first system and the second system generate billing data for the service behavior of the same user in a preset time. However, because different systems use different rules, formats and the like for billing generation, it is necessary to audit the billing data of the two systems.
[0040] S102, perform a number reduction processing on the first numbers to obtain at least one second number corresponding to the first numbers.
[0041] The second number has a number of digits less than or equal to the number of digits of the first number, and the first number is a user number in the first billing data.
[0042] S103, determine a target number according to the second number corresponding to each first number and the second billing data.
[0043] The target number includes at least one of the following: a user number in the second billing data matching the second number, and the first number for which the corresponding second number does not exist in the second billing data.
[0044] S104, determine a first billing amount of the target number in the first billing data.
[0045] The first billing amount is the sum of the billing amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or the first billing amount is the billing amount of the target number in the first billing data.
[0046] S105, determine a verification result of the target number according to the first billing amount and the billing amount of the target number in the second billing data, the verification result being used to indicate whether the billing of the target number is abnormal.
[0047] The data processing method provided by the present application can match the user numbers in the first billing data with the user numbers in the second billing data by using a dynamic number reduction method, combine the billing amounts of the multiple numbers in the first billing data matching the target number in the second billing data, and then audit the billing amount of the target number in the second billing data to determine whether the settlement amount of the target number is abnormal. Therefore, the present application can quickly determine whether the user numbers in the two billing data are abnormal in settlement without auditing the billing data in full, thereby improving the efficiency of billing audit.
[0048] In some embodiments, the above S102 can include the following steps:
[0049] The following steps are performed on the first numbers respectively:
[0050] The first number is reduced by i digits from the tail end to obtain the second number, i being a natural number;
[0051] The second number is matched with the user numbers in the second billing data;
[0052] In the case where there is no user number in the second billing data matching the second number, i is set to i+1;
[0053] return to perform the step of subtracting i digits from the tail end of the first number to obtain a second number, and matching the second number with the user numbers in the second billing data;
[0054] until there is a user number in the second billing data that matches the second number, the user number that matches the second number is determined as the target number, or the value of i is equal to the number of digits of the first number, the first number is determined as the target number.
[0055] In one example, the following algorithm is performed for each first number in the first billing data:
[0056] (1) Initialize the variable: i = 0 (the number of digits to subtract).
[0057] (2) Determine the second number: subtract i digits from the tail end of the first number to obtain the second number.
[0058] (3) Determine whether there is a user number in the second billing data that matches the second number:
[0059] If there is a matching user number, the user number is determined as the target number, and the algorithm ends;
[0060] If there is no matching user number, the following steps are performed:
[0061] Increase the value of i: i = i + 1;
[0062] Check whether the value of i is equal to the number of digits of the first number;
[0063] If i is equal to the number of digits of the first number, the first number is determined as the target number, and the algorithm ends;
[0064] If i is not equal to the number of digits of the first number, return to step (2) to continue the next round of calculation.
[0065] This algorithm process gradually subtracts one digit from the tail end of the first number to generate different second numbers, and matches them with the user numbers in the second billing data. If there is a matching user number, the user number is determined as the target number. If no matching user number is found after traversing all possible digits, the first number is determined as the target number.
[0066] In some embodiments, the S103 described above can include the following steps:
[0067] In the case where the target number is the user number in the second billing data that matches the second number, the first number corresponding to the second number matched by the target number is determined;
[0068] The sum of the charging amounts of the first numbers corresponding to the second numbers matched with the target number in the first billing data is determined as the first charging amount of the target number.
[0069] Specifically, the second numbers obtained by reducing the number of digits of the first numbers in the first billing are matched with the target number in the second billing. There can be multiple first numbers in the first billing that are matched with the same target number in the second billing after reducing the number of digits. This indicates that the multiple first numbers in the first billing are actually the extension numbers of the same user (the user corresponding to the target number). Therefore, the charging amounts of the multiple first numbers corresponding to the target number in the first billing are combined to obtain the charging amount corresponding to the target number in the first billing.
[0070] In this embodiment, the settlement amounts of the same user in the first billing and the second billing can be quickly determined, thereby improving the efficiency of billing auditing. Further, the extension numbers of the same user can be accurately determined, and the charging amounts corresponding to the extension numbers of the same user are combined, thereby avoiding errors in the auditing results due to different extension numbers of the user and improving the accuracy of billing auditing.
[0071] In some embodiments, S104 described above can include the following steps:
[0072] In the case where the target number is the first number, the charging amount of the target number in the first billing data is determined as the first charging amount of the target number.
[0073] Specifically, in the case where the target number is the first number, it is indicated that the user corresponding to the target number does not have an extension number, and therefore the charging amounts of the first number in the first billing and the charging amounts in the second billing can be directly audited.
[0074] In some embodiments, S105 described above can include the following steps:
[0075] The charging amount of the target number in the second billing data is subtracted from the first charging amount to obtain a first difference value.
[0076] In the case where the first difference value is less than 0, it is determined that the auditing result of the target number is that the charging of the target number is abnormal.
[0077] It should be noted that the first billing data is usually a billing generated for part of the business behaviors of a user, for example, a settlement billing of a group short message service, which only includes the charging conditions of the cross-province short message sending behaviors of the group user. The second billing data is usually a billing generated for all the business behaviors of a user, for example, a charging billing of a group short message service, which includes the charging conditions of all the short message sending behaviors (including sending short messages to intra-province numbers and to inter-province numbers) of the group user.
[0078] Specifically, after determining the charging amount of the target number in the first bill and the charging amount of the target number in the second bill respectively, the difference between the charging amounts of the target number in the two bills is calculated, and if the charging amount of the target number in the second bill is less than the charging amount of the target number in the first bill, it indicates that the charging of the target number is abnormal. Therefore, in the case where it is determined that the target number has charging abnormality, the target number is further checked.
[0079] In some embodiments, the S105 described above can include the following steps:
[0080] Obtaining the preferential amount of the target number;
[0081] Subtracting the first charging amount and the preferential amount from the charging amount of the target number in the second billing data to obtain a second difference;
[0082] In the case where the second difference is less than 0, it is determined that the checking result of the target number is that the charging of the target number is abnormal.
[0083] Specifically, the user can have the condition of handling a package or having the qualification of preferential settlement, so the charging amount of the user is reduced in the actual bill generation. Therefore, in the process of bill auditing, the preferential reduction of each user also needs to be considered.
[0084] In order to facilitate the understanding of the above data processing method, the following will introduce the above data processing method in combination with specific scenarios. As shown in Figure 2
[0085] Step S201: Collecting user settlement data (equivalent to first billing data), billing data (equivalent to second billing data) and account preferential data (equivalent to preferential amount data). Specifically: a certain communication system real-time issues the details of the provincial MAS sending short messages to users in other provinces, that is, the settlement of the details of the bill (equivalent to the second billing data generated by the second system), and generates simple summary data for these settlement bill details, as shown in Figure 6 The settlement data mainly includes: user number (there is no USERID in the settlement system, only user number), settlement period, settlement service (that is, the service to be audited later), settlement amount (that is, the cumulative settlement amount of the service). The first column is the group number in the bill, the second column is the account period, the third column is the group short message service identifier, the fifth column is the number of short message, and the sixth column is the settlement amount (unit: yuan).
[0086] The full amount of billing data (first billing data generated by the first system) needs to be collected at the beginning of each month. The billing data mainly includes: user number, user ID, billing period, billing subject (three-level subject in the bill), and billing amount. In order to effectively use the billing data, billing subject data is also introduced. The purpose is to filter out the billing data corresponding to all three-level subjects related to the group SMS business, and add them together to calculate and audit the settlement value to determine whether there is a group SMS business.
[0087] For example, the group SMS bill of Company A to be audited includes monthly fee and communication fee, and the bill audit configuration items are as follows: type = BSMS: 38199, 33046, 35345, 38602, 35347, 35336, 31389, 38601, 38189, 35304, 35333, 38604, 38603, 35310 | Anhui BSMS.
[0088] For example, the group SMS bill of Company A to be audited includes monthly fee and communication fee, and the bill audit configuration items are as follows: type = BSMS: 38199, 33046, 35345, 38602, 35347, 35336, 31389, 38601, 38189, 35304, 35333, 38604, 38603, 35310 | Anhui BSMS.
[0089] For example, the group SMS bill of Company A to be audited includes monthly fee and communication fee, and the bill audit configuration items are as follows: type = BSMS: 38199, 33046, 35345, 38602, 35347, 35336, 31389, 38601, 38189, 35304, 35333, 38604, 38603, 35310 | Anhui BSMS.
[0090] Step S202: Traverse the settlement data, and match the number A (equivalent to the first number in the first billing data) in the settlement data with the number in the billing data. In the current production environment, for example, the prefix of a certain group number is 10692423, but the group can use 106924230447374, 106924230447401, 10692423111830086, 10692423111830113, 10692423111830236, etc. Service port to send SMS to users, but the billing will be uniformly charged to the 10692423 group number. The number expansion feature of the group SMS brings difficulties to the one-to-one auditing method, and the solution is to increase the dynamic scaling and dynamic matching technology in the auditing system. The technical solution first loads the corresponding number in the full-month billing data into the memory to be searched; secondly, traverse the settlement data, and parse the number A, which is used as a keyword to search in the memory.
[0091] Step S203: When the to-be-matched number is not found in the billing data, the rightmost character of the to-be-matched number is deleted (equivalent to the second number obtained by subtracting the tailing digits from the first number), and the matching is performed again until the number B is matched or the to-be-matched number is finally empty. Here is a loop: the to-be-matched number 106924230447374 is searched in the billing data; if there is no 106924230447374 in the billing number, the rightmost character of the to-be-matched number is deleted to become 10692423044737, and the searching is performed again in the billing number; if the matching is still not performed, the to-be-matched number is dynamically shortened in the order of 1069242304473, 106924230447, 10692423044, 1069242304, 106924230, 10692423. Until the to-be-matched number is shortened to 10692423, the corresponding data in the billing number is found, and it is determined that the number 10692423 is the to-be-audited number B (equivalent to the target number).
[0092] Alternatively, the to-be-matched number is finally changed to an empty string, and the initial number, i.e., 106924230447374, is taken as the to-be-audited number.
[0093] Step S204: When the shortened number is matched with the number B, all the settlement amounts of the number A are added to the number B, and the number B is used for auditing. Specifically, when the number Al is shortened to match the number B, the settlement amount corresponding to the number Al in the settlement data is added to the number B; when the number A2 is also matched with the number B, the settlement amount corresponding to the number A2 in the settlement data is also added to the number B; when the number AN is also matched with the number B, the settlement amount corresponding to the number AN in the settlement data is added to the number B. Thus, the amount corresponding to the number B is the total amount of the settlement of all the ports in the group (equivalent to the first billing amount).
[0094] Step S205: When the shortened number is not matched, the number A is used for auditing. Specifically, when the shortened number is not matched, the number A is used as the to-be-audited number, and the amount corresponding to the number A is the original settlement amount in the settlement file.
[0095] Step S206: According to the audit rules, the settlement amount, the billing amount and the discount amount of the audit number are counted respectively. Specifically: the audit rules are the configuration items of the three-level subjects, and the auditors can select a certain number of billing three-level subjects as the audit range according to the needs (such as the monthly fee and the communication fee in the above example), and only the billing amount in the audit range will be accumulated, otherwise it will not be included in the billing audit amount. The settlement amount refers to the summary value S1 processed by S204 and S205 with the same billing period. The billing amount is the summary value A1 processed by the audit rules with the same billing period. The discount amount refers to the billing discount summary value F1 with the same billing period.
[0096] Step S207: Calculate the settlement reverse value of the audit number = billing amount + discount amount - settlement amount. The values summarized in step S206 are used for audit calculation: D1 = A1 + F1 - S1, when the value of D1 is less than 0, it indicates that the billing account receivable amount is insufficient to pay the settlement amount, and there is a settlement reverse, otherwise there is no settlement reverse.
[0097] In one example, the present application also provides a data processing system, as shown in Figure 3 The system mainly includes: BOSS 301, dynamic scaling device 302 and audit calculation device 303. The specific description is as follows:
[0098] BOSS 301
[0099] The BOSS system is a business operation support system, which covers the functions of charging, settlement, billing, etc. It is a data processing system, including a calculation storage unit, a billing storage unit, a subject storage unit, an account discount storage unit. The settlement storage unit is mainly responsible for the data of settlement with group companies, other operators, other provincial companies or professional companies, which is the main audit data source of the present scheme; the billing storage unit mainly stores the billing data of the provincial users after the billing and account processing, which is mainly used for financial statements, user query and big data analysis in the early stage, and is the main audit data source in the present scheme; the subject storage unit is a unified format of the whole group, and the billing subjects of the whole country are classified into three levels, which mainly restricts the seven categories of billing and billing categories, and plays an important role in the present scheme; the account discount storage unit mainly stores the detailed data of the discount of the subscribed discount package after the account processing, which is an important item in the audit formula in the present scheme.
[0100] Dynamic scaling device 302
[0101] The dynamic shortening device is the most important device in the scheme, and the device comprises a data acquisition unit, a number matching unit, a number shortening unit, a number confirming unit, a settlement accumulation unit and a bill accumulation unit. The data acquisition unit is responsible for acquiring the to-be-audited data of each unit in the required account period from the BOSS system; the number matching unit is responsible for searching the group number in the bill data by using the group number in the settlement data as the search value, and if there is a completely matched group number, True is returned, otherwise False is returned; the number shortening unit is responsible for deleting one bit from the right of the non-empty group number, and returning the remaining string; the number confirming unit is responsible for confirming the matched number as the to-be-audited number when the matching unit returns True, and confirming the initial number as the to-be-audited number when the shortening unit returns an empty string; the settlement accumulation unit is responsible for accumulating all the amounts in the settlement data to the to-be-audited number confirmed by the confirming unit, to form unified to-be-audited settlement data; and the bill accumulation unit is responsible for accumulating all the bill amounts in the audit range to the corresponding to-be-audited number according to the audit rule configuration, to form unified to-be-audited bill data.
[0102] The audit calculation device 303
[0103] The audit calculation device comprises a rule mapping unit, a reverse calculation unit and an audit confirming unit. The rule mapping unit is used to load a series of stored rules stored in the audit rule device into the memory, for subsequent settlement audit; the reverse calculation unit is used to accumulate the data collected by the data acquisition unit and formatted by the preprocessing unit into several key fields according to the group or non-group type of the audited business: settlement value S, bill value A, and account discount value F, and finally calculate the settlement reverse value D=A+F-S by using the following audit formula. The audit confirming unit is used to select the suspected settlement reverse user details with D less than 0 from the full amount settlement users, and use the sorting sampling function to facilitate the final settlement reverse audit confirmation of experts.
[0104] Based on the data processing method provided in the above embodiment, the application also provides a specific implementation mode of a data processing device. Please refer to the following embodiments.
[0105] Firstly, referring to Figure 4 The data processing device 400 provided by the embodiment of the application comprises the following modules:
[0106] The first acquisition module 401 is configured to acquire the first bill data generated by the first system and the second bill data generated by the second system.
[0107] The number reduction processing module 402 is configured to perform number reduction processing on the first numbers to obtain at least one second number corresponding to the first numbers, the second number having a number of digits less than or equal to a number of digits of the first number, and the first number being a user number in the first billing data;
[0108] The matching module 403 is configured to determine a target number according to the second numbers corresponding to the first numbers and the second billing data, wherein the target number includes at least one of the following: a user number in the second billing data matching the second number, or the first number for which there is no matching user number in the second billing data for the corresponding second number.
[0109] The first determination module 404 is configured to determine a first billing amount of the target number in the first billing data, the first billing amount being a sum of billing amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or the first billing amount being a billing amount of the target number in the first billing data.
[0110] The second determination module 405 is configured to determine a verification result of the target number according to the first billing amount and a billing amount of the target number in the second billing data, the verification result being used to indicate whether billing of the target number is abnormal.
[0111] The data processing apparatus provided in the embodiment can match user numbers in the first billing data with user numbers in the billing data by using a dynamic number reduction method, combine billing amounts of a plurality of numbers matching a target number in the billing data with a billing amount of the target number, and then perform auditing on the billing amount of the target number to determine whether a settlement amount of the target number is abnormal, thereby improving the accuracy of billing auditing.
[0112] In some embodiments, the number reduction processing module 402 and the matching module 403 are specifically configured to:
[0113] The following steps are performed on the first numbers respectively:
[0114] The first number is reduced by i digits from the tail end to obtain a second number, i being a natural number;
[0115] The second number is matched with user numbers in the second billing data;
[0116] In a case where there is no user number in the second billing data matching the second number, i is set to i+1;
[0117] The step of reducing the first number by i digits from the tail end to obtain the second number and matching the second number with the user numbers in the second billing data is performed again.
[0118] Until there is a user number matching the second number in the second billing data, the user number matching the second number is determined as the target number, or the value of i is equal to the number of digits of the first number, the first number is determined as the target number.
[0119] In some embodiments, the first determining module 404 includes:
[0120] The first determining unit is configured to determine, in a case where the target number is a user number matching the second number in the second billing data, a first number corresponding to the second number matched by the target number.
[0121] The second determining unit is configured to determine, as the first billing amount of the target number, a sum of billing amounts of the first number corresponding to the second number matched by the target number in the first billing data.
[0122] In some embodiments, the first determining module 404 includes:
[0123] The third determining unit is configured to, in a case where the target number is the first number, determine, as the first billing amount of the target number, a billing amount of the target number in the first billing data.
[0124] In some embodiments, the second determining module 405 includes:
[0125] The first calculating unit is configured to subtract the first billing amount from a billing amount of the target number in the second billing data to obtain a first difference value.
[0126] The fourth determining unit is configured to, in a case where the first difference value is less than 0, determine that the verification result of the target number is that the billing of the target number is abnormal.
[0127] In some embodiments, the second determining module 405 includes:
[0128] The first obtaining unit is configured to obtain a preferential amount of the target number.
[0129] The second calculating unit is configured to subtract the first billing amount and the preferential amount from a billing amount of the target number in the second billing data to obtain a second difference value.
[0130] The fifth determining unit is configured to, in a case where the second difference value is less than 0, determine that the verification result of the target number is that the billing of the target number is abnormal.
[0131] Figure 5 A hardware structure schematic diagram of a data processing device provided by an embodiment of the present application is shown.
[0132] The data processing device can include a processor 501 and a memory 502 storing computer program instructions.
[0133] In particular, the processor 501 can include a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or can be configured to implement one or more integrated circuits that embody the embodiments of the present application.
[0134] The memory 502 can include a mass storage for data or instructions. By way of example, and not limitation, the memory 502 can include a hard disk drive (HDD), a floppy disk drive, flash memory, an optical disc (e.g., a CD or DVD), a tape drive, a USB drive, or a combination of two or more of these. The memory 502 can be removable and / or non-removable (or fixed) as appropriate. The memory 502 can be internal or external as appropriate. In certain embodiments, the memory 502 is non-volatile solid-state memory.
[0135] The memory can include read-only memory (ROM), random-access memory (RAM), magnetic disk storage mediums, optical storage mediums, flash memory devices, electrical, optical, or other physically tangible / moφhological memory storage devices. Thus, in general, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., a memory device) encoded with software that, when executed (by one or more processors), is operable to perform operations described with reference to the methods according to an aspect of the present disclosure.
[0136] The processor 501 implements any of the data processing methods in the above embodiments by reading and executing computer program instructions stored in the memory 502.
[0137] In one example, the data processing method device can further include a communication interface 503 and a bus 510. As shown, the processor 501, the memory 502, and the communication interface 503 are connected through the bus 510 and complete communication therebetween. Figure 5
[0138] The communication interface 503 is mainly used to realize the communication between the modules, devices, units and / or equipment in the embodiments of the present application.
[0139] Bus 510 includes hardware, software, or both, to couple components of the data processing method apparatus to each other and to couple components to other systems. For example, but not limited to, the bus can include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an InfiniBand (IB) interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association local (VLB) bus, or another suitable bus or a combination of two or more of these. Where appropriate, bus 510 can include one or more buses. Although the data processing method apparatus described and illustrated herein includes a particular bus, the data processing method apparatus contemplates any suitable bus or interconnect.
[0140] The data processing method apparatus can be based on the above embodiments, thereby realizing the data processing method and apparatus described in combination Figures 1 to 4 with the above embodiments.
[0141] In addition, in combination with the data processing method in the above embodiments, the embodiments of the present application can provide a computer storage medium to realize. The computer storage medium has computer program instructions stored thereon; the computer program instructions are executed by a processor to realize any one of the data processing methods in the above embodiments, and can achieve the same technical effects, to avoid repetition, which will not be described here. Among them, the above computer readable storage medium can include a non-transitory computer readable storage medium, such as a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, etc., which is not limited here.
[0142] In addition, the embodiments of the present application also provide a computer program product, including computer program instructions, which can realize the steps and corresponding contents of the above method embodiments when executed by a processor.
[0143] It needs to be clear that the present application is not limited to the specific configurations and processes described above and shown in the drawings. For the sake of brevity, detailed descriptions of well-known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present application is not limited to the specific steps described and shown, and those skilled in the art can make various changes, modifications and additions, or change the order between steps, after understanding the spirit of the present application.
[0144] The functional blocks shown in the structural block diagrams above can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, and the like. When implemented in software, the elements of the present application are program or code segments that are used to perform the required tasks. The program or code segments can be stored in a machine-readable medium, or transmitted through a data signal carried in a carrier wave over a transmission medium or communication link. A "machine-readable medium" includes any medium that can store or transport information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROMs, flash memory, erasable ROMs (EROMs), floppy disks, CD-ROMs, optical disks, hard disks, optical fiber media, radio frequency (RF) links, and the like. The code segments can be downloaded via computer networks such as the Internet, intranets, and the like.
[0145] It is also important to note that the examples in the present application are described based on a series of steps or apparatuses to describe some methods or systems. However, the present application is not limited to the order of the above steps, that is, the steps can be performed in the order mentioned in the examples, or in an order different from the examples, or several steps can be performed simultaneously.
[0146] The computer program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other processing means to cause a series of operational steps to be performed on the computer, other programmable apparatus or other processing means to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0147] The above merely provides a specific implementation of the present application. Those skilled in the art can clearly understand the specific working processes of the above-described system, modules and units based on the foregoing corresponding processes in the method embodiments, which will not be described here. It should be understood that the protection scope of the present application is not limited to this, and any modifications or replacements of the technical solutions within the technical scope disclosed by the present application can be easily conceived by those skilled in the art, which should be included in the protection scope of the present application.
Claims
1. A data processing method, characterized by, The method comprises: obtaining first billing data generated by a first system and second billing data generated by a second system; performing digit reduction processing on a first number to obtain at least one second number corresponding to the first number, the second number having a number of digits less than or equal to the first number, the first number being a user number in the first billing data; determining a target number according to the second number corresponding to each first number and the second billing data, wherein the target number comprises at least one of the following: a user number in the second billing data matching the second number, or a first number for which there is no matching user number in the second billing data for the corresponding second number; determining a first billing amount of the target number in the first billing data, the first billing amount being the sum of the billing amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or the first billing amount being the billing amount of the target number in the first billing data; determining a verification result of the target number according to the first billing amount and the billing amount of the target number in the second billing data, the verification result being used to indicate whether the billing of the target number is abnormal.
2. The method of claim 1, wherein, The digit reduction processing on the first number to obtain at least one second number corresponding to the first number, and the determination of a target number according to the second number corresponding to each first number and the second billing data, comprise: respectively performing the following steps on the first number: subtracting i digits from the tail end of the first number to obtain a second number, i being a natural number; matching the second number with user numbers in the second billing data; in the case where there is no user number in the second billing data matching the second number, setting i = i + 1; returning to perform the steps of subtracting i digits from the tail end of the first number to obtain a second number, and matching the second number with user numbers in the second billing data; until there is a user number in the second billing data matching the second number, determining the user number matching the second number as the target number, or the value of i being equal to the number of digits of the first number, determining the first number as the target number.
3. The method of claim 1, wherein, The determination of a first billing amount of the target number in the first billing data comprises: in the case where the target number is a user number in the second billing data matching the second number, determining the first number corresponding to the second number matching the target number; determining the sum of the billing amounts of the first numbers corresponding to the second number matching the target number in the first billing data as the first billing amount of the target number.
4. The method of claim 1, wherein, The determination of a first billing amount of the target number in the first billing data comprises: in the case where the target number is a first number, determining the billing amount of the target number in the first billing data as the first billing amount of the target number.
5. The method of claim 1, wherein, The determining the verification result of the target number according to the first charging amount and the charging amount of the target number in the second billing data comprises: subtracting the first charging amount from the charging amount of the target number in the second billing data to obtain a first difference value; in a case where the first difference value is less than 0, determining that the verification result of the target number is that the charging of the target number is abnormal.
6. The method of claim 1, wherein, The determining the verification result of the target number according to the first charging amount and the charging amount of the target number in the second billing data comprises: obtaining a preferential amount of the target number; subtracting the first charging amount and the preferential amount from the charging amount of the target number in the second billing data to obtain a second difference value; in a case where the second difference value is less than 0, determining that the verification result of the target number is that the charging of the target number is abnormal.
7. A data processing apparatus, characterized by The device comprises: a first obtaining module configured to obtain first billing data generated by a first system and second billing data generated by a second system; a bit reduction processing module configured to perform bit reduction processing on a first number to obtain at least one second number corresponding to the first number, the second number having a bit number less than or equal to a bit number of the first number, the first number being a user number in the first billing data; a matching module configured to determine a target number according to the second number corresponding to each first number and the second billing data, wherein the target number comprises at least one of the following: a user number in the second billing data matching the second number, or a first number for which the corresponding second number does not exist in the second billing data; a first determining module configured to determine a first charging amount of the target number in the first billing data, the first charging amount being a sum of charging amounts of the first numbers corresponding to the second numbers matching the target number in the first billing data, or the first charging amount being a charging amount of the target number in the first billing data; a second determining module configured to determine a verification result of the target number according to the first charging amount and a charging amount of the target number in the second billing data, the verification result being used to indicate whether the charging of the target number is abnormal.
8. An electronic device, comprising: The device comprises a processor and a memory having computer program instructions stored therein; the processor executes the computer program instructions to implement the steps of the method according to any one of claims 1-5.
9. A computer-readable storage medium, characterized in that, The computer readable storage medium has computer program instructions stored thereon, and the computer program instructions are executed by a processor to implement the steps of the method according to any one of claims 1-5.
Citation Information
Patent Citations
Method and device for checking charge of communication service
CN102075899A
Call ticket reconciliation method and device, electronic equipment and computer storage medium
CN116963003A