@groovy.util.logging.Slf4j @groovy.lang.Singleton class ScanAssyService extends java.lang.Object implements org.simplemes.mes.system.service.ScanPoint, org.simplemes.mes.system.service.GetBarcodePrefixPoint
This service provides business logic used for the Assembly module that provides additions to the core Scan service.
Modifiers | Name | Description |
---|---|---|
static java.lang.String |
BARCODE_LOT |
The logical element name for a Lot barcode element. |
static java.lang.String |
BARCODE_PRODUCT |
The logical element name for a Product barcode element. |
static java.lang.String |
BARCODE_SERIAL |
The logical element name for a Serial Number barcode element. |
static java.lang.String |
BARCODE_VENDOR |
The logical element name for a Vendor barcode element. |
Type | Name and description |
---|---|
private OrderAssyService |
orderAssyService |
Constructor and description |
---|
ScanAssyService
() |
Type Params | Return Type | Name and description |
---|---|---|
|
protected void |
assembleComponent(org.simplemes.mes.system.ScanRequestInterface scanRequest, java.lang.String componentProduct, org.simplemes.mes.system.ScanResponseInterface result) Adds a single component to the order/LSN. |
|
OrderBOMComponent |
determineOrderComponent(org.simplemes.mes.system.ScanRequestInterface scanRequest, java.lang.String componentProduct) Determines the component from the order/LSN that corresponds to the parsed barcode map. |
|
java.util.List<OrderBOMComponent> |
findAllMatchingComponents(org.simplemes.mes.demand.domain.Order order, java.lang.String product) Finds all of the matching OrderComponents for the given product, sorted in ascending BOM order. |
|
java.util.Map<java.lang.String, java.lang.String> |
postGetBarcodePrefixMapping(java.util.Map<java.lang.String, java.lang.String> coreResponse) Post-scan extension method for the getBarcodePrefix() method. |
|
org.simplemes.mes.system.ScanResponseInterface |
postScan(org.simplemes.mes.system.ScanResponseInterface coreResponse, org.simplemes.mes.system.ScanRequestInterface scanRequest) Post-scan extension method for the scan() method. |
|
void |
preGetBarcodePrefixMapping() Pre-scan extension method for the getBarcodePrefix() method. |
|
void |
preScan(org.simplemes.mes.system.ScanRequestInterface scanRequest) Pre-scan extension method for the scan() method. |
|
int |
processBarcodeForFlexField(org.simplemes.mes.system.ScanResponseInterface scanResponse, java.lang.String fieldName, AddOrderAssembledComponentRequest addRequest) Check the parsed barcode for the given flex field name (case insensitive) and adjust the addRequest to include the value if the field is in the barcode. |
Methods inherited from class | Name |
---|---|
class java.lang.Object |
java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
The logical element name for a Lot barcode element. This is used by internal logic for determining what to do with a scan. The barcode will contain the prefix 'LOT'.
The logical element name for a Product barcode element. This is used by internal logic for determining what to do with a scan. The barcode will contain the prefix 'PRD'.
The logical element name for a Serial Number barcode element. This is used by internal logic for determining what to do with a scan. The barcode will contain the prefix 'SN'.
The logical element name for a Vendor barcode element. This is used by internal logic for determining what to do with a scan. The barcode will contain the prefix 'VND'.
Adds a single component to the order/LSN.
scanRequest
- The input scan request. Includes the parsed barcode data.componentProduct
- The product for the component.result
- The scan results from the core method.Determines the component from the order/LSN that corresponds to the parsed barcode map.
scanRequest
- The request with the order/LSN to be checked for the scanned component.componentProduct
- The product name to for the component.Finds all of the matching OrderComponents for the given product, sorted in ascending BOM order.
order
- The order to be checked for the scanned component.product
- The the product name to search for.Post-scan extension method for the getBarcodePrefix() method.
coreResponse
- The response from the core method (or from other extensions that provide a response).Post-scan extension method for the scan() method. This extension adds ability to handle the scan request for component assembly.
coreResponse
- The response from the core method (or from other extensions that provide a response).scanRequest
- The details of the request .Pre-scan extension method for the getBarcodePrefix() method.
Note: This module's method does nothing in the pre method, just the post method.
Pre-scan extension method for the scan() method.
Note: This module's method does nothing in the pre method, just the post method.
Check the parsed barcode for the given flex field name (case insensitive) and adjust the addRequest to include the value if the field is in the barcode. This helps detect when a barcode like ^PRD^WHEEL-27^LOT^87929459 is used with a FlexType field = 'lot' or 'LOT' and will use the value ('87929459') in the add component request.
scanResponse
- The response being built for this scan. Includes the barcode fields.fieldName
- The flex type field name.addRequest
- The add component request to add the field value to, if it matches.Groovy Documentation