Virtual resource transfer method and device, computer equipment, readable storage medium and program product

By judging the timestamp and transfer type during the virtual resource transfer process, waiting for the batch resource transfer results, and performing security verification and difference processing in the intermediate resource pool, the problem of data operation errors in virtual resource transfer is solved, and more accurate and secure resource transfer is achieved.

CN120655284APending Publication Date: 2025-09-16IND CONSUMER FINANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510565657.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-30
Publication Date
2025-09-16

AI Technical Summary

Technical Problem

In the prior art, during the virtual resource transfer process, there is a problem of multiple operations resulting from batch processing failure, which leads to data operation errors.

Method used

By receiving virtual resource transfer instructions, determining whether the timestamp and transfer type are within the preset range, waiting for the batch resource transfer results, and executing the transfer operation based on the comparison results of the target transfer amount and the amount of resources to be transferred, the intermediate resource pool is introduced for security verification and difference processing.

Benefits of technology

It avoids repeated operations and computing overhead caused by separate resource transfers, improves the accuracy and security of resource transfers, and reduces transaction conflicts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120655284A_ABST
    Figure CN120655284A_ABST
Patent Text Reader

Abstract

The invention relates to a virtual resource transfer method and device, computer equipment, a computer readable storage medium and a computer program product. The method comprises the following steps: receiving a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type and a to-be-transferred virtual resource, and the virtual resource transfer instruction is used for indicating a system to transfer the to-be-transferred virtual resource to a target resource pool; when the timestamp belongs to a preset virtual resource transfer time range and the transfer type is a target transfer type, waiting for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of a batch resource transfer task of the system; and when the to-be-transferred virtual resources do not have the corresponding batch resource transfer result, performing a transfer operation on the to-be-transferred virtual resources according to a comparison result between the target transfer amount and the resource amount of the to-be-transferred virtual resources. By adopting the method, data operation errors can be avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a virtual resource transfer method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Art

[0002] In virtual resource management systems, the transfer of virtual resources is a common operation, usually involving the migration from one resource pool to another. In this case, the system needs to ensure the accuracy and timeliness of the transfer process and the efficient scheduling of resources.

[0003] In the existing technology, resource transfer is usually carried out by timed batch processing. Although batch processing can improve efficiency, it may still trigger additional separate transfer operations when resources fail to successfully match batch tasks, causing the system to execute multiple resource transfer requests. Due to the existence of multiple operations, data operation errors may occur. Summary of the Invention

[0004] Based on this, it is necessary to provide a virtual resource transfer method, apparatus, computer equipment, computer-readable storage medium and computer program product that can avoid data operation errors in order to address the above technical problems.

[0005] In a first aspect, the present application provides a virtual resource transfer method, comprising:

[0006] Receive a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool;

[0007] When the timestamp falls within the preset virtual resource transfer time range and the transfer type is a target transfer type, waiting for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of a system batch resource transfer task;

[0008] When there is no corresponding batch resource transfer result for the virtual resource to be transferred, a transfer operation is performed on the virtual resource to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred.

[0009] In one embodiment, the virtual resource transfer instruction also carries an initial transfer channel; after receiving the virtual resource transfer instruction, the method further includes:

[0010] The initial transfer channel is called to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0011] In one embodiment, before calling the initial transfer channel to transfer the virtual resource to be transferred from the original resource pool to the intermediate resource pool, the method further includes:

[0012] Obtaining an access token corresponding to the initial transfer channel;

[0013] Decrypting the access token to obtain channel decryption information;

[0014] Obtaining preset channel information from the cloud, and comparing the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token;

[0015] If the access token is valid, the step of calling the initial transfer channel to transfer the virtual resource to be transferred from the original resource pool to the intermediate resource pool is continued.

[0016] In one embodiment, performing a transfer operation on the virtual resource to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred includes:

[0017] When the resource amount of the to-be-transferred virtual resources is equal to the target transfer amount, transferring the to-be-transferred virtual resources from the intermediate resource pool to the target resource pool;

[0018] When the amount of the virtual resources to be transferred is greater than the target transfer amount, calculating the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount, and calling the initial transfer channel to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and transferring the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool;

[0019] When the resource amount of the virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are moved from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified according to the reverse difference virtual resources.

[0020] In one embodiment, the method further comprises:

[0021] When the virtual resources to be transferred have corresponding batch resource transfer results, the initial transfer channel is called to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

[0022] In one embodiment, after calling the initial transfer channel to transfer the virtual resources to be transferred to the intermediate resource pool, the method further includes:

[0023] Marking the resource state corresponding to the to-be-transferred virtual resource as a first identifier; the first identifier indicates that the to-be-transferred virtual resource is not transferable;

[0024] After calling the initial transfer channel to transfer the positive difference virtual resource from the intermediate resource pool to the original resource pool, the method further includes:

[0025] The resource status corresponding to the to-be-transferred virtual resource is marked as a second identifier; the second identifier indicates that the to-be-transferred virtual resource has been returned.

[0026] In a second aspect, the present application provides a virtual resource transfer device, the device comprising:

[0027] A receiving module, configured to receive a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool;

[0028] A judgment module is configured to, when the timestamp falls within a preset virtual resource transfer time range and the transfer type is a target transfer type, wait for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of a system batch resource transfer task;

[0029] The transfer module is configured to, when there is no corresponding batch resource transfer result for the virtual resource to be transferred, perform a transfer operation on the virtual resource to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred.

[0030] In a third aspect, the present application provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.

[0031] In a fourth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the above method when executed by a processor.

[0032] In a fifth aspect, the present application provides a computer program product, comprising a computer program, which implements the steps of the above method when executed by a processor.

[0033] The aforementioned virtual resource transfer method, apparatus, computer device, computer-readable storage medium, and computer program product, after receiving a virtual resource transfer instruction, need to determine whether the virtual transfer time corresponding to the virtual resource transfer instruction is within a preset virtual resource transfer time range based on the timestamp carried by the virtual resource transfer instruction, and determine whether the transfer type is the target transfer type based on the transfer type carried by the virtual resource transfer instruction. When the timestamp is within the preset virtual resource transfer time range and the transfer type is the target transfer type, it is necessary to wait for the task result of the system batch resource transfer task. This can avoid the repeated operations, additional computing overhead, and possible transaction conflicts caused by individual resource transfers. Subsequently, the corresponding resource transfer operation is executed based on the comparison result between the task result and the target transfer amount, thereby ensuring the accuracy of the resource transfer. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments of the present application or related technical descriptions. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying any creative work.

[0035] Figure 1 A diagram illustrating an application environment of a virtual resource transfer method in one embodiment;

[0036] Figure 2 1 is a flow chart of a virtual resource transfer method according to an embodiment;

[0037] Figure 3 is a flowchart of a virtual resource transfer method according to another embodiment;

[0038] Figure 4 is a structural block diagram of a virtual resource transfer device in one embodiment;

[0039] Figure 5 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0040] In order to make the purpose, technical solutions and advantages of this application more clearly understood, the present application is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0041] The virtual resource transfer method provided in the embodiment of the present application can be applied to Figure 1In the application environment shown. Among them, the client 102 calls the network to communicate with the server 104. The data storage system can store the data that the service client 104 needs to process. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other network servers. The client 102 sends a virtual resource transfer instruction to the server 104. After receiving the virtual resource transfer instruction, the server 104 determines whether the timestamp is within the preset virtual resource transfer time range and whether the transfer type is the target transfer type based on the timestamp carried by the virtual resource transfer instruction. When the timestamp is within the preset virtual resource transfer time range and the transfer type is the target transfer type, wait for the batch resource transfer result corresponding to the preset virtual resource transfer time range; wherein the batch resource transfer result is the task result of the system batch resource transfer task. When there is no corresponding batch resource transfer result for the virtual resource to be transferred, the transfer operation is performed on the virtual resource to be transferred based on the comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred. The terminal 102 may include, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices may include smart speakers, smart TVs, smart air conditioners, smart car devices, projectors, and the like. Portable wearable devices may include smart watches, smart bracelets, head-mounted devices, and the like. Head-mounted devices may include virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, and the like. The server 104 may be an independent physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server providing cloud computing services.

[0042] In an exemplary embodiment, Figure 2 As shown, a virtual resource transfer method is provided, which is applied to Figure 1 The server 104 in FIG. 1 is taken as an example to illustrate the process, including the following steps 202 to 206. Among them:

[0043] Step 202: Receive a virtual resource transfer instruction. The virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred. The virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool.

[0044] Among them, virtual resources may include but are not limited to at least one of account values, funds, virtual image products, virtual recharge cards, game equipment, virtual currency and cryptocurrency, etc.

[0045] The transfer type identifies the specific operation method or business model used during the virtual resource transfer process. Different transfer types determine the resource flow rules, priority, and possible processing logic. For example, some transfer types may be suitable for batch processing, while others require immediate execution. For example, it can also indicate that the transfer was initiated by the user.

[0046] Optionally, the server receives the virtual resource transfer instruction sent by the client, and parses the core fields included therein, such as the timestamp, the transfer type, and the virtual resource to be transferred.

[0047] For example, in a financial scenario, the server receives a command that includes the following fields:

[0048] “zjms”: “2” (Funding mode: 2 represents active repayment)

[0049] “zfpt”: “wechatpay” (payment platform: wechatpay represents WeChat platform or alipay represents Alipay platform)

[0050] “hkje”: “800.00” (repayment amount: 800.00 yuan, representing the amount entered by the user when repaying)

[0051] “hkrq”: “YYYY-MM-DD” (Repayment date: 2025-03-15, the date the system sends this instruction)

[0052] “hksj”: “hh:mm:ss” (Repayment time: 04:10:00, the time the system sends this instruction)

[0053] In the cloud storage space allocation scenario, the server receives a command that includes the following fields:

[0054] zjms=4 indicates the cloud storage resource adjustment mode.

[0055] zfpt=cloud means the transfer takes place on a cloud storage platform.

[0056] hkje=50 represents the adjusted storage capacity (50GB).

[0057] hkrq and hksj represent the time of the operation.

[0058] Step 204 , when the timestamp is within the preset virtual resource transfer time range and the transfer type is the target transfer type, wait for the batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is the task result of the system batch resource transfer task.

[0059] Optionally, the server reads the timestamp from the instruction and compares it with a preset virtual resource transfer time range. It also compares the transfer type with the target transfer type. If the timestamp corresponding to the virtual resource transfer instruction falls within the preset virtual resource transfer time range and the transfer type is the target transfer type, the server waits for the batch resource transfer result corresponding to the preset virtual resource transfer time range. Otherwise, the server directly performs the transfer operation on the virtual resources to be transferred.

[0060] Optionally, the batch resource transfer result is a batch operation performed by the system on multiple virtual resources to be transferred within a preset virtual resource transfer time range.

[0061] For example, continuing with the financial scenario, the system performs batch fund clearing within a specific time window to improve fund processing efficiency and reduce system load. For example, in inter-bank transfers or credit card repayments, the system centrally processes all transfer requests submitted within a certain timeframe. It's important to note that in the credit card repayment scenario, the default transfer type is active.

[0062] Furthermore, in financial scenarios, batch resource transfer tasks are full batch deduction tasks, which means that the server must deduct the full amount. If the amount is less than the user's outstanding balance, the full batch deduction task will not be successful.

[0063] Step 206 : When there is no corresponding batch resource transfer result for the virtual resources to be transferred, a transfer operation is performed on the virtual resources to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resources to be transferred.

[0064] When there is no corresponding batch resource transfer result for the virtual resource to be transferred, it indicates that the batch resource transfer task on the server has failed. In this case, the transfer operation on the virtual resource to be transferred continues.

[0065] Continuing with the financial scenario, a user-initiated virtual resource transfer instruction may conflict with the bank's batch processing time. In this case, the client needs to wait for the bank's batch resource transfer results. If no batch resource transfer results are found for the user, indicating that the bank's batch resource transfer has failed, the transfer operation is then executed for the virtual resources to be transferred.

[0066] In the cloud storage scenario, the system checks the results of the batch storage allocation task. If the expansion request is not found, it means that the request was not processed in the batch. The system then proceeds to perform a separate storage expansion operation, requesting 500GB of additional storage from the resource pool.

[0067] Before executing the transfer operation, the target transfer amount needs to be compared with the resource amount of the virtual resource to be transferred, and the transfer operation is executed on the virtual resource to be transferred based on the comparison result between the two. In this step, comparing the target transfer amount with the actual available amount of the resource to be transferred can ensure the feasibility of the transfer operation.

[0068] In the aforementioned virtual resource transfer method, after receiving a virtual resource transfer instruction, it is necessary to determine whether the virtual transfer time corresponding to the virtual resource transfer instruction is within a preset virtual resource transfer time range based on the timestamp carried by the virtual resource transfer instruction, and to determine whether the transfer type carried by the virtual resource transfer instruction is the target transfer type based on the transfer type carried by the virtual resource transfer instruction. If the timestamp is within the preset virtual resource transfer time range and the transfer type is the target transfer type, it is necessary to wait for the task results of the system batch resource transfer task. This can avoid the repeated operations, additional computing overhead, and possible transaction conflicts caused by individual resource transfers. Subsequently, based on the comparison between the task results and the target transfer amount, the corresponding resource transfer operation is executed to ensure the accuracy of the resource transfer.

[0069] In one embodiment, the virtual resource transfer instruction also carries an initial transfer channel; after receiving the virtual resource transfer instruction, the method further includes: calling the initial transfer channel to transfer the virtual resource to be transferred from the original resource pool to the intermediate resource pool.

[0070] In financial scenarios, to enhance the security and controllability of capital or resource flows, virtual resource transfer instructions also carry an initial transfer channel and introduce an intermediate resource pool for temporarily storing resources to be transferred. When executing a transfer operation, the system first calls the initial transfer channel to transfer resources from the original resource pool to the intermediate resource pool. The system then proceeds with the resource transfer based on batch task results or individual processing logic, specifically the user-initiated virtual resource transfer instruction.

[0071] In one embodiment, before calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool, the process also includes: obtaining an access token corresponding to the initial transfer channel; decrypting the access token to obtain channel decryption information; obtaining preset channel information from the cloud, and comparing the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token; if the access token is valid, continuing to execute the step of calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0072] The access token is a credential used for authentication and permission control. When invoking the initial transfer channel, the system needs to provide a valid token to the channel to prove the legitimacy of the current operation. For example, in a payment scenario, it may be a security token provided by a bank or payment institution.

[0073] Channel decryption information refers to the information obtained by decrypting the access token. This information is used to identify the current token's validity, as well as the token's related permissions and usage scope. For example, in a payment channel, decryption may reveal information such as the user ID, transaction time, and transaction amount; in a cloud storage channel, decryption may reveal information such as the bucket ID and permission scope.

[0074] The preset channel information is pre-stored trusted channel parameters used to verify the legitimacy of the access token. This information is usually stored in the cloud and includes the channel ID, authorization scope, validity period, etc. Only when the decrypted information of the token matches the preset channel information is the token considered legitimate.

[0075] Optionally, before executing a resource transfer, the system needs to obtain an access token. This token may be issued by an authorization server, payment institution, or cloud storage provider. Typically, this token is obtained from a cloud server through an API request. For example, in a payment scenario, after the user authorizes the payment, the system requests a token from the payment gateway.

[0076] After obtaining the access token, the system decrypts it to obtain the channel decryption information. Alternatively, asymmetric or symmetric encryption can be used to decrypt the token and parse the token contents to obtain channel information, user identity information, expiration date, etc. If decryption fails, it may mean that the token has been tampered with or is invalid, and the transfer operation will be terminated immediately.

[0077] The server compares the channel information after decrypting the token with the preset channel information. If they match, the token is valid and the resource transfer can continue; if they do not match, the operation is rejected.

[0078] For example, in the above financial scenario, if a user attempts to repay using an unauthorized payment channel, the server will reject the transaction.

[0079] For example, in a cloud storage scenario, if the target channel of a storage migration request does not comply with security policies (eg, attempting to transfer unauthorized data across regions), the system will terminate the migration.

[0080] In the above embodiment, by verifying the access token, the security of executing the resource transfer operation can be guaranteed.

[0081] In one embodiment, the above-mentioned transfer operation is performed on the virtual resources to be transferred based on the comparison result between the target transfer amount and the resource amount of the virtual resources to be transferred, including: when the resource amount of the virtual resources to be transferred is equal to the target transfer amount, the virtual resources to be transferred are transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is greater than the target transfer amount, the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the initial transfer channel is called to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are moved from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified according to the reverse difference virtual resources.

[0082] For example, in a financial scenario, if the amount of virtual resources to be transferred equals the target transfer amount, the virtual resources to be transferred are transferred from the intermediate resource pool to the target resource pool. This means that the amount that the user has actively repaid but has not yet been credited to the bank is credited. In this implementation, the amount that the user has actively repaid to the bank but has not yet been credited to the bank is considered to be in the intermediate resource pool.

[0083] For example, in a financial scenario, when the amount of virtual resources to be transferred is greater than the target transfer amount, the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the initial transfer channel is called to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool. Among them, the positive difference virtual resources refer to the amount of resources that is greater than the target transfer amount, that is, greater than the amount that the user needs to repay. In this embodiment, the positive difference virtual resources are returned to the original resource pool, that is, the user's account, through the initial transfer channel, that is, the channel used when the user initiates active repayment; and the part of the virtual resources equal to the target transfer amount is transferred to the target resource pool, that is, the bank account.

[0084] For example, in a financial scenario, when the amount of virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are transferred from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified based on the reverse difference virtual resources. In this embodiment, all virtual resources to be transferred are transferred to the target resource pool, and the reverse difference virtual resources (i.e., the amount the user still owes the bank) are calculated and recorded in the user's corresponding transfer information.

[0085] In one embodiment, the method further includes, when there are corresponding batch resource transfer results for the virtual resources to be transferred, calling the initial transfer channel to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

[0086] If a batch resource transfer result exists for the virtual resources to be transferred, it indicates that the previous batch resource transfer task has been partially or fully processed. This batch resource transfer result typically includes successfully transferred resources, failed resources, or partially completed transfer tasks. The system needs to check these results to determine whether to continue with the subsequent resource transfer operation.

[0087] Now that the batch transfer results are available, you need to continue to transfer the remaining resources through the initial transfer channel. The initial transfer channel here refers to the channel initially used to migrate resources from the original resource pool to the intermediate resource pool. This channel is usually provided by a third-party platform, service, or a specific resource pool interface.

[0088] In financial scenarios, batch resource transfers may result from a bank batch deduction task. Suppose the bank executes a batch deduction task, and a user initiates an active repayment. The amount of the user's active repayment is currently in the intermediate resource pool. At this point, the active repayment amount needs to be refunded to the user's account. The refund is made through the channel where the user initiated the repayment.

[0089] In one embodiment, after the above-mentioned initial transfer channel is called to transfer the virtual resources to be transferred to the intermediate resource pool, it also includes: marking the resource status corresponding to the virtual resources to be transferred as a first identifier; the first identifier indicates that the virtual resources to be transferred are not transferable; after the above-mentioned initial transfer channel is called to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool, it also includes: marking the resource status corresponding to the virtual resources to be transferred as a second identifier; the second identifier indicates that the virtual resources to be transferred are returned.

[0090] In this embodiment, the status of the virtual resource during the resource transfer process is represented by changing the identifier of each virtual resource in the database at different stages.

[0091] For example, after invoking the initial transfer channel to transfer the virtual resource to the intermediate resource pool, the resource status corresponding to the virtual resource to be transferred is marked with a first identifier, which indicates that the virtual resource to be transferred is non-transferable. When the server reads the first identifier, the transfer operation is not performed on the virtual resource to be transferred. In a financial scenario, the first identifier can represent an accounting agent.

[0092] Exemplarily, after the initial transfer channel is called to transfer the positive difference virtual resource from the intermediate resource pool to the original resource pool, the resource status corresponding to the virtual resource to be transferred is marked as a second identifier, which indicates that the virtual resource to be transferred has been returned.

[0093] In other embodiments, whether the full amount is accounted for can be recorded as the third identifier or the fourth identifier, so that when the server performs batch processing on virtual resources, it can quickly execute the corresponding operation by reading the corresponding identifier.

[0094] In one exemplary embodiment, in combination Figure 3 , provides a flowchart of a virtual resource transfer method in a financial scenario, including the following steps.

[0095] One thing that needs to be explained is that, in this embodiment, the virtual resource to be transferred is the amount of active repayment by the user, the target transfer type is active repayment, the timestamp is the time when the user repays, and the transfer channel is the payment channel, which can be WeChat and Alipay in this embodiment; the batch resource transfer task is a batch deduction, and the task result of the batch resource transfer task is the result of the batch deduction, such as whether the batch deduction is successful; the initial resource pool is the user account, the target resource pool is the bank account, and the amount in the intermediate resource pool refers to the amount that has reached the bank but has not yet been recorded by the bank.

[0096] Step 1: The user initiates a repayment. The server receives the virtual resource transfer instruction, parses the instruction, and obtains the following fields:

[0097] “zjms”: “2” (Funding mode: 2 represents active repayment)

[0098] “zfpt”: “wechatpay” (payment platform: wechatpay represents WeChat platform or alipay represents Alipay platform)

[0099] “hkje”: “800.00” (repayment amount: 800.00 yuan, representing the amount entered by the user when repaying)

[0100] “hkrq”: “YYYY-MM-DD” (Repayment date: 2025-03-15, the date the system sends this instruction)

[0101] “hksj”: “hh:mm:ss” (Repayment time: 04:10:00, the time the system sends this instruction)

[0102] Step 2: Determine whether the system is in batch deduction

[0103] Business Description: Determine whether the time point when the user initiates the active repayment in step 1 is within the system batch deduction process, that is, whether it is within the preset virtual resource transfer time range.

[0104] The server determines whether the time "hh:mm:ss" of the repayment instruction received (i.e., the "hksj" field of the repayment instruction in step 1) falls within the system batch deduction time period [hh1:mm1:ss1 to hh2:mm2:ss2];

[0105] For example, the time period for system batch deductions is [00:00:00 ~ 03:59:59]. If the server receives an active repayment instruction at 00:30:00, the system determines that the time point is in the system batch deduction process; if the server receives an active repayment instruction at 04:30:00, the system determines that the time point is not in the system batch deduction process.

[0106] Step 3: Mark the user's active repayment amount as "pending"

[0107] The amount of the user's active repayment is recorded and marked as "pending". Although this amount has arrived at the bank, it has not yet been recorded in the account. Therefore, this amount is considered to be transferred to the intermediate resource pool. At the same time, the transfer information corresponding to the record is the corresponding record of the user in the database.

[0108] Among them, repayment date: hkrq repayment date in the active repayment instruction; repayment time: hksj repayment time in the active repayment instruction; repayment amount: hkje repayment amount in the active repayment instruction; accounting status: 3, which means "pending accounting".

[0109] In the database, the repayment record table records the following:

[0110]

[0111] In the database, the repayment schedule remains unchanged and is recorded as follows:

[0112]

[0113] Step 4: Determine whether the system batch deductions are successful in full, that is, the results of batch resource transfer.

[0114] Determine the result of the system batch deduction in step 2, whether the full batch deduction is successful or the partial batch deduction is successful. The server automatically obtains the result of the system batch repayment and determines whether the system batch deduction is successful or not. There are two results: yes, it means the system batch deduction is successful; no, it means the system batch deduction is unsuccessful;

[0115] For example, a successful full batch deduction means that the current user loan outstanding is 1,000 yuan, and the batch deduction has deducted 1,000 yuan from the user's bank card, and there is currently no outstanding balance, which means that the full batch deduction is successful; which is different from a successful full batch deduction, where the current user loan outstanding is 1,000 yuan, and the batch deduction has only deducted 800 yuan from the user's bank card (because the user's bank card balance is less than 1,000, only 800), and there is still an outstanding balance of 200 yuan, which means that the full batch deduction failed, but the partial batch deduction was successful.

[0116] Step 5: "Waiting for Accounting" is recorded as failed, and the user's active repayment is returned to the user along the original route, that is, the initial transfer channel is called to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

[0117] This step is the branch where the "Result: Yes" in step 4 indicates that the system has successfully deducted the full amount of the batch deduction. That is, in step 4, if the batch deduction is successful, it means that the system has deducted the full amount of the outstanding balance from the user's bank card. In this case, the amount that the user voluntarily returned should not be collected and must be returned to the user through the original channel. Returning the amount through the original channel means that if the repayment was made through the WeChat platform, the amount will be returned to the user through the WeChat platform; if the repayment was made through the Alipay platform, the amount will be returned to the user through the Alipay platform.

[0118] If the system determines that the batch deduction result is "System Batch Full Deduction Successful," the system will change the "3-Waiting for Accounting" status in the database to "2-Accounting Failed" and return the full amount of the active repayment to the user. At the same time, the system will automatically update the repayment schedule, update the amount already paid, and recalculate the new outstanding amount.

[0119] In the database, the repayment record table records the following:

[0120]

[0121] The first row indicates a successful batch full deduction, with the accounting status set to 1-Accounted, the funding mode set to 1-System Deduction, and the full repayment flag set to 1-Full. The second row indicates a customer's active repayment, with the accounting status set to 2-Accounting Failed, triggering a refund instruction.

[0122] In the database, the repayment schedule is updated and recorded as follows:

[0123]

[0124] Step 6: Active repayment is successfully credited to your account

[0125] This step is the branch that follows if the answer is "No" in Step 2, which means the system is not currently in the batch deduction period. Therefore, the customer is free to make repayments and simply record the repayment amount in the system account. Direct recording means the system will offset the repayment amount against the customer's outstanding balance, recalculating the customer's outstanding balance.

[0126] The server determines whether the hh:mm:ss time of receipt of the active repayment instruction falls within the system's batch deduction period (hh1:mm1:ss1 to hh2:mm2:ss2). For example, if the system's batch deduction period is [00:00:00 to 03:59:59], if the server receives the active repayment instruction at 04:30:00, the system will determine that the time is not within the system batch deduction process. The active repayment instruction received at 04:30:00 will trigger the system's payment entry, and the payment status of this repayment will be "1-Accounted" in the repayment record table. The system will also automatically update the repayment plan, update the repaid amount, and recalculate the new outstanding amount.

[0127] In the database, the repayment record table records the following

[0128]

[0129] In the database, the repayment schedule is updated as follows

[0130]

[0131] Step 7: Is the amount to be recorded greater than the amount of batch deductions?

[0132] This step branches to the "No" response if the batch deduction in step 4 is fully successful. This means that the batch deduction in step 4 was partially successful. For example, if the batch deduction should have been 1,000 yuan, but only 800 yuan was actually deducted from the customer's bank card, there is a shortfall of 200 yuan, or the batch deduction difference is 200 yuan. At this point, you need to compare the "pending account" amount of the customer's active repayment with the 200 yuan batch deduction difference.

[0133] The system determines the size of the two values.

[0134] Value 1: djzje (amount to be posted): amount to be posted

[0135] Value 2: plkkce (batch deduction difference): the amount due but not yet paid minus the amount deducted by the system in batches, that is, the difference in the system batch deductions.

[0136] Step 8: A portion of the "to be credited" amount (to make up for the difference in batch deductions) is recorded in the account, and the remaining amount is returned to the customer

[0137] This step branches to the "Yes" check in step 7 if the "Amount to be Credited" is greater than the batch deduction amount. For example, if the customer's active repayment is greater than the batch deduction difference, and the current outstanding balance is 1,000 yuan, but only 800 yuan has been deducted from the customer's bank card, the remaining balance is 200 yuan, or the batch deduction difference is 200 yuan. If the customer's active repayment is 300 yuan (i.e., the "Amount to be Credited" is 300 yuan greater than the batch deduction difference), 200 yuan of the 300 yuan will be credited, and the remaining 100 yuan will be refunded to the customer. Simultaneously, the system automatically updates the repayment schedule, updates the repaid amount, and recalculates the new outstanding balance.

[0138] djzje (amount to be recorded) > plkkce (difference in batch deductions)

[0139] Then tkje (refund amount) = djzje - plkkce

[0140] The system automatically triggers a refund instruction, which includes the following fields:

[0141] “zfpt”: “wechatpay” (payment platform: wechatpay stands for WeChat Pay or alipay stands for Alipay. The payment platform for refund is determined by the payment platform for repayment)

[0142] “tkje”: “100.00” (refund amount: 100.00 yuan, representing the excess amount returned to the customer)

[0143] “tkrq”: “YYYY-MM-DD” (Repayment date: 2025-03-15, this date is the date when the system triggers the refund instruction)

[0144] “tksj”: “hh:mm:ss” (Repayment time: 04:10:00, which is the time when the system triggers the refund instruction)

[0145] In the database, the repayment record table records the following:

[0146]

[0147] The first line, 800.00, represents the batch deduction amount. Its accounting status is 1 - Accounted, its funding mode is 1 - System Deduction, and its full repayment flag is 0 - Incomplete. The second line, 200.00, represents the difference in the batch deduction amount to be made up from the "pending accounting" amount. Its accounting status is 1 - Accounted, its funding mode is 2 - Active Repayment, and its full repayment flag is 0 - Incomplete. The third line, 100.00, represents the amount to be refunded to the customer from the "pending accounting" amount. Its accounting status is 2 - Accounting Failed, and the system will trigger a refund instruction.

[0148] In the database, the repayment schedule is updated as follows

[0149]

[0150] Step 9: All amounts to be recorded are credited

[0151] This step branches to the "Waiting to be Credited" amount if the answer in step 7 is "No." This means the customer's active repayment amount is less than the batch deduction difference. For example, if a batch deduction of 1,000 yuan is required but only 800 yuan is actually deducted from the customer's bank card, the balance is 200 yuan, meaning the batch deduction difference is 200 yuan. If the customer's active repayment amount is 200 yuan (equal to the batch deduction difference) or 180 yuan (less than the batch deduction difference), the entire active repayment amount will be credited. If the customer's active repayment amount is 200 yuan and credited, there will be no outstanding balance. If the customer's active repayment amount is 180 yuan and credited, there will be a balance of 20 yuan.

[0152] If djzje (amount to be recorded) <= plkkce (difference in batch deductions), the amount to be recorded will be recorded.

[0153] In the database, the repayment record table records the following

[0154]

[0155] The first line represents the amount of 800.00, which is the batch deduction amount. The accounting status is 1 - Accounted, the funding mode is 1 - System Deduction, and the full repayment flag is 0 - Incomplete. The second line represents the amount of 180.00, which is the amount to be recorded in the "pending accounting" account. The accounting status is 1 - Accounted, the funding mode is 2 - Active Repayment, and the full repayment flag is 0 - Incomplete.

[0156] In the database, the repayment schedule is updated as follows

[0157]

[0158] Among them, the first row represents the current unpaid amount of 1000.00. The accounting status in the repayment record table is 1-800.00 already accounted for and 1-180.00 yuan already accounted for, both of which are final states, so the updated repaid amount is 980.00.

[0159] Step 10: The processing logic ends.

[0160] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.

[0161] Based on the same inventive concept, embodiments of the present application also provide a virtual resource transfer device for implementing the aforementioned virtual resource transfer method. The implementation solution provided by this device is similar to the implementation solution described in the aforementioned method. Therefore, the specific limitations in one or more embodiments of the virtual resource transfer device provided below can be found in the above-mentioned limitations on the virtual resource transfer method and will not be repeated here.

[0162] In an exemplary embodiment, Figure 4 As shown, a virtual resource transfer device is provided, comprising: a receiving module, a judging module and a transfer module, wherein:

[0163] The receiving module is used to receive a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool.

[0164] The judgment module is used to wait for the batch resource transfer result corresponding to the preset virtual resource transfer time range when the timestamp falls within the preset virtual resource transfer time range and the transfer type is the target transfer type; the batch resource transfer result is the task result of the system batch resource transfer task.

[0165] The transfer module is configured to perform a transfer operation on the virtual resources to be transferred according to a comparison result between a target transfer amount and a resource amount of the virtual resources to be transferred when there is no corresponding batch resource transfer result for the virtual resources to be transferred.

[0166] In one embodiment, the apparatus further comprises:

[0167] The intermediate module is used to call the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0168] In one embodiment, the above device further includes a token verification module, and the token verification module includes:

[0169] The token acquisition unit is used to obtain the access token corresponding to the initial transfer channel.

[0170] The token decryption unit is used to decrypt the access token to obtain channel decryption information.

[0171] The token comparison unit is used to obtain preset channel information from the cloud, and compare the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token.

[0172] The verification unit is used to continue to execute the step of calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool if the access token is valid.

[0173] In one embodiment, the transfer module includes:

[0174] The first transfer unit is configured to transfer the virtual resources to be transferred from the intermediate resource pool to the target resource pool when the resource amount of the virtual resources to be transferred is equal to the target transfer amount.

[0175] The second transfer unit is used to calculate the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount when the resource amount of the virtual resources to be transferred is greater than the target transfer amount, and call the initial transfer channel to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and transfer the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool.

[0176] The third transfer unit is used to move the virtual resources to be transferred from the intermediate resource pool to the target resource pool when the resource amount of the virtual resources to be transferred is less than the target transfer amount, calculate the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount, and modify the corresponding transfer information according to the reverse difference virtual resources.

[0177] In one embodiment, the apparatus comprises:

[0178] The return unit is used to call the initial transfer channel to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool when there are corresponding batch resource transfer results for the virtual resources to be transferred.

[0179] In one embodiment, the apparatus further comprises:

[0180] A first marking unit is used to mark the resource status corresponding to the virtual resource to be transferred as a first identifier; the first identifier indicates that the virtual resource to be transferred is not transferable;

[0181] The second marking unit is used to mark the resource status corresponding to the virtual resource to be transferred as a second identifier; the second identifier indicates that the virtual resource to be transferred has been returned.

[0182] Each module in the aforementioned virtual resource transfer apparatus may be implemented in whole or in part by calling software, hardware, or a combination thereof. Each module may be embedded in or independent of a processor in a computer device in the form of hardware, or may be stored in a memory in the computer device in the form of software, so that the processor can call and execute the corresponding operations of each module.

[0183] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 5 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O) and a communication interface. The processor, memory and input / output interface call the system bus to connect, and the communication interface calls the input / output interface to connect to the system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The database of the computer device is used to store transfer information. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to call a network connection to communicate with an external terminal. When the computer program is executed by the processor, a virtual resource transfer method is implemented.

[0184] Those skilled in the art will understand that Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0185] In an exemplary embodiment, a computer device is provided, comprising a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the following steps when executing the computer program: receiving a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and a virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool.

[0186] In one embodiment, when the processor executes the computer program, the processor further implements the following steps: calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0187] In one embodiment, when the processor executes the computer program, it further implements the following steps: obtaining an access token corresponding to the initial transfer channel; decrypting the access token to obtain channel decryption information; obtaining preset channel information from the cloud, and comparing the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token; if the access token is valid, continuing to execute the step of calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0188] In one embodiment, when the processor executes the computer program, it also implements the following steps: when the resource amount of the virtual resources to be transferred is equal to the target transfer amount, the virtual resources to be transferred are transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is greater than the target transfer amount, the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the initial transfer channel is called to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are moved from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified according to the reverse difference virtual resources.

[0189] In one embodiment, when the processor executes the computer program, the following steps are further implemented: when there are corresponding batch resource transfer results for the virtual resources to be transferred, the initial transfer channel is called to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

[0190] In one embodiment, when executing the computer program, the processor further implements the following steps: marking the resource status corresponding to the virtual resource to be transferred as a first identifier; the first identifier indicates that the virtual resource to be transferred is non-transferable.

[0191] In one embodiment, when executing the computer program, the processor further implements the following steps: marking the resource status corresponding to the virtual resource to be transferred as a second identifier; the second identifier indicates that the virtual resource to be transferred has been returned.

[0192] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented: receiving a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool; when the timestamp falls within a preset virtual resource transfer time range and the transfer type is a target transfer type, waiting for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of the system batch resource transfer task; when there is no corresponding batch resource transfer result for the virtual resource to be transferred, performing a transfer operation on the virtual resource to be transferred based on a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred.

[0193] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0194] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: obtaining an access token corresponding to the initial transfer channel; decrypting the access token to obtain channel decryption information; obtaining preset channel information from the cloud, and comparing the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token; and if the access token is valid, continuing to execute the step of calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0195] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: when the resource amount of the virtual resources to be transferred is equal to the target transfer amount, the virtual resources to be transferred are transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is greater than the target transfer amount, the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the initial transfer channel is called to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are moved from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified according to the reverse difference virtual resources.

[0196] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: when there are corresponding batch resource transfer results for the virtual resources to be transferred, the initial transfer channel is called to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

[0197] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: marking the resource status corresponding to the virtual resource to be transferred as a first identifier; the first identifier indicates that the virtual resource to be transferred is not transferable.

[0198] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: marking the resource status corresponding to the virtual resource to be transferred as a second identifier; the second identifier indicates that the virtual resource to be transferred is returned.

[0199] In one embodiment, a computer program product is provided, including a computer program, which, when executed by a processor, implements the following steps: receiving a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool; when the timestamp falls within a preset virtual resource transfer time range and the transfer type is a target transfer type, waiting for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of a system batch resource transfer task; when there is no corresponding batch resource transfer result for the virtual resource to be transferred, performing a transfer operation on the virtual resource to be transferred based on a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred.

[0200] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0201] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: obtaining an access token corresponding to the initial transfer channel; decrypting the access token to obtain channel decryption information; obtaining preset channel information from the cloud, and comparing the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token; and if the access token is valid, continuing to execute the step of calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

[0202] In one embodiment, when the computer program is executed by the processor, the following steps are also implemented: when the resource amount of the virtual resources to be transferred is equal to the target transfer amount, the virtual resources to be transferred are transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is greater than the target transfer amount, the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the initial transfer channel is called to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool; when the resource amount of the virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are moved from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified according to the reverse difference virtual resources.

[0203] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: when there are corresponding batch resource transfer results for the virtual resources to be transferred, the initial transfer channel is called to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

[0204] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: marking the resource status corresponding to the virtual resource to be transferred as a first identifier; the first identifier indicates that the virtual resource to be transferred is not transferable.

[0205] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented: marking the resource status corresponding to the virtual resource to be transferred as a second identifier; the second identifier indicates that the virtual resource to be transferred is returned.

[0206] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by calling a computer program to instruct the relevant hardware to complete the process. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the above-mentioned embodiments. Among them, any reference to memory, database or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), quantum computing-based data processing logic devices, artificial intelligence (AI) processors, and the like.

[0207] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0208] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.

Claims

1. A virtual resource transfer method, characterized in that: The method comprises: Receive a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool; When the timestamp falls within the preset virtual resource transfer time range and the transfer type is a target transfer type, waiting for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of a system batch resource transfer task; When there is no corresponding batch resource transfer result for the virtual resource to be transferred, a transfer operation is performed on the virtual resource to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred.

2. The method according to claim 1, characterized in that The virtual resource transfer instruction also carries an initial transfer channel; After receiving the virtual resource transfer instruction, the method further includes: The initial transfer channel is called to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool.

3. The method according to claim 2, characterized in that Before calling the initial transfer channel to transfer the virtual resources to be transferred from the original resource pool to the intermediate resource pool, the method further includes: Obtaining an access token corresponding to the initial transfer channel; Decrypting the access token to obtain channel decryption information; Obtaining preset channel information from the cloud, and comparing the preset channel information with the channel decryption information to obtain a verification result; the verification result is used to determine the validity of the access token; If the access token is valid, the step of calling the initial transfer channel to transfer the virtual resource to be transferred from the original resource pool to the intermediate resource pool is continued.

4. The method according to claim 2, characterized in that The performing a transfer operation on the virtual resource to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred includes: When the resource amount of the to-be-transferred virtual resources is equal to the target transfer amount, transferring the to-be-transferred virtual resources from the intermediate resource pool to the target resource pool; When the amount of the virtual resources to be transferred is greater than the target transfer amount, calculating the positive difference virtual resources between the virtual resources to be transferred and the target transfer amount, and calling the initial transfer channel to transfer the positive difference virtual resources from the intermediate resource pool to the original resource pool and transferring the remaining virtual resources to be transferred from the intermediate resource pool to the target resource pool; When the resource amount of the virtual resources to be transferred is less than the target transfer amount, the virtual resources to be transferred are moved from the intermediate resource pool to the target resource pool, the reverse difference virtual resources between the virtual resources to be transferred and the target transfer amount are calculated, and the corresponding transfer information is modified according to the reverse difference virtual resources.

5. The method according to claim 2, characterized in that The method further comprises: When the virtual resources to be transferred have corresponding batch resource transfer results, the initial transfer channel is called to transfer the virtual resources to be transferred from the intermediate resource pool to the original resource pool.

6. The method according to any one of claims 2 to 5, characterized in that After calling the initial transfer channel to transfer the virtual resources to be transferred to the intermediate resource pool, the method further includes: Marking the resource state corresponding to the to-be-transferred virtual resource as a first identifier; the first identifier indicates that the to-be-transferred virtual resource is not transferable; After calling the initial transfer channel to transfer the positive difference virtual resource from the intermediate resource pool to the original resource pool, the method further includes: The resource status corresponding to the to-be-transferred virtual resource is marked as a second identifier; the second identifier indicates that the to-be-transferred virtual resource has been returned.

7. A virtual resource transfer device, characterized in that: The device comprises: A receiving module, configured to receive a virtual resource transfer instruction; the virtual resource transfer instruction carries a timestamp, a transfer type, and the virtual resource to be transferred, and the virtual resource transfer instruction is used to instruct the system to transfer the virtual resource to be transferred to a target resource pool; A judgment module is configured to, when the timestamp falls within a preset virtual resource transfer time range and the transfer type is a target transfer type, wait for a batch resource transfer result corresponding to the preset virtual resource transfer time range; the batch resource transfer result is a task result of a system batch resource transfer task; The transfer module is configured to, when there is no corresponding batch resource transfer result for the virtual resource to be transferred, perform a transfer operation on the virtual resource to be transferred according to a comparison result between the target transfer amount and the resource amount of the virtual resource to be transferred.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

9. 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 6 are implemented.

10. 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 6 are implemented.