Information query method and device, equipment, storage medium and program product
By finding transaction execution paths and node receipt information in the financial system, the problem of remittance progress query of non-GPI message records is solved, and accurate and complete query of any remittance transaction progress is achieved.
Patent Information
- Application Number
- CN202410538920.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-30
- Publication Date
- 2025-01-14
AI Technical Summary
When the existing financial system checks the remittance progress, it is difficult for users to obtain information recorded in non-GPI packets, making it difficult for users to obtain complete remittance progress information.
By finding the message information corresponding to the transaction query request from the database, determining the transaction execution path, and obtaining transaction progress information based on the node receipt information of the execution node, ensuring that the transaction progress can be accurately obtained, even if the execution node does not use GPI messages.
Accurate query of any remittance transaction progress, including GPI and non-GPI message records, improving query efficiency and information integrity.
Smart Images

Figure CN119311725A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the fields of financial technology and artificial intelligence technology, and in particular to an information query method, device, equipment, storage medium and program product. Background Art
[0002] Corporate customers often have a large amount of outbound remittances. For the remitted funds, corporate customers need to check the latest remittance progress in a timely manner through online banking, financial applications, and bank-enterprise interconnection. Usually, the remittance transaction progress information in the GPI (Global Payments Innovation) message is directly queried, but the GPI message has certain limitations. It requires that multiple financial systems involved in the remittance transaction processing have GPI functions in order to directly query the latest remittance progress.
[0003] However, not all financial systems involved in remittance transaction processing use GPI messages, making it difficult for users to query the progress of remittances recorded in non-GPI messages. Summary of the invention
[0004] In view of the above problems, the present disclosure provides an information query method, apparatus, device, storage medium and program product.
[0005] According to the first aspect of the present disclosure, an information query method is provided, comprising: in response to a transaction query request of a user, searching from a database to obtain message information corresponding to the transaction query request; determining a transaction execution path from the message information, wherein the transaction execution path includes at least one execution node, and the execution node is used to execute a transaction subtask according to the subtask execution logic indicated by the transaction execution path. According to the node receipt information of the execution node, the transaction progress information corresponding to the transaction query request is obtained, and the node receipt information represents the progress of the execution node in executing the transaction subtask.
[0006] According to an embodiment of the present disclosure, the transaction query request includes a first transaction identifier. In response to the transaction query request of the user, searching for message information corresponding to the transaction query request from a database includes: matching the first transaction identifier with a second transaction identifier in the database to obtain a target transaction identifier. Determining the message information corresponding to the target transaction identifier as the message information corresponding to the transaction query request.
[0007] According to an embodiment of the present disclosure, the transaction query request also includes the first user attribute information and the first transaction date information. In response to the transaction query request of the user, the message information corresponding to the transaction query request is searched from the database and further includes: when the transaction query request does not include the first transaction identifier, the transaction mapping table is queried according to the first user attribute information and the first transaction date information, and at least one target transaction identifier is determined from the second transaction identifier, and the database includes a query transaction mapping table, and the query transaction mapping table is used to associate and store the second user attribute information, the second transaction date information, and the second transaction identifier in the database. The message information corresponding to each of the at least one target transaction identifier is determined as the message information corresponding to the transaction query request.
[0008] According to an embodiment of the present disclosure, the transaction processing path includes an initiating node, which is used to send a remittance transaction task instruction corresponding to the remittance transaction task to each execution node, and the execution node is used to execute the remittance transaction subtask. The remittance transaction task includes at least one remittance transaction subtask, and the remittance transaction subtasks have an execution dependency relationship.
[0009] According to an embodiment of the present disclosure, obtaining transaction progress information corresponding to the transaction query request based on the node receipt information of the execution node also includes: when the path type of the transaction processing path is a target path type, querying the receipt message information corresponding to each of the multiple execution nodes according to the first transaction identifier to obtain a query result, and the target path type indicates that there are multiple execution nodes in the transaction processing path.
[0010] According to an embodiment of the present disclosure, the method further includes: determining a first execution node with receipt message information when the query result indicates that at least one execution node does not have corresponding receipt message information. Obtaining node receipt information when the first execution node is at a preset position in the transaction processing path.
[0011] According to an embodiment of the present disclosure, the above method also includes: when the first execution node is not at a preset position in the transaction processing path, sending a message query request corresponding to the first transaction identifier to a second execution node that has no receipt message information to obtain node receipt information.
[0012] According to an embodiment of the present disclosure, when the first execution node is not at a preset position of a transaction processing path, a message query request corresponding to a first transaction identifier is sent to a second execution node without receipt message information, and obtaining node receipt information includes: when the first execution node is not at a preset position of the transaction processing path, determining a second execution node without receipt message information. According to the execution dependency relationship between the remittance transaction subtasks, determining a target second execution node from the second execution nodes. Sending a message query request corresponding to the first transaction identifier to the target second execution node, obtaining node receipt information.
[0013] The second aspect of the present disclosure provides an information query device, including: a search module, used to respond to a user's transaction query request and search for message information corresponding to the transaction query request from a database. A determination module, used to determine a transaction execution path from the message information, wherein the transaction execution path includes at least one execution node, and the execution node is used to execute a transaction subtask according to the subtask execution logic indicated by the transaction execution path. An acquisition module, used to obtain transaction progress information corresponding to the transaction query request according to the node receipt information of the execution node, and the node receipt information represents the progress of the execution node in executing the transaction subtask.
[0014] A third aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the above method.
[0015] The fourth aspect of the present disclosure further provides a computer-readable storage medium having an executable computer program stored thereon, which implements the steps of the above method when executed by a processor.
[0016] The fifth aspect of the present disclosure also provides a computer program product, including a computer program, which implements the steps of the above method when executed by a processor.
[0017] According to the information query method, apparatus, device, storage medium and program product provided by the present disclosure, by responding to the user's transaction query request, the message information corresponding to the transaction query request is searched from the database; the transaction execution path is determined from the message information, and the transaction execution path includes at least one execution node, and the execution node is used to execute the transaction subtask according to the subtask execution logic indicated by the transaction execution path; there is business progress information that cannot be directly queried, so according to the node receipt information of the execution node, the transaction progress information corresponding to the transaction query request can be accurately obtained, and the node receipt information represents the progress of the execution node in executing the transaction subtask. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:
[0019] Figure 1 The application scenario diagram of the information query method according to the embodiment of the present disclosure is schematically shown;
[0020] Figure 2 A flowchart of an information query method according to an embodiment of the present disclosure is schematically shown;
[0021] Figure 3 A schematic diagram schematically shows a transaction execution path according to an embodiment of the present disclosure;
[0022] Figure 4 A schematic diagram schematically shows a transaction processing path according to another embodiment of the present disclosure;
[0023] Figure 5 A flowchart schematically illustrates obtaining transaction progress information corresponding to a transaction query request according to node receipt information of an execution node according to another embodiment of the present disclosure;
[0024] Figure 6 A schematic diagram showing a structural block diagram of an information query device according to an embodiment of the present disclosure; and
[0025] Figure 7 A block diagram of an electronic device suitable for implementing an information query method according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION
[0026] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.
[0027] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.
[0028] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification, and should not be interpreted in an idealized or overly rigid manner.
[0029] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).
[0030] In the technical solution of the present disclosure, the user information (including but not limited to user personal information, user image information, user device information, such as location information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved are all information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0031] In the scenario of using personal information for automated decision-making, the methods, devices, and systems provided by the embodiments of the present disclosure provide users with corresponding operation portals for users to choose to agree or reject the automated decision-making results; if the user chooses to reject, the expert decision-making process will be entered. The expression "automated decision-making" here refers to the activity of automatically analyzing and evaluating a person's behavioral habits, interests and hobbies, or economic, health, credit status, etc. through computer programs, and making decisions. The expression "expert decision-making" here refers to the activity of making decisions by people who specialize in a certain field, have specialized experience, knowledge and skills, and have reached a certain level of professionalism.
[0032] Usually, the remittance transaction progress information in the GPI (Global Payments Innovation) message is directly queried, but the GPI message has certain limitations. Multiple financial systems involved in the remittance transaction processing need to have GPI functions to be able to directly query the latest remittance progress.
[0033] However, existing financial systems involved in remittance transaction processing do not necessarily use GPI messages, making it difficult for users to query the remittance progress recorded in non-GPI messages.
[0034] In view of this, an embodiment of the present disclosure provides an information query method, including: in response to a transaction query request of a user, searching from a database to obtain message information corresponding to the transaction query request; determining a transaction execution path from the message information, wherein the transaction execution path includes at least one execution node, and the execution node is used to execute a transaction subtask according to the subtask execution logic indicated by the transaction execution path. According to the node receipt information of the execution node, the transaction progress information corresponding to the transaction query request is obtained, and the node receipt information represents the progress of the execution node in executing the transaction subtask.
[0035] Figure 1 The application scenario diagram of the information query method according to the embodiment of the present disclosure is schematically shown.
[0036] like Figure 1 As shown, the application scenario 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 is used to provide a medium for a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc.
[0037] The user may use at least one of the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications may be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).
[0038] The first terminal device 101, the second terminal device 102, and the third terminal device 103 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.
[0039] The server 105 may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103. The background management server may analyze and process the received data such as user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.
[0040] It should be noted that the information query method provided in the embodiment of the present disclosure can generally be executed by the server 105. Accordingly, the information query device provided in the embodiment of the present disclosure can generally be set in the server 105. The information query method provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Accordingly, the information query device provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105.
[0041] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.
[0042] Figure 2 The flowchart of the information query method according to the embodiment of the present disclosure is schematically shown.
[0043] like Figure 2 As shown, the information query method of this embodiment includes operations S210 to S230.
[0044] In operation S210, in response to a transaction query request from a user, message information corresponding to the transaction query request is searched from a database.
[0045] According to an embodiment of the present disclosure, a transaction query request may be used to query whether a transaction is successful, query the progress of a transaction, or query the storage status of transaction information. A transaction may be a deposit, a transfer, etc. The transaction query request is determined based on the query conditions entered by the user at the front end.
[0046] According to an embodiment of the present disclosure, a database may store historical message information corresponding to a transaction type, where a message is a data unit exchanged and transmitted in a network. Data communication between multiple systems is achieved through message transmission, such as transmitting message information from a financial institution A system to a financial institution B system, and then to a financial institution C system. The message formats may be different in these three systems, but the transmitted message information is the same. For example, the financial institution B system may be in the format of a GPI (Global Payments Innovation) message, which contains transaction progress information. The financial institution C system may be in the format of a TCP (Transmission Control Protocol) message.
[0047] According to an embodiment of the present disclosure, the message information includes data related to the transaction, such as the transaction execution path, subtask execution logic, execution nodes included in the transaction execution path, transaction subtasks executed by the execution nodes, etc.
[0048] In operation S220, a transaction execution path is determined from the message information, the transaction execution path includes at least one execution node, and the execution node is used to execute the transaction subtask according to the subtask execution logic indicated by the transaction execution path.
[0049] Figure 3 A schematic diagram schematically shows a transaction execution path according to an embodiment of the present disclosure.
[0050] like Figure 3 As shown, the A transaction execution path includes an a execution node, a b execution node, a c execution node, and a d execution node. The a execution node, b execution node, c execution node, and d execution node in the figure have corresponding transaction subtasks. The subtask execution logic represents the execution logic relationship between the transaction subtasks corresponding to each execution node. The subtask execution logic indicated by the A transaction execution path can be to execute the transaction subtask corresponding to the a execution node, the transaction subtask corresponding to the b execution node, the transaction subtask corresponding to the c execution node, and the transaction subtask corresponding to the d execution node in sequence.
[0051] According to an embodiment of the present disclosure, the subtask execution logic represents the execution relationship between transaction subtasks. For example, the transaction subtask corresponding to execution node b can only be executed after the transaction subtask corresponding to execution node a is executed.
[0052] According to an embodiment of the present disclosure, the execution node may be any financial institution system, or a user or enterprise client.
[0053] According to an embodiment of the present disclosure, transaction tasks have different stages, and different execution nodes process the stage tasks of the transaction, that is, the stage tasks of the transaction can be transaction subtasks.
[0054] In operation S230, transaction progress information corresponding to the transaction query request is obtained according to the node receipt information of the execution node, and the node receipt information represents the progress of the execution node in executing the transaction subtask.
[0055] According to an embodiment of the present disclosure, the node receipt information may be the processing progress information of the transaction subtask fed back by the execution node to the system that initiated the task. For example, the system that initiated the transaction task may be financial institution A, the transaction task may be to remit money to an enterprise client, and the execution node may be the enterprise client. The enterprise client sends the node receipt information to financial institution A, and the node receipt information may be the enterprise confirming that the remittance has been received. Then the transaction progress information may be the completion of the transaction.
[0056] According to an embodiment of the present disclosure, transaction progress information corresponding to the transaction query request is obtained by analyzing the node receipt information of each execution node.
[0057] For example, the node receipt information of each execution node is input into the prediction model to predict the next transaction subtask or the next execution node. The prediction model can be trained based on the node receipt information of each historical execution node. The prediction model can be a linear regression model.
[0058] For example, the execution node with the node receipt information is analyzed according to the subtask execution logic to obtain the transaction progress information corresponding to the transaction query request.
[0059] According to an embodiment of the present disclosure, by responding to a transaction query request from a user, message information corresponding to the transaction query request is searched from a database; a transaction execution path is determined from the message information, the transaction execution path includes at least one execution node, and the execution node is used to execute the transaction subtask according to the subtask execution logic indicated by the transaction execution path; there is business progress information that cannot be directly queried, so that the transaction progress information corresponding to the transaction query request can be accurately obtained based on the node receipt information of the execution node, and the node receipt information represents the progress of the execution node in executing the transaction subtask.
[0060] According to an embodiment of the present disclosure, the transaction query request includes a first transaction identifier. In response to the transaction query request of the user, searching for message information corresponding to the transaction query request from a database includes: matching the first transaction identifier with a second transaction identifier in the database to obtain a target transaction identifier. Determining the message information corresponding to the target transaction identifier as the message information corresponding to the transaction query request.
[0061] According to an embodiment of the present disclosure, in response to a transaction query request from a user, the transaction query request is parsed to obtain transaction query request information; based on the transaction query request information, message information corresponding to the transaction request query is searched from the database.
[0062] According to an embodiment of the present disclosure, the user is verified based on the user attribute verification information in the database to obtain a verification result; when the matching result indicates that the user verification is passed, the query transaction request is parsed to obtain transaction query request information. The user attribute verification information can be a user ID (Identity document), such as a user account name, a user unique code, etc. The user attribute verification information can also be a user fingerprint, a face, a verification password, etc.
[0063] According to the embodiments of the present disclosure, by verifying the user attribute verification information before accessing the database information, the information security in the query process is improved.
[0064] Before storing the user attribute verification information in the database, the user's consent or authorization may be obtained. For example, before storing the user attribute verification information in the database, a request to obtain the user attribute verification information may be issued to the user. If the user agrees or authorizes to obtain the user attribute verification information, the user attribute verification information is stored.
[0065] According to an embodiment of the present disclosure, the first transaction identifier may be a transaction code queried by a user, and the transaction code may be a unique identifier of a transaction task.
[0066] According to an embodiment of the present disclosure, the second transaction identifier may be a historical transaction code stored in a database.
[0067] According to an embodiment of the present disclosure, by matching the first transaction identifier with the second transaction identifier in the database, a target transaction identifier that matches the transaction query request is obtained; and the message information corresponding to the target transaction identifier is determined as the message information corresponding to the transaction query request, the message information corresponding to the transaction query request can be quickly screened out from the database, thereby improving the query efficiency.
[0068] According to an embodiment of the present disclosure, the transaction query request also includes the first user attribute information and the first transaction date information. In response to the transaction query request of the user, the message information corresponding to the transaction query request is searched from the database and further includes: when the transaction query request does not include the first transaction identifier, the transaction mapping table is queried according to the first user attribute information and the first transaction date information, and at least one target transaction identifier is determined from the second transaction identifier, and the database includes a query transaction mapping table, and the query transaction mapping table is used to associate and store the second user attribute information, the second transaction date information, and the second transaction identifier in the database. The message information corresponding to each of the at least one target transaction identifier is determined as the message information corresponding to the transaction query request.
[0069] According to an embodiment of the present disclosure, a transaction query request may be generated based on a user's operation on the front end. For example, when a user provides condition information for a transaction query and selects the query condition information on the front end and clicks a query button, a transaction query request is generated and sent.
[0070] The query condition information includes the date range, the first user attribute information, and the first transaction identifier. The date range supports the selection of the start date and end date of the transaction. The default is the last N days (such as 3 days), where N is an integer greater than or equal to 1. The first user attribute information is a drop-down option. The first user attribute information in the option list is the user ID (such as user account name, user unique code, etc.) for which the user has query authority. It supports selecting all or selecting one or several user IDs. The default is empty. The first transaction identifier is the first transaction identifier (transaction code, such as the remittance business code) corresponding to the message after the transaction instruction is successfully submitted. It supports the input of multiple first transaction identification numbers, which are separated by fixed delimiters such as "," and "|". The default is empty.
[0071] The front end verifies the query condition information entered by the user. If the user enters the first transaction identifier, it queries the user ID (such as the user's payment account) corresponding to the first transaction identifier in the corresponding database of the channel (online banking, financial applications, bank-enterprise interconnection, etc.) through an asynchronous request and determines whether the user has the right to query the first transaction identifier. If not, the user is prompted that he has no right to query the transaction task information corresponding to the first transaction identifier.
[0072] After the user selects the query condition information and clicks the query button, the front end will splice the start date, end date, first user attribute information, and first transaction identifier to obtain collection information, and then generate a transaction query request based on the collection information.
[0073] According to the embodiment of the present disclosure, it is first determined whether the first transaction identifier is empty, and if it is not empty, the first transaction identifier is parsed, and then the first transaction identifier is directly matched with the second transaction identifier in the database to obtain the target transaction identifier. The message information corresponding to the target transaction identifier is determined as the message information corresponding to the transaction query request.
[0074] According to the embodiment of the present disclosure, when the transaction query request does not include the first transaction identifier, the first user attribute information is parsed to obtain multiple user IDs. The transaction mapping table is queried according to each user ID and the date range corresponding to the user ID, at least one target transaction identifier is determined from the second transaction identifier, all first transaction identifiers that meet the conditions are found, and then the transaction progress information is queried according to the first transaction identifier.
[0075] For example, a transaction task can be a remittance transaction task. Regularly scan the databases of various channels (online banking, financial applications, bank-enterprise interconnection, etc.), query the latest successfully submitted remittance transaction tasks that have not been scanned, extract the corresponding data and store them according to the rules, so that the corresponding second transaction identifier can be quickly filtered out according to the query conditions. There must be a field in the database to identify whether the remittance transaction task has been scanned, and the field identifier can be modified to indicate that the remittance transaction task has been scanned. The scanning process needs to extract the date range of the remittance transaction task, the first user attribute information, and the corresponding first transaction identifier for storage.
[0076] The specific storage process is as follows: first, a transaction mapping table is established in the database, and the transaction mapping table contains fields corresponding to the first user attribute information, the submission date field in the date range, and the first transaction identification field. The transaction mapping table uses the first user attribute information and the submission date as a joint index. For the scanned remittance transaction tasks, the remittance transaction tasks are first grouped according to the first user attribute information and the submission date, and then the first transaction identification of each group is merged into a long string, and each first transaction identification is divided by a fixed separator such as "," "|". After the grouping and merging are completed, each group of remittance transaction tasks is inserted into the database table for storage in turn. In order to improve the query efficiency, the remittance transaction tasks are cleaned up regularly (such as weekly, etc.), and the data of M days (such as 30 days, etc.) before the current date are cleaned up, and only the data of the most recent M days are retained, where M is an integer greater than or equal to 1.
[0077] According to an embodiment of the present disclosure, when the transaction query request does not include the first transaction identifier, the transaction mapping table is queried according to the first user attribute information and the first transaction date information, and at least one target transaction identifier is determined from the second transaction identifier. The message information corresponding to each of the at least one target transaction identifier is determined as the message information corresponding to the transaction query request, so that the message information corresponding to the transaction query request can be accurately obtained according to the transaction query request in different situations, such as batch query and the transaction query request does not include the first transaction identifier.
[0078] According to an embodiment of the present disclosure, the transaction processing path includes an initiating node, which is used to send a remittance transaction task instruction corresponding to the remittance transaction task to each execution node, and the execution node is used to execute the remittance transaction subtask. The remittance transaction task includes at least one remittance transaction subtask, and the remittance transaction subtasks have an execution dependency relationship.
[0079] Figure 4 A schematic diagram of a transaction processing path according to another embodiment of the present disclosure is schematically shown.
[0080] like Figure 4As shown, the transaction execution path B includes an initiating node, an execution node f, an execution node g and an execution node h. The initiating node in the figure sends a remittance transaction task instruction corresponding to the remittance transaction task to each execution node. The remittance transaction task includes at least one remittance transaction subtask.
[0081] The f execution node, the g execution node, and the h execution node have corresponding remittance transaction subtasks. The execution dependency relationship represents the execution logic relationship between the remittance transaction subtasks. The execution dependency relationship can be the remittance transaction subtask corresponding to the f execution node, the remittance transaction subtask corresponding to the g execution node, and the remittance transaction subtask corresponding to the h execution node.
[0082] According to an embodiment of the present disclosure, obtaining transaction progress information corresponding to the transaction query request based on the node receipt information of the execution node also includes: when the path type of the transaction processing path is a target path type, querying the receipt message information corresponding to each of the multiple execution nodes according to the first transaction identifier to obtain a query result, and the target path type indicates that there are multiple execution nodes in the transaction processing path.
[0083] like Figure 4 The transaction processing path shown has multiple execution nodes, and the type of this transaction processing path is a target path type.
[0084] According to the embodiments of the present disclosure, the query result can reflect the receipt message information of each execution node. The receipt message information can be the progress information of the sub-transaction task fed back to the initiating node by the execution node after the initiating node sends the message query request to the execution node.
[0085] GPI is a general communication protocol, mainly used for data exchange between embedded devices. In GPI communication, UTER (Unique Transaction Identifier) is used to track and manage transactions during the communication process. In GPI communication, each data packet carries a UTER. The receiver can use this UTER to confirm whether the received data packet has been processed or whether it needs to be retransmitted.
[0086] For example, taking the remittance transaction task as an example, usually according to the first transaction identifier, detailed receipt message information is queried in the business platform, and the receipt message information is judged according to the message type field whether it is a GPI message. Because the function of the GPI message includes recording transaction task progress information. If it is a GPI message, it is judged whether the remittance is a point-to-point remittance (point-to-point remittance only involves one execution node, and the path type of the transaction processing path of the point-to-point remittance is not the target path type), then the progress information of the remittance transaction task is queried in the SWIFT GPI network according to the UTER information of the GPI message. If it is a transfer remittance (transfer remittance involves multiple execution nodes, and the path type of the transaction processing path of the transfer remittance is the target path type), then the progress information of each execution node of the transfer remittance is queried in the SWIFT GPI network according to the UTER information of the GPI message, to obtain the progress information of the remittance transaction task.
[0087] However, there are execution nodes that do not use the GPI message format and cannot accurately obtain the processing progress of transaction tasks.
[0088] Therefore, it is proposed to obtain the transaction progress information corresponding to the transaction query request according to the node receipt information of the execution node.
[0089] Taking the remittance transaction task as an example, when the path type of the transaction processing path is not the target path type, that is, there is only one execution node in the transaction processing path. If the receipt message information of the execution node is queried according to the first transaction identifier, the node receipt information is determined from the receipt message information, and the node receipt information represents the progress of the execution node in executing the sub-transaction task. If the format of the message information is a non-GPI message format, it is determined whether the remittance is a point-to-point remittance according to the message information. If it is a point-to-point remittance, the receipt message information of the initiating node is queried in the SWIFT network according to the first transaction identifier. If it is not received, the message query request corresponding to the first transaction identifier is actively sent to the initiating node, and then the receipt message information fed back for the above message query request is received, and the progress information of the remittance transaction task is determined from the receipt message information.
[0090] Taking the remittance transfer transaction task as an example, the receipt message information of the execution node is queried in the SWIFT network in sequence according to the path type of the transaction processing path and the first transaction identifier. If the receipt message information of the execution node is not received, a message query request for the remittance transaction task is actively sent to the execution node, and the receipt message information fed back by the message query request is received. The transaction progress information corresponding to the transaction query request is determined according to the receipt message information corresponding to each of the multiple execution nodes. The receipt message information can be ACK (indicating confirmation that the remittance has been received), ACSC (indicating that the processing for the remittance has been completed), ACSP (indicating that the remittance has been transferred to the next execution node), etc.
[0091] According to an embodiment of the present disclosure, when the path type of the transaction processing path is not the target path type, the transaction progress information corresponding to the transaction query request can be directly determined from the receipt message information of the execution node, thereby improving the query efficiency.
[0092] According to an embodiment of the present disclosure, the method further includes: determining a first execution node with receipt message information when the query result indicates that at least one execution node does not have corresponding receipt message information. Obtaining node receipt information when the first execution node is at a preset position in the transaction processing path.
[0093] According to an embodiment of the present disclosure, the preset position is characterized at the end of the transaction processing path. Figure 4 The position corresponding to the h execution node is shown. The h execution node has the receipt message information, and the node receipt information can be directly determined from the receipt message information of the h execution node, that is, the h execution node processes the processing progress of the remittance transaction subtask corresponding to the h execution node, and the processing progress of the remittance transaction subtask corresponding to the h execution node is determined as the transaction progress information corresponding to the transaction query request.
[0094] According to an embodiment of the present disclosure, when the query result indicates that there is at least one execution node without corresponding receipt message information, the first execution node with receipt message information is determined. When the first execution node is at a preset position in the transaction processing path, the node receipt information is obtained, which can avoid traversing the receipt message information of all execution nodes and then determining the transaction progress information corresponding to the transaction query request, simplifying the query logic and improving the query response performance.
[0095] According to an embodiment of the present disclosure, the above method also includes: when the first execution node is not at a preset position in the transaction processing path, sending a message query request corresponding to the first transaction identifier to a second execution node that has no receipt message information to obtain node receipt information.
[0096] According to the embodiments of the present disclosure, in order to avoid the situation where the execution node fails to send the receipt message information in time within the feedback time limit due to system problems, a message query request corresponding to the first transaction identifier is sent to the second execution node that does not have the receipt message information, and the receipt message information that each execution node can feedback is confirmed, so as to accurately obtain the node receipt information, and then determine the transaction progress information corresponding to the transaction query request.
[0097] According to an embodiment of the present disclosure, when the first execution node is not at a preset position of a transaction processing path, a message query request corresponding to a first transaction identifier is sent to a second execution node without receipt message information, and obtaining node receipt information includes: when the first execution node is not at a preset position of the transaction processing path, determining a second execution node without receipt message information. According to the execution dependency relationship between the remittance transaction subtasks, determining a target second execution node from the second execution nodes. Sending a message query request corresponding to the first transaction identifier to the target second execution node, obtaining node receipt information.
[0098] like Figure 4 As shown, the execution dependency relationship between the remittance transaction subtasks is the remittance transaction subtask corresponding to the execution node f, the remittance transaction subtask corresponding to the execution node g, and the remittance transaction subtask corresponding to the execution node h. If the execution node f and the execution node h are the second execution nodes without receipt message information, but the execution node g is the first execution node with receipt message information, then the execution node h can be directly determined as the target second execution node.
[0099] Taking point-to-point remittance in a remittance transaction task as an example, the node receipt information may include that it is being processed by the financial institution, has arrived at the receiving institution, and has been credited to the account.
[0100] Taking the midpoint transfer remittance in a remittance transaction task as an example, the node receipt information may include that the financial institution is processing, has arrived at the intermediate financial institution, has arrived at the receiving institution, and has been credited to the account.
[0101] The transaction task information corresponding to the transaction query request can be parsed and displayed, and the message date, remarks, remittance progress, etc. can be extracted and displayed in a list according to the first transaction identifier. At the same time, a hyperlink query of the message is also provided. The remittance progress field displays a hyperlink of the latest status of the message. After clicking, a progress bar can be displayed, which can display the transaction processing status of each execution node.
[0102] It supports corporate users to query the remittance progress more flexibly, either by remittance business number (first transaction identifier) or by account number and date, etc., and query the message information after matching the business number through the instruction mapping table to improve query efficiency. At the same time, regardless of whether each execution node in the transaction processing path supports the GPI message format, the progress of different remittance message types can be more comprehensively queried.
[0103] Figure 5 A flowchart is schematically shown for obtaining transaction progress information corresponding to a transaction query request based on node receipt information of an execution node according to another embodiment of the present disclosure.
[0104] like Figure 5As shown, obtaining the transaction progress information corresponding to the transaction query request according to the node receipt information of the execution node includes operations S501 to S512.
[0105] In operation S501, a transaction execution path is determined from message information.
[0106] In operation S502, it is determined whether the path type of the transaction processing path is the target path type. If so, operation S503 is executed; if not, operation S504 is executed.
[0107] In operation S503, node receipt information is obtained according to node receipt information of an execution node included in the transaction processing path.
[0108] In operation S504, node receipt information corresponding to each of the plurality of execution nodes is queried according to the first transaction identifier to obtain a query result.
[0109] In operation S505, it is determined whether the query result indicates that there is at least one execution node without corresponding receipt message information. If so, operation S507 is executed; if not, operation S506 is executed.
[0110] In operation S506, node receipt information is obtained according to the node receipt information corresponding to each of the plurality of execution nodes included in the transaction processing path.
[0111] In operation S507, a first execution node having receipt message information is determined.
[0112] In operation S508, it is determined whether the first execution node is at a preset position of the transaction processing path. If so, operation S509 is executed; if not, operation S510 is executed.
[0113] In operation S509, node receipt information is determined from the receipt message information corresponding to the first execution node at the preset position.
[0114] In operation S510, a second execution node having no receipt message information is determined.
[0115] In operation S511, a target second execution node is determined from the second execution nodes according to the execution dependency relationship between the remittance transaction subtasks.
[0116] In operation S512, a message query request corresponding to the first transaction identifier is sent to the target second execution node to obtain node receipt information.
[0117] Figure 6 The structural block diagram of the information query device according to the embodiment of the present disclosure is schematically shown.
[0118] like Figure 6As shown, the information query device 600 of this embodiment includes a searching module 610 , a first determining module 620 and a first obtaining module 630 .
[0119] The search module 610 is used to respond to the transaction query request of the user and search the database for message information corresponding to the transaction query request. In one embodiment, the search module 610 can be used to perform the operation S210 described above, which will not be described in detail here.
[0120] The first determination module 620 is used to determine the transaction execution path from the message information, the transaction execution path includes at least one execution node, and the execution node is used to execute the transaction subtask according to the subtask execution logic indicated by the transaction execution path. In one embodiment, the determination module 620 can be used to perform the operation S220 described above, which will not be repeated here.
[0121] The first obtaining module 630 is used to obtain the transaction progress information corresponding to the transaction query request according to the node receipt information of the execution node, and the node receipt information represents the progress of the execution node in executing the transaction subtask. In one embodiment, the obtaining module 630 can be used to perform the operation S230 described above, which will not be repeated here.
[0122] According to an embodiment of the present disclosure, the transaction query request includes a first transaction identifier. The search module 610 includes a matching submodule and a first determination submodule. The matching submodule is used to match the first transaction identifier with the second transaction identifier in the database to obtain a target transaction identifier. The determination submodule is used to determine the message information corresponding to the target transaction identifier as the message information corresponding to the transaction query request.
[0123] According to an embodiment of the present disclosure, the transaction query request also includes the first user attribute information and the first transaction date information. The search module 610 also includes a first query submodule and a second determination submodule. The query submodule is used to query the transaction mapping table according to the first user attribute information and the first transaction date information when the transaction query request does not include the first transaction identifier, and determine at least one target transaction identifier from the second transaction identifier. The database includes a query transaction mapping table, and the query transaction mapping table is used to associate and store the second user attribute information, the second transaction date information, and the second transaction identifier in the database. The second determination submodule is used to determine the message information corresponding to each of the at least one target transaction identifier as the message information corresponding to the transaction query request.
[0124] According to an embodiment of the present disclosure, the transaction processing path includes an initiating node, which is used to send a remittance transaction task instruction corresponding to the remittance transaction task to each execution node, and the execution node is used to execute the remittance transaction subtask. The remittance transaction task includes at least one remittance transaction subtask, and the remittance transaction subtasks have an execution dependency relationship.
[0125] According to an embodiment of the present disclosure, the acquisition module 630 further includes a second query submodule. The second query submodule is used to query the receipt message information corresponding to each of the multiple execution nodes according to the first transaction identifier when the path type of the transaction processing path is a target path type, and obtain a query result, wherein the target path type indicates that there are multiple execution nodes in the transaction processing path.
[0126] According to an embodiment of the present disclosure, the above-mentioned device further includes a second determination module and a second acquisition module. The second determination module is used to determine the first execution node with receipt message information when the query result indicates that there is at least one execution node without corresponding receipt message information. The second acquisition module is used to obtain the node receipt information when the first execution node is at a preset position in the transaction processing path.
[0127] According to an embodiment of the present disclosure, the device further includes a sending module, which is used to send a message query request corresponding to the first transaction identifier to a second execution node without receipt message information to obtain node receipt information when the first execution node is not at a preset position in the transaction processing path.
[0128] According to an embodiment of the present disclosure, the sending module includes a third determining submodule, a fourth determining submodule and a sending submodule. The third determining submodule is used to determine the second execution node without receipt message information when the first execution node is not in a preset position of the transaction processing path. The fourth determining submodule is used to determine the target second execution node from the second execution nodes according to the execution dependency relationship between the remittance transaction subtasks. The sending submodule is used to send a message query request corresponding to the first transaction identifier to the target second execution node to obtain the node receipt information.
[0129] It should be noted that the information query device part in the embodiment of the present disclosure corresponds to the information query method part in the embodiment of the present disclosure. The description of the information query device part specifically refers to the information query method part, which will not be repeated here.
[0130] According to an embodiment of the present disclosure, any multiple modules in the search module 610, the first determination module 620 and the first acquisition module 630 can be combined in one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the search module 610, the first determination module 620 and the first acquisition module 630 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware and firmware or in any appropriate combination of any of them. Alternatively, at least one of the search module 610, the first determination module 620 and the first acquisition module 630 can be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding function can be executed.
[0131] Figure 7 A block diagram of an electronic device suitable for implementing an information query method according to an embodiment of the present disclosure is schematically shown.
[0132] like Figure 7 As shown, the electronic device 700 according to an embodiment of the present disclosure includes a processor 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage part 708 into a random access memory (RAM) 703. The processor 701 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 701 may also include an onboard memory for caching purposes. The processor 701 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0133] In RAM 703, various programs and data required for the operation of electronic device 700 are stored. Processor 701, ROM 702 and RAM 703 are connected to each other via bus 704. Processor 701 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 702 and / or RAM 703. It should be noted that the program can also be stored in one or more memories other than ROM 702 and RAM 703. Processor 701 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.
[0134] According to an embodiment of the present disclosure, the electronic device 700 may further include an input / output (I / O) interface 705, which is also connected to the bus 704. The electronic device 700 may further include one or more of the following components connected to the input / output (I / O) interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 708 including a hard disk, etc.; and a communication portion 709 including a network interface card such as a LAN card, a modem, etc. The communication portion 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the input / output (I / O) interface 705 as needed. A removable medium 711, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.
[0135] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.
[0136] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus or a device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 702 and / or RAM 703 described above and / or one or more memories other than ROM 702 and RAM 703.
[0137] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the information query method provided by the embodiment of the present disclosure.
[0138] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 701. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.
[0139] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 709, and / or installed from the removable medium 711. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0140] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.
[0141] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).
[0142] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0143] It will be appreciated by those skilled in the art that the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations and / or combinations are not explicitly described in the present disclosure. In particular, the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways without departing from the spirit and teachings of the present disclosure. All of these combinations and / or combinations fall within the scope of the present disclosure.
[0144] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above separately, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. The scope of the present disclosure is defined by the attached claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.
Claims
1. An information query method, characterized in that: The method comprises: In response to a transaction query request from a user, searching a database for message information corresponding to the transaction query request; Determine a transaction execution path from the message information, wherein the transaction execution path includes at least one execution node, and the execution node is used to execute a transaction subtask according to a subtask execution logic indicated by the transaction execution path; According to the node receipt information of the execution node, the transaction progress information corresponding to the transaction query request is obtained, and the node receipt information represents the progress of the execution node in executing the transaction subtask.
2. The method according to claim 1, characterized in that The transaction query request includes a first transaction identifier; In response to the transaction query request of the user, searching from the database for message information corresponding to the transaction query request includes: In response to the transaction query request of the user, matching the first transaction identifier with a second transaction identifier in the database to obtain a target transaction identifier; The message information corresponding to the target transaction identifier is determined as the message information corresponding to the transaction query request.
3. The method according to claim 2, characterized in that The transaction query request also includes first user attribute information and first transaction date information; In response to the transaction query request of the user, searching from the database for message information corresponding to the transaction query request also includes: In the case where the transaction query request does not include the first transaction identifier, querying a transaction mapping table according to the first user attribute information and the first transaction date information, determining at least one target transaction identifier from the second transaction identifier, the database including the query transaction mapping table, the query transaction mapping table being used to associate and store the second user attribute information, the second transaction date information, and the second transaction identifier in the database; The message information corresponding to each of the at least one target transaction identifier is determined as the message information corresponding to the transaction query request.
4. The method according to claim 1, characterized in that The transaction processing path includes an initiating node, which is used to send a remittance transaction task instruction corresponding to the remittance transaction task to each execution node, and the execution node is used to execute a remittance transaction subtask. The remittance transaction task includes at least one remittance transaction subtask, and the remittance transaction subtasks have an execution dependency relationship.
5. The method according to claim 1, characterized in that The obtaining, according to the node receipt information of the execution node, the transaction progress information corresponding to the transaction query request further includes: In the case where the path type of the transaction processing path is a target path type, the receipt message information corresponding to each of the plurality of execution nodes is queried according to the first transaction identifier to obtain a query result, and the target path type indicates that there are a plurality of execution nodes in the transaction processing path.
6. The method according to claim 5, characterized in that The method further comprises: In a case where the query result indicates that there is at least one of the execution nodes without the corresponding receipt message information, determining a first execution node having the receipt message information; When the first execution node is at a preset position of the transaction processing path, the node receipt information is obtained.
7. The method according to claim 6, characterized in that The method further comprises: When the first execution node is not at a preset position of the transaction processing path, a message query request corresponding to the first transaction identifier is sent to a second execution node that does not have the receipt message information to obtain the node receipt information.
8. The method according to claim 7, characterized in that When the first execution node is not at the preset position of the transaction processing path, sending a message query request corresponding to the first transaction identifier to a second execution node that does not have the receipt message information, and obtaining the node receipt information includes: In the case where the first execution node is not at the preset position of the transaction processing path, determining a second execution node that does not have the receipt message information; Determining the target second execution node from the second execution nodes according to the execution dependency relationship between the remittance transaction subtasks; Send a message query request corresponding to the first transaction identifier to the target second execution node to obtain the node receipt information.
9. An information query device, characterized in that: The device comprises: A search module, used to respond to a transaction query request from a user and search for message information corresponding to the transaction query request from a database; A first determination module, configured to determine a transaction execution path from the message information, wherein the transaction execution path includes at least one execution node, and the execution node is configured to execute a transaction subtask according to a subtask execution logic indicated by the transaction execution path; The first obtaining module is used to obtain the transaction progress information corresponding to the transaction query request according to the node receipt information of the execution node, wherein the node receipt information represents the progress of the execution node in executing the transaction subtask.
10. An electronic device, comprising: one or more processors; a memory for storing one or more computer programs, The method is characterized in that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 8.
11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.
12. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.