Integrated circuit warehouse in-out control method and system based on multi-level batch identification

CN122928233APending Publication Date: 2026-10-16BEIJING HUALONG TIANHE TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611225723.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-13
Publication Date
2026-10-16

AI Technical Summary

Technical Problem

由于上级批次节点直接保存的当前数量与其下级包装单元的可用数量未作连续关联,容易出现父子批次状态更新不同步、已耗尽批次仍参与后续订单筛选或者同一批次物料被重复统计的情况

Benefits of technology

[0049] (1) To address the issues of inconsistent quantity between the sub-batch and the source batch after unpacking, and invalid parent-child batch relationships entering the subsequent warehousing process, the effective status of the sub-batch node, parent-child batch relationship record and batch path record is controlled by the quantity conservation state, so that the subsequent warehousing, task generation and path verification call have batch records with corresponding quantity relationships, and maintain the quantity connection between the source batch node and multiple sub-batch nodes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122928233A_ABST
    Figure CN122928233A_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of integrated circuit warehouse management, and particularly relates to an integrated circuit warehouse in-out control method and system based on multi-level batch identification. The method acquires original packaging label information, generates sub-batch nodes, parent-child batch relationship records and batch path records in response to unpacking requests, and generates quantity conservation states; stores effective sub-batch nodes and associates storage locations, screens target batch nodes according to orders, locks quantities and target batch paths, and generates picking tasks; scans packaging labels to be stored, generates actual batch paths, compares actual batch nodes, actual batch paths and measured quantities with picking tasks, and generates operation access states; after access, the available states of the offspring of the target batch nodes and the superior batch nodes are updated, and the update results are used for subsequent order screening. The present application links unpacking relationships, picking physical sources and inventory states at all levels, and improves the consistency and traceability of warehouse in-out control.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of integrated circuit material storage management technology, and in particular to an integrated circuit storage inbound and outbound control method and system based on multi-level batch identification. Background Technology

[0002] In the field of integrated circuit material warehousing management, existing solutions typically establish a correspondence between material identification, batch identification, packaging level, inventory quantity, and storage location by scanning packaging labels on the original packaging, inner packaging, or outer packaging. During unpacking, repackaging, warehousing, shelving, picking, and outbound operations, the packaging flow records, inventory records, and storage location status are updated based on the scanning results. Some solutions also establish a relationship between parent and child batches and generate picking tasks based on material identification, batch information, warehousing time, and available quantity.

[0003] After one or more unpackings, the original packaging of integrated circuits will be divided into multiple packaging units with different packaging levels, which can be stored, reserved, or issued separately. Existing solutions mostly use the current packaging label, material identification, or single batch identification as the basis for picking verification, and the parent-child batch relationship is mainly used for packaging history query or post-event traceability. When different packaging units have the same material identification, the same packaging level, or the same quantity, it is difficult to distinguish their corresponding top-level batch and intermediate unpacking sources by only comparing the current packaging label or batch field; after the unpacking relationship changes, inconsistencies can easily arise between the batch object in the task record and the physical source scanned on site.

[0004] Furthermore, existing solutions typically update the inventory quantity of the current packaging unit after the sub-batch is packaged and shipped. However, the multiple parent batch nodes corresponding to this sub-batch are usually maintained using independent status records or post-event aggregation methods. Since the current quantity directly stored by the parent batch node is not continuously associated with the available quantity of its subordinate packaging units, situations can easily arise where the status updates of parent and child batches are not synchronized, exhausted batches still participate in subsequent order screening, or the same batch of materials is counted repeatedly. Therefore, it is necessary to address the difficulty in maintaining consistency between the target batch source, the actual batch source corresponding to the physical goods on site, and the inventory status of each batch in the multi-level unpacking and warehousing scenario of integrated circuits. Summary of the Invention

[0005] To address the aforementioned technical problems, this invention provides a method for controlling the inbound and outbound operations of integrated circuit warehouses based on multi-level batch identification, comprising:

[0006] S100. Obtain the original packaging label information and create a top-level batch file; respond to the unpacking request and generate sub-batch nodes, parent-child batch relationship records, and batch path records based on the source batch node, transfer quantity, and packaging level; compare the transfer quantity with the quantity attribute of the sub-batch node and generate a quantity conservation state; when the quantity conservation state is valid, set the sub-batch node, parent-child batch relationship record, and batch path record to the valid state.

[0007] S200: Set the effective sub-batch node to the inbound status and associate it with the warehouse location to generate an available batch node status record; receive the order, filter the target batch node according to the material identifier, packaging level and allocable quantity, lock the quantity and target batch path, and generate a picking task;

[0008] S300: Scan the packaging label to determine the actual batch node; find the top-level batch node along the parent-child batch relationship record to generate the actual batch path; compare the actual batch node with the target batch node, the actual batch path with the target batch path, and the measured quantity with the locked quantity to generate the operation access status.

[0009] S400 When the operation access status is allowed, update the target batch node according to the outbound quantity, and update the availability status of the descendant of the parent batch node along the target batch path; update the picking task and inventory record, and use the updated batch node status for subsequent order filtering.

[0010] Furthermore, the batch node includes a batch node identifier, a top-level batch identifier, a direct parent batch identifier, a material identifier, a packaging level, a current quantity, a locked quantity, an allocable quantity, a descendant available quantity, a node status, and a node version;

[0011] The parent-child batch relationship record includes the parent batch node identifier, child batch node identifier, unpacking event identifier, transfer quantity, relationship status, and relationship version;

[0012] The batch path record includes a path identifier, a top-level batch node identifier, a target batch node identifier, an ordered set of node identifiers, a path version, and a path status.

[0013] Furthermore, the generation of the quantity-conserving state includes:

[0014] Summarize the quantity attribute of multiple sub-batch nodes generated from the same unpacking request;

[0015] Compare the summarized results with the stated number of transfers;

[0016] When the two are the same, the quantity conservation state is set to a valid state, the current quantity of the source batch node is updated according to the transfer quantity, and the child batch node, parent-child batch relationship record and batch path record are set to a valid state.

[0017] If the two are different, the quantity conservation state is set to an invalid state, the current quantity and node state of the source batch node are maintained, and the parent-child batch relationship record and batch path record are kept in an invalid state.

[0018] Furthermore, the material storage constraints include humidity sensitivity level, electrostatic protection requirements, and packaging condition;

[0019] Storage capacity includes dry storage capacity, electrostatic discharge protection capacity, capacity, isolation properties, and occupancy status;

[0020] Set the storage space that meets the material storage constraints and is in an idle state to a reserved state;

[0021] Scan the packaging labels of the sub-batch nodes and the storage labels of the reserved storage spaces, compare the sub-batch nodes, reserved storage spaces, and storage space reservation status, and generate a shelf access status.

[0022] When the shelf access status is allowed, the sub-batch node is set to the inbound status and associated with the reserved storage space, generating the available batch node status record.

[0023] Furthermore, the filtering of the target batch nodes includes:

[0024] From the available batch node status records, select batch nodes whose material identifier matches the order, whose packaging level matches the order, whose node status is available, and whose allocable quantity is greater than 0, and generate a candidate batch node set;

[0025] The candidate batch node set is arranged in ascending order of top-level batch entry time, batch node generation time, and batch node identifier;

[0026] The target batch nodes are determined according to the order of arrangement. When the required quantity is provided by multiple target batch nodes, the sum of the locked quantities of the multiple target batch nodes is equal to the required quantity.

[0027] Furthermore, the picking task includes a task identifier, an order identifier, a target batch node, a locked quantity, a target batch path, a node version, a path version, a task version, and a task status;

[0028] When generating the picking task, the locked quantity of the target batch node is increased by the quantity to be shipped out this time, and the target batch path corresponding to the target batch node is recorded.

[0029] When the node version or path version changes, the task status is set to task version invalidation status, and the quantity to be shipped out this time is released from the locked quantity of the target batch node.

[0030] Furthermore, the generation of the actual batch path includes:

[0031] Locate the actual batch number based on the packaging label;

[0032] Read the direct parent batch identifier of the actual batch node, and search for the parent batch node level by level along the parent-child batch relationship record in the valid state until the top-level batch node;

[0033] Arrange the batch node identifiers in the order from the top-level batch node to the actual batch node to generate the actual batch path;

[0034] When the actual batch node is the same as the target batch node, the actual batch path and the target batch path have the same path start point, path end point, number of packaging levels and batch node identifiers, the actual measured quantity is not greater than the locked quantity and the task version is in a valid state, the operation access status is set to allowed.

[0035] Furthermore, the update target batch node and parent batch node include:

[0036] The outbound quantity is deducted from the current quantity of the target batch node, and the outbound quantity is released from the locked quantity. An allocable quantity is generated based on the updated current quantity and the locked quantity.

[0037] The parent batch node is searched level by level according to the target batch path. The number of allocable sub-batch nodes under each parent batch node that are in a valid state is summarized, and the number of available descendants and the available status of the descendants of the parent batch node are generated.

[0038] When the current quantity of the target batch node is 0, its node status is set to "outbound"; when the current quantity of the parent batch node is 0 and the available quantity of its descendants is 0, its node status is set to "exhausted".

[0039] Furthermore, when the operation access status is allowed, the task version, the node version of the target batch node, and the warehouse status version are compared.

[0040] If any version is inconsistent with the version recorded in the picking task, the picking task will be set to an abnormal pending review status and submission will be prevented.

[0041] When all versions are consistent, a database transaction is initiated to update the target batch node, the parent batch node, picking tasks, inventory records, and warehouse status, and write them to the status change list.

[0042] If a record with the same task identifier, actual batch node, and actual measurement quantity exists in the status change list, the update will not be executed repeatedly.

[0043] Furthermore, the integrated circuit warehouse inbound and outbound control system based on multi-level batch identification includes: a label information acquisition module, a batch relationship construction module, a quantity verification module, a warehouse management module, a task generation module, an operation access module, and a status update module; the system is used to implement the method described in any one of the above.

[0044] The key innovations of this invention include:

[0045] (1) Generate sub-batch nodes, parent-child batch relationship records and batch path records based on the source batch node, transfer quantity and packaging level in the unpacking request, and compare the quantity attributes of multiple sub-batch nodes with the transfer quantity; based on the generated quantity conservation state, control the sub-batch nodes, parent-child batch relationship records and batch path records to enter the valid state.

[0046] (2) Filter the target batch node according to the material identification, packaging level and allocable quantity in the order, and write the locked quantity and the target batch path from the top batch node to the target batch node into the picking task; after scanning the packaging label to be shipped out, regenerate the actual batch path along the effective parent-child batch relationship record, and compare the actual batch node, actual batch path and measured quantity with the target batch node, target batch path and locked quantity in the picking task to generate the operation access status.

[0047] (3) When the operation access status is allowed, update the current quantity, locked quantity and allocable quantity of the target batch node according to the outbound quantity, and update the available status of the descendant of the parent batch node level by level along the target batch path; write the updated batch node status into the available batch node status record, and use it for the target batch node filtering of subsequent orders.

[0048] The following are its main beneficial effects:

[0049] (1) To address the issues of inconsistent quantity between the sub-batch and the source batch after unpacking, and invalid parent-child batch relationships entering the subsequent warehousing process, the effective status of the sub-batch node, parent-child batch relationship record and batch path record is controlled by the quantity conservation state, so that the subsequent warehousing, task generation and path verification call have batch records with corresponding quantity relationships, and maintain the quantity connection between the source batch node and multiple sub-batch nodes.

[0050] (2) To address the problem that it is difficult to distinguish the actual source of multiple packaging units with the same material identification and the same packaging level, the target batch node, locked quantity and target batch path are jointly recorded in the picking task, and the actual batch path is regenerated after physical scanning. This expands the picking verification scope from the current packaging label to the ordered source relationship composed of the top-level batch node, the intermediate parent batch node and the actual batch node. When the node, path or quantity is inconsistent, the operation access status prevents the corresponding inventory record and picking task from entering the outbound update.

[0051] (3) To address the issue of the target batch node and multiple parent batch nodes being out of stock after the sub-batch is shipped out, and the mixed recording of the quantity directly saved by the parent batch and the available quantity of the lower packaging, the current quantity, locked quantity and allocable quantity of the target batch node are updated separately, and the available status of the descendant of the parent batch node is updated along the target batch path, so that the quantity of materials directly saved and the allocable quantity of the lower batch node are recorded separately; the updated node status is returned to the subsequent order screening, so that the batch nodes that have been shipped out or have been exhausted will no longer participate in the allocation as target batch nodes. Attached Figure Description

[0052] Figure 1 A flowchart illustrating the integrated circuit warehousing inbound and outbound control method based on multi-level batch identification provided in this application embodiment;

[0053] Figure 2 This is a structural block diagram of an integrated circuit warehouse inbound and outbound control system based on multi-level batch identification, provided in an embodiment of this application. Detailed Implementation

[0054] Example 1: Refer to Figure 1 This is a flowchart illustrating the integrated circuit warehousing and outbound control method based on multi-level batch identification provided in an embodiment of the present invention. The process may include at least steps S100-S400:

[0055] S100. Obtain the original packaging label information and create a top-level batch file; respond to the unpacking request and generate sub-batch nodes, parent-child batch relationship records, and batch path records based on the source batch node, transfer quantity, and packaging level; compare the transfer quantity with the quantity attribute of the sub-batch node and generate a quantity conservation state; when the quantity conservation state is valid, set the sub-batch node, parent-child batch relationship record, and batch path record to the valid state.

[0056] S200: Set the effective sub-batch node to the inbound status and associate it with the warehouse location to generate an available batch node status record; receive the order, filter the target batch node according to the material identifier, packaging level and allocable quantity, lock the quantity and target batch path, and generate a picking task;

[0057] S300: Scan the packaging label to determine the actual batch node; find the top-level batch node along the parent-child batch relationship record to generate the actual batch path; compare the actual batch node with the target batch node, the actual batch path with the target batch path, and the measured quantity with the locked quantity to generate the operation access status.

[0058] S400 When the operation access status is allowed, update the target batch node according to the outbound quantity, and update the availability status of the descendant of the parent batch node along the target batch path; update the picking task and inventory record, and use the updated batch node status for subsequent order filtering.

[0059] S100. Obtain the original packaging label information and create a top-level batch file; respond to the unpacking request and generate sub-batch nodes, parent-child batch relationship records, and batch path records based on the source batch node, transfer quantity, and packaging level; compare the transfer quantity with the quantity attribute of the sub-batch node and generate a quantity conservation state; when the quantity conservation state is valid, set the sub-batch node, parent-child batch relationship record, and batch path record to the valid state.

[0060] This step is executed by a label information acquisition module, a batch relationship construction module, a quantity verification module, a label printing device, and a data storage module. The label information acquisition module receives the original packaging label information read by the scanning terminal; the batch relationship construction module creates a top-level batch file based on the original packaging label information and generates sub-batch nodes, parent-child batch relationship records, and batch path records in response to unpacking requests; the quantity verification module compares the transfer quantity in the unpacking request with the quantity attribute of the sub-batch nodes to generate a quantity conservation state; and the data storage module records the top-level batch file, batch nodes, parent-child batch relationship records, batch path records, and corresponding versions.

[0061] The original packaging label information refers to the label content corresponding to the machine-readable identifier affixed to the original packaging by the supplier or manufacturer, including material identification, supplier batch identification, packaging type, packaging quantity, and unit of quantity. In one embodiment, the original packaging is a moisture-proof bag, reel, tube, box, or carton; the scanning terminal reads the barcode or QR code on the original packaging and sends the reading result to the warehouse management server; the warehouse management server parses the label content and checks whether a corresponding top-level batch file already exists based on the material identification and supplier batch identification. If no corresponding file is found, the warehouse management server creates the top-level batch file; if a valid top-level batch file is found, the warehouse management server writes the scan record into the packaging flow information and does not create a duplicate top-level batch file.

[0062] The top-level batch file is a batch record established based on the original packaging label information and does not point to a direct parent batch. The top-level batch file includes a top-level batch identifier, material identifier, supplier batch identifier, original packaging type, original packaging quantity, unit of quantity, warehousing time, and file status. The warehouse management server generates the top-level batch identifier according to a preset batch identifier generation rule; the preset batch identifier generation rule consists of a material identifier, a supplier batch identifier, and a sequence identifier, or it consists of a unique identifier assigned by the warehouse management server. After the top-level batch file is created, the warehouse management server synchronously creates a top-level batch node corresponding to the original packaging.

[0063] The batch node technical characteristics refer to data records that associate a packaged unit, which can be independently identified, stored, reserved, or issued, with a batch node identifier, top-level batch identifier, direct parent batch identifier, material identifier, packaging level, current quantity, locked quantity, allocable quantity, descendant available quantity, node status, and node version. The direct parent batch identifier of the top-level batch node is empty; the packaging level of the top-level batch node is generated based on the packaging type of the original packaging; the current quantity of the top-level batch node is generated based on the packaging quantity in the original packaging label information; the initial locked quantity of the top-level batch node is 0; the allocable quantity of the top-level batch node is generated based on the difference between the current quantity and the locked quantity; and a node version is assigned when the top-level batch node is created.

[0064] When an operator performs an unpacking operation on the original packaging or a packaging unit corresponding to an existing sub-batch node, the unpacking scanning terminal scans the packaging label of the source packaging and receives the unpacking quantity input, forming an unpacking request. The unpacking request includes an unpacking event identifier, a source batch node identifier, a transfer quantity, a target packaging level, a sub-packaging quantity, and a request time. The unpacking event identifier is generated by the warehouse management server according to the scanning terminal identifier, the request time, and the sequence identifier; the source batch node identifier comes from the packaging label of the unpacked packaging unit; the transfer quantity indicates the quantity of materials taken from the packaging unit corresponding to the source batch node; the target packaging level indicates the level of the packaging unit formed after unpacking in a multi-level packaging relationship; and the sub-packaging quantity indicates the number of packaging units formed in this unpacking.

[0065] After receiving the unpacking request, the batch relationship construction module locates the source batch node based on the source batch node identifier and reads the material identifier, top-level batch identifier, packaging level, current quantity, node status, and node version of the source batch node. If the source batch node is in a valid or available state, and the transferred quantity is not greater than the current quantity of the source batch node, the batch relationship construction module accepts the unpacking request. If the source batch node does not exist, is in a frozen state, is in a shipped state, or is in a exhausted state, the batch relationship construction module sets the unpacking request to an abnormal pending review state and does not generate a sub-batch node. If the transferred quantity is greater than the current quantity of the source batch node, the quantity verification module generates a quantity inconsistency state and maintains the current quantity and node status of the source batch node.

[0066] The batch relationship construction module creates multiple sub-batch nodes based on the target packaging level and the number of sub-packages, and assigns a batch node identifier to each sub-batch node. Each sub-batch node inherits the top-level batch identifier and material identifier of the source batch node, its direct parent batch identifier is set to the source batch node identifier, and its packaging level is set to the target packaging level in the unpacking request. The quantity attribute of each sub-batch node is generated based on the number of sub-packages entered by the operator or the number of packages written when the label printing device generates the packaging label. In one implementation, each sub-batch node records only one direct parent batch identifier; when the same unpacking request forms multiple sub-batch nodes, the multiple sub-batch nodes each point to the same source batch node.

[0067] The label printing equipment generates corresponding packaging labels based on sub-batch node identifiers, top-level batch identifiers, direct parent batch identifiers, material identifiers, packaging levels, and quantity attributes. After the packaging labels are printed, the operator scans each of the multiple packaging labels. The label information acquisition module matches the scan results with the sub-batch nodes to be created by the batch relationship construction module. When the sub-batch node identifier in the packaging label is the same as the sub-batch node identifier to be created, the corresponding sub-batch node is set to a pending verification state. When a duplicate packaging label is scanned, the label information acquisition module queries the recorded scan events based on the unpacking event identifier and the sub-batch node identifier, archives the duplicate scan records, and does not create duplicate sub-batch nodes.

[0068] The parent-child batch relationship record includes a parent batch node identifier, a child batch node identifier, a splitting event identifier, a transfer quantity, a relationship status, and a relationship version. When multiple child batch nodes are generated for the same splitting request, the batch relationship construction module creates multiple parent-child batch relationship records respectively. The parent batch node identifier is the same in each parent-child batch relationship record, and the child batch node identifiers correspond to the multiple child batch nodes formed in this splitting. The transfer quantity in each parent-child batch relationship record is generated based on the quantity attribute of the corresponding child batch node. When a parent-child batch relationship record is created, its relationship status is set to pending verification, and a relationship version is assigned.

[0069] The batch path technical feature refers to the ordered set of batch identifiers arranged from the top-level batch node to the target batch node according to the parent-child batch relationship. After the batch relationship construction module generates the child batch node, it first reads the existing batch path records of the source batch node; when the source batch node is the top-level batch node, it arranges the top-level batch node identifier and the child batch node identifier according to the packaging hierarchy to generate the batch path record corresponding to the child batch node; when the source batch node is not the top-level batch node, it appends the child batch node identifier to the end of the ordered node identifier set of the source batch node to generate a new batch path record.

[0070] The batch path record includes a path identifier, a top-level batch node identifier, a target batch node identifier, an ordered set of node identifiers, a path version, and a path status. The target batch node identifier corresponds to the sub-batch node identifier created in this instance; the first node identifier in the ordered set of node identifiers is the top-level batch node identifier, and the last node identifier is the target batch node identifier; adjacent node identifiers have a valid parent-child batch relationship record. When a batch path record is created, its path status is set to pending verification, and a path version is assigned.

[0071] The quantity verification module aggregates the quantity attributes of multiple sub-batch nodes generated from the same unpacking request and compares the aggregated result with the transfer quantity in the unpacking request. If they are the same, the quantity verification module sets the quantity conservation state to a valid state; if they are different, the quantity conservation state is set to an invalid state. In one implementation, when there is confirmed packaging loss on-site, the unpacking request also includes the loss quantity; the quantity verification module adds the aggregated quantity attribute result of multiple sub-batch nodes to the loss quantity and then compares it with the transfer quantity; the loss quantity is entered by a scanning terminal with review authority and recorded in association with the unpacking event identifier.

[0072] When the quantity conservation state is valid, the batch relationship construction module sets the sub-batch nodes generated by this unpacking to a valid state, sets the relationship state of the corresponding parent-child batch relationship record to a valid state, and sets the path state of the corresponding batch path record to a valid state. Simultaneously, it deducts the current quantity of the source batch node according to the transferred quantity, and generates the allocatable quantity of the source batch node based on the updated current quantity and the locked quantity. When the current quantity of the source batch node is reduced to 0, the source batch node retains valid parent-child batch relationship records and batch path records, and its node state is set to either unpacked or exhausted. If the source batch node still retains unpacked materials, its node state remains valid.

[0073] When the quantity conservation state is invalid, the sub-batch node remains in a pending verification state or is set to an invalid state; the parent-child batch relationship record and batch path record remain invalid; the current quantity, locked quantity, allocable quantity, and node state of the source batch node remain unchanged. If the label printing device has already printed the sub-batch packaging label, the warehouse management server sets the packaging label to a frozen state and records the quantity inconsistency state; after the operator corrects the sub-package quantity, the quantity verification module re-aggregates the sub-batch node quantity attributes under the same unpacking event and regenerates the quantity conservation state.

[0074] In one implementation scenario, the original reel corresponds to top-level batch node A, with a current quantity of 1000. The operator scans the packaging label of node A, enters the transfer quantity of 600 and the target packaging level, and generates three sub-packages. The label printing device generates packaging labels corresponding to sub-batch nodes B, C, and D, respectively, with each sub-batch node having a quantity attribute of 200. The quantity verification module summarizes the quantity attributes of the three sub-batch nodes, resulting in a total of 600, which matches the transfer quantity. The warehouse management server sets the quantity conservation state to valid, sets the parent-child batch relationship records and batch path records corresponding to AB, AC, and AD to valid, and updates the current quantity of node A to 400.

[0075] This step ultimately creates a top-level batch file, valid sub-batch nodes, valid parent-child batch relationship records, valid batch path records, and a quantity conservation status. The material identifier, packaging level, current quantity, node status, and node version in the valid sub-batch nodes, and the path identifier, target batch node identifier, path version, and path status in the valid batch path records, serve as inputs for S200 to perform warehousing, warehouse location association, and order filtering. Sub-batch nodes, parent-child batch relationship records, and batch path records in an invalid state are not included in the available batch node status record of S200.

[0076] S200: Set the effective sub-batch node to the inbound status and associate it with the warehouse location to generate an available batch node status record; receive the order, filter the target batch node according to the material identifier, packaging level and allocable quantity, lock the quantity and target batch path, and generate a picking task.

[0077] This step receives the valid sub-batch nodes, valid parent-child batch relationship records, and valid batch path records generated by S100. It is executed in conjunction with the warehouse location adaptation module, warehouse status monitoring module, batch node filtering module, task generation module, and data storage module. The warehouse location adaptation module filters warehouse locations based on the material storage constraints and warehouse capacity corresponding to the sub-batch nodes; the warehouse status monitoring module reads the warehouse location occupancy status and warehouse location status version; the batch node filtering module generates a candidate batch node set based on the order content and available batch node status records; and the task generation module locks the quantity to be shipped and the target batch path in the target batch node and generates a picking task.

[0078] The material storage constraints are generated by the material management module based on the material identifier and packaging status of the sub-batch node, including humidity sensitivity level, electrostatic discharge (ESD) protection requirements, and packaging status. The humidity sensitivity level is taken from the material's basic information or supplier label records; the ESD protection requirements are taken from the material's basic information; and the packaging status is recorded based on the original sealed status, unpacked status, or resealed status. The storage capacity includes dry storage capacity, ESD protection capacity, capacity, isolation attributes, and occupancy status; storage capacity comes from storage location basic information, while storage location occupancy status and storage location status version come from the warehouse status monitoring module.

[0079] The warehouse location adaptation module compares the material storage constraints of the sub-batch node with the warehouse capacity of multiple warehouse locations item by item, and filters warehouse locations whose capacity matches the material storage constraints and whose occupancy status is idle. When multiple warehouse locations are obtained, in one implementation, the warehouse location adaptation module selects the first warehouse location as the target warehouse location according to the warehouse location identifier order; in another implementation, the warehouse location adaptation module selects the target warehouse location according to the preset warehouse area order. After the target warehouse location is generated, the warehouse status monitoring module records the current warehouse location status version, sets the target warehouse location to the reserved status, and writes the target warehouse location identifier, sub-batch node identifier, and warehouse location status version into the warehouse location reserved status.

[0080] After the operator moves the packaging unit corresponding to the sub-batch node to the target warehouse location, they sequentially scan the packaging label and warehouse location label using the warehouse location scanning terminal. The label information acquisition module locates the sub-batch node based on the packaging label and the actual warehouse location based on the warehouse location label. The warehouse location adaptation module compares the actually scanned sub-batch node with the sub-batch node in the warehouse location reservation status, compares the actual warehouse location with the target warehouse location, and compares the current warehouse location status version with the warehouse location status version recorded in the warehouse location reservation status. If the three comparison results are the same, a warehouse location access status that allows warehouse location to be put on the shelf is generated; if any one of them is different, a warehouse location access status that disallows warehouse location to be put on the shelf is generated.

[0081] When the shelving access status is allowed, the data storage module sets the sub-batch node to an inbound or available status, writes the target warehouse location identifier into the warehouse location information of the sub-batch node, sets the target warehouse location's occupancy status to occupied, and updates the warehouse location status version. Simultaneously, an inventory record is created, which is associated with the material identifier, batch node identifier, current quantity, locked quantity, allocable quantity, warehouse location identifier, and node version. This forms an available batch node status record. The available batch node status record includes the batch node identifier, material identifier, packaging level, current quantity, locked quantity, allocable quantity, node status, node version, path identifier, path version, warehouse location identifier, and warehouse location status version.

[0082] When the shelving access status is "not allowed," the sub-batch node remains in the "awaiting shelving" status, and the target warehouse space remains in the reserved status or is released back to its original occupied status. If the actual warehouse space differs from the target warehouse space, the warehouse management server records the inconsistency. If the sub-batch node differs from the node in the warehouse space reservation status, the packaging label inconsistency status is recorded. When the warehouse space status version changes, the original warehouse space reservation status is set to "invalid," and the warehouse space adaptation module re-selects warehouse spaces. If the shelving scan record lacks packaging labels or warehouse space labels, the label information acquisition module sets this scan record to an incomplete status and does not update the sub-batch node or warehouse space status.

[0083] Once the available batch node status record is formed, the batch node filtering module receives the order. The order originates from order records in the order system or warehouse management server and includes an order identifier, material identifier, required quantity, target packaging level, order version, and order status. In one implementation, the order also records batch selection conditions that disallow cross-top-level batch combinations; in another implementation, the required quantity for an order is provided jointly by multiple target batch nodes.

[0084] The batch node filtering module first filters batch nodes with the same material identifier from the available batch node status records based on the material identifier in the order; then, it excludes batch nodes with inconsistent packaging levels based on the target packaging level in the order; subsequently, it reads the node status, path status, and allocable quantity of each batch node, retaining batch nodes with an available status, a valid path status, and an allocable quantity greater than 0, generating a candidate batch node set. The allocable quantity is generated by subtracting the locked quantity from the current quantity of the batch nodes.

[0085] The batch node filtering module sorts the candidate batch node set in ascending order of the top-level batch entry time; when the top-level batch entry times are the same, they are sorted in ascending order of the batch node generation time; when both the top-level batch entry time and the batch node generation time are the same, they are sorted in order of the batch node identifier. The top-level batch entry time is provided by the top-level batch file; the batch node generation time is recorded when the sub-batch node is created in S100. After sorting, the batch node filtering module reads the allocatable quantity of the candidate batch nodes according to the sorting order and compares it with the order demand quantity.

[0086] When the allocatable quantity of a candidate batch node is not less than the order demand quantity, the batch node filtering module sets that batch node as the target batch node and sets the order demand quantity as the locked quantity. When the allocatable quantity of a candidate batch node is less than the order demand quantity, the batch node filtering module selects multiple target batch nodes in order of priority; the locked quantity of each target batch node is not greater than its allocatable quantity, and the sum of the locked quantities of multiple target batch nodes equals the order demand quantity. When the sum of the allocatable quantities of the candidate batch node set is less than the order demand quantity, no executable picking task is generated, and the order is set to insufficient quantity status.

[0087] The task generation module reads the corresponding valid batch path record for each target batch node, and records the path identifier and ordered node identifier set in the valid batch path record as the target batch path. Simultaneously, it increases the locked quantity of the target batch node by the quantity to be shipped in this order, and regenerates the allocatable quantity of the target batch node. The task generation module writes the target batch node, locked quantity, and target batch path together into the picking task, thereby mapping the order execution object to a specific packaging unit and the source relationship of that packaging unit.

[0088] The picking task includes a task identifier, order identifier, target batch node, locked quantity, target batch path, node version, path version, task version, and task status. The task identifier is assigned by the task generation module; the node version is taken from the current node version of the target batch node; the path version is taken from the current path version of the target batch path; the task version is created when the picking task is generated; and the task status is initially set to pending picking. When an order corresponds to multiple target batch nodes, the task generation module records the locked quantity and target batch path for each target batch node separately, or creates multiple picking tasks with the same order identifier.

[0089] After a picking task is generated, if the node version of the target batch node or the path version of the target batch path changes, the task generation module compares the current version with the version recorded in the picking task. If the versions are inconsistent, the task status is set to task version invalid, and the quantity to be shipped out is released from the locked quantity of the target batch node. When an order is canceled or the order version changes, the task generation module finds the corresponding picking task according to the order identifier, sets the valid task to invalid, and releases the corresponding locked quantity.

[0090] In one implementation scenario, the order's material identifier is M1, the required quantity is 300, and the target packaging level is the 3rd layer. In the available batch node status record, nodes C and D both correspond to material M1 and the 3rd layer packaging. The allocable quantity for node C is 200, and the allocable quantity for node D is 150. The inbound time of the top-level batch corresponding to node C is earlier than that of node D. The batch node filtering module first selects node C and locks 200, then selects node D and locks 100. The task generation module records the target batch paths corresponding to nodes C and D respectively, generating a picking task with a total locked quantity of 300.

[0091] This step ultimately generates an available batch node status record, a candidate batch node set, a target batch node, a locked quantity, a target batch path, and a picking task. The target batch node, locked quantity, target batch path, node version, path version, and task version in the picking task serve as the comparison benchmark for S300 to generate the actual batch path and operation access status; the updated locked quantity and allocable quantity of the target batch node are stored in the inventory record and participate in the selection of candidate batch nodes for subsequent orders.

[0092] S300: Scan the packaging label to determine the actual batch node; find the top-level batch node along the parent-child batch relationship record to generate the actual batch path; compare the actual batch node with the target batch node, the actual batch path with the target batch path, and the measured quantity with the locked quantity to generate the operation access status.

[0093] This step receives the picking task generated by S200 and is executed in conjunction with the label information acquisition module, operation access module, data storage module, and exception handling module. The label information acquisition module collects the packaging labels scanned by the picking node or verification node and the actual quantity measured. The operation access module finds the actual batch node based on the packaging label, generates the actual batch path based on the valid parent-child batch relationship, and compares the actual batch node, actual batch path, actual quantity measured, and task version with the target object in the picking task. The exception handling module records node inconsistency, path inconsistency, quantity inconsistency, and task version invalidation.

[0094] When the picking task status is "Pending Picking" or "Pending Verification," this step is triggered by scanning the label of the packaging unit to be picked out. The scanning terminal reads the packaging label of the packaging unit to be picked out and sends the label content, task identifier, scanning terminal identifier, and scanning time to the warehouse management server; the operator enters or scans to obtain the measured quantity. The measured quantity represents the quantity of materials to be picked out from the actual packaging unit this time. The label information acquisition module finds the picking task based on the task identifier and reads the target batch node, locked quantity, target batch path, node version, path version, and task version.

[0095] The label information acquisition module parses the batch node identifier in the packaging label and searches for the batch node from the data storage module based on the batch node identifier to generate the actual batch node. If the packaging label does not contain a batch node identifier, the batch node identifier cannot be found, or the found batch node is invalid, the operation access module sets the node consistency status to inconsistent and the operation access status to disallowed. When a valid batch node is found, the operation access module reads the top-level batch identifier, direct parent batch identifier, material identifier, packaging level, current quantity, node status, and node version of the actual batch node.

[0096] The actual batch path is independently generated by the operation admission module based on the actual batch nodes obtained from the scan and the currently valid parent-child batch relationship record. The operation admission module reads the direct parent batch identifier of the actual batch node, finds the parent batch node based on the direct parent batch identifier, and reads the parent-child batch relationship record between the actual batch node and the parent batch node; when the relationship status of the parent-child batch relationship record is valid, it continues to read the direct parent batch identifier of the parent batch node; it searches upwards level by level in the same way until the top-level batch node is found.

[0097] The operation admission module arranges the found batch node identifiers in order from the top-level batch node to the actual batch node, generating the actual batch path. The actual batch path includes the path start point, path end point, number of packaging layers, and the batch node identifier corresponding to each packaging layer; the path start point is the top-level batch node identifier, and the path end point is the actual batch node identifier. If, during the upward search, there are parent-child batch relationship records with an invalid relationship status, a missing direct parent batch identifier, or adjacent node relationships that cannot be matched, the operation admission module stops path generation and sets the actual batch path to an incomplete state.

[0098] The operation admission module first compares the actual batch node identifier with the target batch node identifier in the picking task; if they are the same, a node consistency status is generated; if they are different, a node inconsistency status is generated. If the material identifiers of the actual batch node and the target batch node are the same but the batch node identifiers are different, a node inconsistency status is still generated; therefore, another packaging unit with the same material identifier and packaging level does not replace the target batch node recorded in the picking task.

[0099] Subsequently, the operation access module compares the actual batch path with the target batch path. The comparison process includes: comparing the starting points of the actual and target batch paths; comparing their ending points; comparing the number of packaging layers; and comparing the batch node identifiers corresponding to each packaging layer in order from the top-level batch node to the target batch node. If all of the above are the same, a path consistency status is generated; if any one item is different, a path inconsistency status is generated. If the path version of the target batch path is inconsistent with the path version in the picking task record, the operation access module sets the path consistency status to an inconsistent status.

[0100] The operation admission module compares the measured quantity with the locked quantity. If the measured quantity is not greater than the locked quantity and not greater than the current quantity of the actual batch node, a quantity consistency status is generated; if the measured quantity is greater than the locked quantity or greater than the current quantity of the actual batch node, a quantity inconsistency status is generated. In one implementation, when the measured quantity is less than the locked quantity, the operation admission module records a partial execution status, and the unexecuted quantity remains in the locked quantity. In another implementation, when the measured quantity is less than the locked quantity, the picking task is set to an abnormal pending review status, and the task is regenerated after review.

[0101] The operation access module also compares the task version, the current node version of the target batch node, and the current path version of the target batch path in the picking task. A task version invalidation status is generated when the task status is invalid, or when the current node version and current path version are inconsistent with the version recorded in the picking task. A task version valid status is generated when the task version is valid, the node version is the same, and the path version is the same.

[0102] When the node consistency status, path consistency status, and quantity consistency status are all consistent, and the task version is valid, the operation access module sets the operation access status to allowed. If any of the node consistency status, path consistency status, quantity consistency status, or task version status fails to meet the aforementioned conditions, the operation access status is set to disallowed. When the operation access status is set to disallowed, the actual batch node, target batch node, inventory record, and warehouse location status are not updated, and the picking task is set to an abnormal pending review status or remains in a pending picking status.

[0103] When the scanning terminal repeatedly uploads the same packaging label, the label information acquisition module queries the measured scan dataset based on the task identifier, actual batch node identifier, measured quantity, and scan event identifier. If the same scan record already exists, the current scan record is set as a duplicate scan record, and the operation access status is not generated again. In one implementation, when the scanning terminal is offline, it locally saves the packaging label, task identifier, measured quantity, and scan time; after communication is restored, the offline scan record is sent to the warehouse management server, and the task version, node version, and path version are re-compared.

[0104] In one implementation scenario, the target batch node for the picking task record is node C, the target batch path is ABC, and the locked quantity is 100. After the verification node scans the packaging label of node C, the operation access module searches upwards from node C along the valid parent-child batch relationship record for nodes B and A, generating the actual batch path ABC. The actual batch node is the same as the target batch node, the actual batch path is the same as the target batch path, the measured quantity is 100, the task version is valid, and the operation access status is set to allowed. When the verification node scans node D, even if node D has the same material identification and packaging level as node C, the actual batch path is ABD, which is different from the target batch path, and the operation access status is set to disallowed.

[0105] This step ultimately generates the actual batch node, actual batch path, node consistency status, path consistency status, quantity consistency status, task version status, and operation access status. The actual batch node, actual batch path, measured quantity, and operation access status are written into the measured scan dataset. When the operation access status is allowed, the target batch node, target batch path, locked quantity, measured quantity, and version status serve as inputs for S400 to update the batch node, inventory record, and warehouse status. When the operation access status is disallowed, the abnormal status and scan record enter the abnormal handling module and are not included in the S400 quantity deduction process.

[0106] S400 When the operation access status is allowed, update the target batch node according to the outbound quantity, and update the availability status of the descendant of the parent batch node along the target batch path; update the picking task and inventory record, and use the updated batch node status for subsequent order filtering.

[0107] This step receives the operation access status, actual batch node, actual batch path, and measured quantity generated by S300, and also receives the target batch node, locked quantity, target batch path, node version, path version, and task version recorded in the picking task of S200. This step is executed in conjunction with the status update module, exception handling module, warehouse status monitoring module, and data storage module. When the operation access status is allowed, the status update module uses the measured quantity as the outbound quantity; when the operation access status is disallowed, the status update module does not perform quantity or status updates.

[0108] Before performing the quantity update, the status update module rereads the node version of the target batch node, the task version of the picking task, the path version of the target batch path, and the warehouse status version, and compares them with the versions recorded when the picking task was generated. If all versions are the same, the status update module starts a database transaction; if any version is different, the picking task is set to an abnormal pending review status, preventing the submission of changes to the target batch node, parent batch node, inventory records, and warehouse status, and recording version conflict information.

[0109] The current quantity represents the quantity of materials that are still directly stored in the packaging unit corresponding to the batch node, have not yet been transferred to the sub-batch node, and have not yet been shipped out; the locked quantity represents the quantity that has been reserved by a valid picking task and has not yet been shipped out; the allocatable quantity is generated by subtracting the locked quantity from the current quantity; the descendant available quantity represents the sum of the allocatable quantities of the sub-batch nodes and lower-level batch nodes that are in a valid state under a parent batch node, and the descendant available quantity is not included in the current quantity of the parent batch node.

[0110] The status update module deducts the outbound quantity from the current quantity of the target batch node and releases the outbound quantity from the locked quantity; it then regenerates the allocatable quantity of the target batch node based on the updated current quantity and the locked quantity. If the actual quantity is less than the original locked quantity and the picking task is recorded as partially executed, the status update module only releases the outbound quantity for this task from the locked quantity, and the remaining locked quantity continues to be associated with the current picking task; when the picking task ends, the task generation module releases the remaining locked quantity that was not executed.

[0111] After updating the current quantity of the target batch nodes, the state update module reads the ordered set of node identifiers of the target batch path and searches for the parent batch nodes level by level in reverse order from the target batch node to the top-level batch node. For each parent batch node, the state update module finds the child batch nodes that have a valid parent-child batch relationship record with that parent batch node, and reads the current quantity, locked quantity, allocable quantity, and node status of the child batch nodes; then, it summarizes the allocable quantities of the child batch nodes in a valid state and their subordinate batch nodes to generate the available quantity of the descendants of that parent batch node.

[0112] In one implementation, the descendant availability status includes a state with available descendants and a state with no available descendants. When the number of available descendants of the parent batch node is greater than 0, the descendant availability status is set to a state with available descendants; when the number of available descendants is 0, the descendant availability status is set to a state with no available descendants. When the current quantity of the target batch node is 0, the target batch node is set to a state of being out of stock; when the current quantity of the parent batch node is 0 and the number of available descendants is 0, the parent batch node is set to a state of being exhausted; when the parent batch node still has a current quantity or a number of available descendants, its original node status is maintained or it is set to a valid status.

[0113] When the status update module updates the parent batch node level by level according to the target batch path, it does not deduct the quantity already shipped by the child batch node from the current quantity of the parent batch node. The source batch node has already deducted the current quantity according to the transferred quantity during the unpacking stage; this step only updates the available quantity and available status of the descendants of the parent batch node. Therefore, the unopened material in the original package is recorded in the current quantity of the parent batch node, and the material that has been split to the lower packaging unit is recorded in the current quantity of the lower batch node and the available quantity of the descendants of the parent batch node.

[0114] After updating the target batch node and the parent batch node, the status update module updates the picking task status. When all materials corresponding to the locked quantity have been dispatched, the picking task is set to the completed status; if there are unexecuted locked quantities in the picking task, the task status is set to partially executed or pending review. The status update module searches for the warehouse status based on the warehouse identifier of the target batch node; if the current quantity of the target batch node is 0 and there are no active batch nodes in that warehouse, the warehouse occupancy status is set to idle; if there are still active batch nodes in the warehouse, the warehouse occupancy status is maintained.

[0115] The inventory records are synchronously updated with the current quantity, locked quantity, allocable quantity, node status, and node version of the target batch node, and the available quantity, available status, and node version of the descendant of the parent batch node are also updated. The status update module writes the target batch node, parent batch node, picking task, inventory record, and warehouse status involved in this update into the status change list. The status change list includes task identifier, order identifier, actual batch node, outbound quantity, quantity before change, quantity after change, node version, warehouse status version, transaction identifier, and commit status.

[0116] The data storage module writes the target batch node, parent batch node, picking task, inventory record, warehouse status, and status change list within the same database transaction. If any record write fails, the exception handling module rolls back the current database transaction, restoring the target batch node, parent batch node, picking task, inventory record, and warehouse status to their state before the transaction started. After the rollback is complete, the picking task is set to an exception pending review state, and a transaction rollback record is generated.

[0117] If a record with the same task identifier, actual batch node, and actual measured quantity as the current task, and whose submission status is "committed," already exists in the status change list, the status update module will identify this request as a duplicate submission. It will not deduct the current quantity of the target batch node again, release the locked quantity again, or update the available quantity of the descendant of the parent batch node again. If a record with the same task identifier exists in the status change list but whose submission status is "rollback," the status update module will re-compare the task version, node version, path version, and warehouse status version, and accept the resubmission or set an abnormal pending review status based on the comparison results.

[0118] The status update module also generates batch inventory propagation records and traceability records. The batch inventory propagation records include the target batch node, target batch path, outbound quantity, multiple parent batch nodes, available descendant quantities before each node change, available descendant quantities after each node change, and record time. The traceability records include the order identifier, task identifier, actual batch node, actual batch path, top-level batch identifier, supplier batch identifier, outbound quantity, and outbound time. These records are archived by the data storage module and associated with the transaction identifiers in the status change list.

[0119] In one implementation, after a database transaction is committed, the status update module generates a standard message and sends it to the warehouse management system or enterprise resource planning system. The standard message includes an order identifier, batch node identifier, outbound quantity, warehouse location identifier, and submission status. If message transmission fails, the local database transaction is not re-executed. The exception handling module records the standard message transmission status and resends the standard message according to the transaction identifier.

[0120] In one implementation scenario, the target batch path is ABC. Node C currently has a quantity of 100, a locked quantity of 100, and a shipped quantity of 100. The status update module updates both the current quantity and locked quantity of node C to 0, setting node C to a shipped state. Node B currently has a quantity of 0, and there are no valid sub-batch nodes with allocable quantities under it. The available quantity of node B's descendants is updated to 0 and set to a exhausted state. Node A retains its current quantity of 400. The available quantity of its descendants is re-aggregated based on the allocable quantities of node D and other valid sub-batch nodes, and node A remains in a valid state. Subsequently, the status update module sets the picking task to a completed state and sets the warehouse location where node C is located to an idle state when there are no other valid batch nodes.

[0121] This step generates the updated target batch node status, the available status of multiple parent batch nodes' descendants, the updated picking tasks, inventory records, warehouse status, status change list, batch inventory propagation records, and traceability records. The updated batch node status is written to the available batch node status record; when subsequent orders arrive, the batch node filtering module in S200 rereads the available batch node status record, excludes batch nodes with a status of "outbound" or "exhausted," and regenerates a candidate batch node set based on the updated allocable quantity.

[0122] Example 2: Figure 2 A structural block diagram of an integrated circuit warehouse inbound / outbound control system based on multi-level batch identification, according to an embodiment of the present invention, is shown. Figure 2 As shown, the structure may include:

[0123] The label information acquisition module 01 is used to acquire original packaging label information, unpacking requests, orders, and packaging labels awaiting shipment. Specifically, the original packaging label information is generated by scanning the packaging labels on the original packaging and includes material identification, packaging level, and quantity attributes. The unpacking request includes the source batch node, transfer quantity, and packaging level. The order includes material identification, packaging level, and required quantity. The packaging labels awaiting shipment come from the packaging unit corresponding to the picking operation. The label information acquisition module receives and parses the original packaging label information, unpacking requests, orders, and packaging labels awaiting shipment, and maintains the association between the original packaging label information and the corresponding packaging unit. The original packaging label information and unpacking requests are transmitted to the batch relationship construction module; the orders are transmitted to the task generation module; and the packaging labels awaiting shipment are transmitted to the operation access module. When the original packaging label information lacks material identification, packaging level, or quantity attributes, the corresponding original packaging label information is not output to the batch relationship construction module; when the unpacking request lacks source batch node or transfer quantity, the original record of the unpacking request is retained, and the generation of sub-batch nodes is not triggered; when the order or the packaging label to be shipped is received repeatedly, one valid input is retained according to the same order or the same packaging label.

[0124] Batch relationship construction module 02, connected to the label information acquisition module, is used to create a top-level batch file based on the original packaging label information, and generate sub-batch nodes, parent-child batch relationship records, and batch path records based on the source batch node, transfer quantity, and packaging level in the unpacking request. Specifically, the batch relationship construction module receives the original packaging label information and unpacking request output by the label information acquisition module, creates a top-level batch file based on the material identifier, packaging level, and quantity attributes in the original packaging label information, and associates the top-level batch file with the original packaging label information. When the unpacking request is received, the batch relationship construction module searches for the corresponding top-level batch file or existing sub-batch node based on the source batch node, and reads the material identifier, packaging level, and quantity attributes of the source batch node. When the transfer quantity is not greater than the quantity attribute of the source batch node, a sub-batch node is generated based on the packaging level in the unpacking request; the source batch node is recorded as the parent batch node, and the generated sub-batch nodes are associated with the parent batch node to form a parent-child batch relationship record; then, a batch path record is formed according to the arrangement order from the top-level batch node to the sub-batch nodes. If the number of transfers exceeds the number of the source batch node, or if the source batch node does not exist, no valid parent-child batch relationship record or batch path record is generated. The batch relationship construction module transmits the child batch node, parent-child batch relationship record, batch path record, and transfer number to the quantity verification module, and provides the operation admission module with a valid parent-child batch relationship record.

[0125] The quantity verification module 03, connected to the batch relationship construction module, is used to compare the transfer quantity with the quantity attributes of the sub-batch nodes, generate a quantity conservation state, and set the sub-batch nodes, parent-child batch relationship records, and batch path records to a valid state when the quantity conservation state is valid. Specifically, the quantity verification module receives the transfer quantity, sub-batch nodes, parent-child batch relationship records, and batch path records output by the batch relationship construction module, and summarizes the quantity attributes of the sub-batch nodes corresponding to the same unpacking request. The quantity verification module compares the summarized result of the sub-batch node quantity attributes with the transfer quantity; if they are the same, a valid quantity conservation state is generated, and the corresponding sub-batch nodes, parent-child batch relationship records, and batch path records are set to a valid state; if they are different, an invalid quantity conservation state is generated, and the sub-batch nodes, parent-child batch relationship records, and batch path records are kept in an invalid state. The quantity conservation state is associated with the corresponding unpacking request, source batch node, and sub-batch node. When the same unpacking request is submitted repeatedly, the quantity verification module calls the already generated quantity conservation state and does not repeatedly set the sub-batch node, parent-child batch relationship record, and batch path record. The quantity verification module transmits the valid sub-batch node and corresponding batch path record to the warehouse management module and provides the valid parent-child batch relationship record to the operation access module for invocation.

[0126] The warehouse management module 04, connected to the quantity verification module, is used to set the valid sub-batch nodes to the warehousing state and associate them with warehouses, generating an available batch node status record. Specifically, the warehouse management module receives the valid sub-batch nodes and corresponding batch path records output by the quantity verification module, and reads the material identifier, packaging level, and quantity attribute of the sub-batch nodes. The warehouse management module selects the warehouse corresponding to the sub-batch node from the warehouses in the associatable state, sets the sub-batch node to the warehousing state, and records the association between the sub-batch node and the warehouse. After completing the association, the warehouse management module forms an allocable quantity based on the quantity attribute of the sub-batch node and the locked quantity, and generates an available batch node status record. The available batch node status record includes the sub-batch node, material identifier, packaging level, allocable quantity, associated warehouse, and corresponding batch path record. If the warehouse is already associated with another sub-batch node or the sub-batch node is not in a valid state, the warehouse management module does not set the sub-batch node to the warehousing state, nor does it generate a corresponding available batch node status record. The warehouse management module transmits the available batch node status record to the task generation module, and receives the updated batch node status after the status update module completes the outbound update, and modifies the available batch node status record according to the updated batch node status.

[0127] The task generation module 05, connected to the warehouse management module and the tag information acquisition module, is used to filter target batch nodes from the available batch node status records based on the material identifier, packaging level, and allocable quantity in the order, lock the quantity and target batch path in the target batch node, and generate a picking task. Specifically, the task generation module receives the order output by the tag information acquisition module and the available batch node status records output by the warehouse management module. The task generation module first compares the material identifier in the order with the material identifier in the available batch node status records, then compares the packaging level in the order with the packaging level in the available batch node status records, and filters the target batch node according to the correspondence between the required quantity and the allocable quantity in the order. After the target batch node is determined, the task generation module locks the quantity corresponding to the required quantity from the allocable quantity of the target batch node, and calls the batch path record corresponding to the target batch node to record it as the target batch path. The task generation module associates the order, target batch node, locked quantity, and target batch path to form a picking task, and passes the picking task to the operation access module. When the allocatable quantity in the available batch node status record is less than the required quantity in the order, the task generation module continues to filter target batch nodes with the same material identifier and packaging level, and records the locked quantity and target batch path respectively; if the total quantity in the available batch node status record is still less than the required quantity, no picking task in a valid state is generated. After the status update module sends the updated batch node status, the task generation module rereads the corresponding available batch node status record and performs subsequent order filtering based on the updated allocatable quantity.

[0128] The operation access module 06, connected to the task generation module, batch relationship construction module, and label information acquisition module, is used to find the actual batch node based on the label of the package to be shipped, search along the parent-child batch relationship record to the top-level batch node and generate the actual batch path, compare the actual batch node with the target batch node, the actual batch path with the target batch path, and the measured quantity with the locked quantity, and generate an operation access status. Specifically, the operation access module receives the picking task output by the task generation module, receives the label of the package to be shipped output by the label information acquisition module, and calls the parent-child batch relationship record with valid status provided by the batch relationship construction module. The operation access module finds the actual batch node based on the batch node identifier in the label of the package to be shipped, reads the parent-child batch relationship record corresponding to the actual batch node, and searches for the parent batch node level by level along the parent-child batch relationship record until the top-level batch node is found; then, the batch nodes are arranged in the order from the top-level batch node to the actual batch node to generate the actual batch path. The operation access module compares the actual batch node with the target batch node in the picking task, compares the actual batch path with the target batch path, and compares the measured quantity corresponding to the outbound packaging label with the locked quantity. If all three comparisons match, an allowed operation access status is generated; if any of the actual batch node, actual batch path, or measured quantity does not match, an disallowed operation access status is generated. If the parent-child batch relationship record does not exist, the top-level batch node is not found in the actual batch path, or the outbound packaging label is submitted repeatedly, the operation access module maintains the original state of the picking task and inventory records and does not send an allowed status to the status update module. The operation access module then transmits the allowed operation access status, target batch node, target batch path, locked quantity, and measured quantity to the status update module.

[0129] The status update module 07, connected to the operation access module and the task generation module, is used to update the target batch node according to the outbound quantity when the operation access status is allowed, update the availability status of the descendants of the parent batch node along the target batch path, update the picking task and inventory record, and send the updated batch node status to the task generation module. Specifically, the status update module receives the allowed status, target batch node, target batch path, locked quantity, and measured quantity output by the operation access module, and records the measured quantity actually submitted this time as the outbound quantity. The status update module deducts the outbound quantity from the quantity attribute of the target batch node, releases the corresponding quantity from the locked quantity, and then generates a new allocable quantity according to the updated quantity attribute and locked quantity. After completing the target batch node update, the status update module searches for the parent batch node level by level from the target batch node to the top-level batch node according to the target batch path, and updates the availability status of the descendants of the parent batch node according to the allocable quantity of the child batch nodes under each parent batch node that are in a valid state. When the quantity attribute of the target batch node is updated to 0, it is set to the "outbound" status. When the parent batch node has no allocable quantity, its descendant's available status is set to "no available". The status update module synchronously updates the picking task and inventory record, and sends the updated batch node status to the task generation module. The task generation module calls the updated batch node status to perform subsequent order filtering. If the operation access status is not allowed, or if the target batch node, target batch path, and picking task record are inconsistent, the status update module does not perform outbound quantity deduction and maintains the original status of the picking task and inventory record.

Claims

1. A method for controlling the inbound and outbound storage of integrated circuits based on multi-level batch identification, characterized in that, include: S100: Obtain the original packaging label information and create a top-level batch file; In response to the unpacking request, generate sub-batch nodes, parent-child batch relationship records, and batch path records based on the source batch node, transfer quantity, and packaging level; compare the transfer quantity with the quantity attribute of the sub-batch node to generate a quantity conservation state; when the quantity conservation state is valid, set the sub-batch node, parent-child batch relationship record, and batch path record to the valid state; S200: Set the effective sub-batch node to the inbound status and associate it with the warehouse location to generate an available batch node status record; receive the order, filter the target batch node according to the material identifier, packaging level and allocable quantity, lock the quantity and target batch path, and generate a picking task; S300: Scan the packaging label to determine the actual batch node; trace the parent-child batch relationship record to the top-level batch node and generate the actual batch path; Compare the actual batch node with the target batch node, the actual batch path with the target batch path, and the measured quantity with the locked quantity to generate an operation access status. S400 When the operation access status is allowed, update the target batch node according to the outbound quantity, and update the availability status of the descendant of the parent batch node along the target batch path. Update picking tasks and inventory records, and use the updated batch node status for subsequent order filtering.

2. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The batch node includes a batch node identifier, a top-level batch identifier, a direct parent batch identifier, a material identifier, a packaging level, a current quantity, a locked quantity, an allocable quantity, a descendant available quantity, a node status, and a node version; The parent-child batch relationship record includes the parent batch node identifier, child batch node identifier, unpacking event identifier, transfer quantity, relationship status, and relationship version; The batch path record includes a path identifier, a top-level batch node identifier, a target batch node identifier, an ordered set of node identifiers, a path version, and a path status.

3. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The generation of the quantity conservation state includes: Summarize the quantity attribute of multiple sub-batch nodes generated from the same unpacking request; Compare the summarized results with the stated number of transfers; When the two are the same, the quantity conservation state is set to a valid state, the current quantity of the source batch node is updated according to the transfer quantity, and the child batch node, parent-child batch relationship record and batch path record are set to a valid state. If the two are different, the quantity conservation state is set to an invalid state, the current quantity and node state of the source batch node are maintained, and the parent-child batch relationship record and batch path record are kept in an invalid state.

4. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The material storage constraints include humidity sensitivity level, electrostatic protection requirements, and packaging status; Storage capacity includes dry storage capacity, electrostatic discharge protection capacity, capacity, isolation properties, and occupancy status; Set the storage space that meets the material storage constraints and is in an idle state to a reserved state; Scan the packaging labels of the sub-batch nodes and the storage labels of the reserved storage spaces, compare the sub-batch nodes, reserved storage spaces, and storage space reservation status, and generate a shelf access status. When the shelf access status is allowed, the sub-batch node is set to the inbound status and associated with the reserved storage space, generating the available batch node status record.

5. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The selection of the target batch nodes includes: From the available batch node status records, select batch nodes whose material identifier matches the order, whose packaging level matches the order, whose node status is available, and whose allocable quantity is greater than 0, and generate a candidate batch node set; The candidate batch node set is arranged in ascending order of top-level batch entry time, batch node generation time, and batch node identifier; The target batch nodes are determined according to the order of arrangement. When the required quantity is provided by multiple target batch nodes, the sum of the locked quantities of the multiple target batch nodes is equal to the required quantity.

6. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The picking task includes task identifier, order identifier, target batch node, locked quantity, target batch path, node version, path version, task version, and task status; When generating the picking task, the locked quantity of the target batch node is increased by the quantity to be shipped out this time, and the target batch path corresponding to the target batch node is recorded. When the node version or path version changes, the task status is set to task version invalidation status, and the quantity to be shipped out this time is released from the locked quantity of the target batch node.

7. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The generation of the actual batch path includes: Locate the actual batch number based on the packaging label; Read the direct parent batch identifier of the actual batch node, and search for the parent batch node level by level along the parent-child batch relationship record in the valid state until the top-level batch node; Arrange the batch node identifiers in the order from the top-level batch node to the actual batch node to generate the actual batch path; When the actual batch node is the same as the target batch node, the actual batch path and the target batch path have the same path start point, path end point, number of packaging levels and batch node identifiers, the actual measured quantity is not greater than the locked quantity and the task version is in a valid state, the operation access status is set to allowed.

8. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, The target batch node and the parent batch node to be updated include: The outbound quantity is deducted from the current quantity of the target batch node, and the outbound quantity is released from the locked quantity. An allocable quantity is generated based on the updated current quantity and the locked quantity. The parent batch node is searched level by level according to the target batch path. The number of allocable sub-batch nodes under each parent batch node that are in a valid state is summarized, and the number of available descendants and the available status of the descendants of the parent batch node are generated. When the current quantity of the target batch node is 0, its node status is set to "outbound"; when the current quantity of the parent batch node is 0 and the available quantity of its descendants is 0, its node status is set to "exhausted".

9. The integrated circuit warehousing and outbound control method based on multi-level batch identification according to claim 1, characterized in that, When the operation access status is allowed, compare the task version, the node version of the target batch node, and the position status version. If any version is inconsistent with the version recorded in the picking task, the picking task will be set to an abnormal pending review status and submission will be prevented. When all versions are consistent, a database transaction is initiated to update the target batch node, the parent batch node, picking tasks, inventory records, and warehouse status, and write them to the status change list. If a record with the same task identifier, actual batch node, and actual measurement quantity exists in the status change list, the update will not be executed repeatedly.

10. An integrated circuit warehouse inbound and outbound control system based on multi-level batch identification, characterized in that, include: The module includes: tag information acquisition module, batch relationship construction module, quantity verification module, warehouse management module, task generation module, operation access module, and status update module. The system is used to implement the method described in any one of claims 1-9.