Class DefaultAsnService
java.lang.Object
de.hybris.platform.warehousing.asn.service.impl.DefaultAsnService
- All Implemented Interfaces:
AsnService
The default implementation of
AsnService will create the stock levels for the given Advanced Shipping Notice, based on given
strategies.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCancels theAdvancedShippingNoticeModelfor the givenAdvancedShippingNoticeModel.INTERNALIDconfirmAsnReceipt(String internalId) Confirms the receipt of givenAdvancedShippingNoticeModelprotected voidcreateStockLevel(AdvancedShippingNoticeEntryModel asnEntry, WarehouseModel warehouse, int productQuantity, Date releaseDate, String bin) CreatesStockLevelModelbased on givenAdvancedShippingNoticeEntryModel,WarehouseModel, productQuantity, release date and bin.protected voidcreateStockLevel(AdvancedShippingNoticeEntryModel asnEntry, WarehouseModel warehouse, Date releaseDate) CreatesStockLevelModelbased on givenAdvancedShippingNoticeEntryModel,WarehouseModeland release date.protected AsnDaogetAsnForInternalId(String internalId) ReturnsAdvancedShippingNoticeModelfor givenAdvancedShippingNoticeModel.INTERNALIDprotected AsnReleaseDateStrategyprotected AsnWorkflowServiceprotected BinSelectionStrategyprotected ModelServicegetStockLevelsForAsn(AdvancedShippingNoticeModel advancedShippingNotice) Returns list ofStockLevelModel(s) for the givenAdvancedShippingNoticeModelprotected WarehouseStockServicevoidCreatesStockLevelModels based on given asn entries taken fromAdvancedShippingNoticeModelvoidvoidsetAsnReleaseDateStrategy(AsnReleaseDateStrategy asnReleaseDateStrategy) voidsetAsnWorkflowService(AsnWorkflowService asnWorkflowService) voidsetBinSelectionStrategy(BinSelectionStrategy binSelectionStrategy) voidsetModelService(ModelService modelService) voidsetWarehouseStockService(WarehouseStockService warehouseStockService)
-
Constructor Details
-
DefaultAsnService
public DefaultAsnService()
-
-
Method Details
-
processAsn
Description copied from interface:AsnServiceCreatesStockLevelModels based on given asn entries taken fromAdvancedShippingNoticeModel- Specified by:
processAsnin interfaceAsnService- Parameters:
asn- advanced shipping notice
-
confirmAsnReceipt
Description copied from interface:AsnServiceConfirms the receipt of givenAdvancedShippingNoticeModel- Specified by:
confirmAsnReceiptin interfaceAsnService- Parameters:
internalId- the givenAdvancedShippingNoticeModel.INTERNALID- Returns:
- the updated
AdvancedShippingNoticeModel
-
getAsnForInternalId
Description copied from interface:AsnServiceReturnsAdvancedShippingNoticeModelfor givenAdvancedShippingNoticeModel.INTERNALID- Specified by:
getAsnForInternalIdin interfaceAsnService- Parameters:
internalId- the givenAdvancedShippingNoticeModel.INTERNALID- Returns:
- the
AdvancedShippingNoticeModel
-
getStockLevelsForAsn
public List<StockLevelModel> getStockLevelsForAsn(AdvancedShippingNoticeModel advancedShippingNotice) Description copied from interface:AsnServiceReturns list ofStockLevelModel(s) for the givenAdvancedShippingNoticeModel- Specified by:
getStockLevelsForAsnin interfaceAsnService- Parameters:
advancedShippingNotice- theAdvancedShippingNoticeModel- Returns:
- the list of corresponding
StockLevelModel
-
cancelAsn
Description copied from interface:AsnServiceCancels theAdvancedShippingNoticeModelfor the givenAdvancedShippingNoticeModel.INTERNALID- Specified by:
cancelAsnin interfaceAsnService- Parameters:
internalId- the givenAdvancedShippingNoticeModel.INTERNALID- Returns:
- the updated
AdvancedShippingNoticeModel
-
createStockLevel
protected void createStockLevel(AdvancedShippingNoticeEntryModel asnEntry, WarehouseModel warehouse, Date releaseDate) CreatesStockLevelModelbased on givenAdvancedShippingNoticeEntryModel,WarehouseModeland release date.
Based onBinSelectionStrategy, product quantity taken fromAdvancedShippingNoticeEntryModelcan be divided for different bins. Therefore for each entry new stock level needs to be created.- Parameters:
asnEntry-AdvancedShippingNoticeEntryModelwhich keep information aboutProductModel.CODEand quantitywarehouse-WarehouseModelwhich needs to be added to stock levelreleaseDate- theStockLevelModel.RELEASEDATE
-
createStockLevel
protected void createStockLevel(AdvancedShippingNoticeEntryModel asnEntry, WarehouseModel warehouse, int productQuantity, Date releaseDate, String bin) CreatesStockLevelModelbased on givenAdvancedShippingNoticeEntryModel,WarehouseModel, productQuantity, release date and bin.- Parameters:
asnEntry- asn entry which keep information about product codewarehouse- warehouse to be assigned to the new stock levelproductQuantity- product quantityreleaseDate- release datebin- bin to be assigned to the new stock level
-
getModelService
-
setModelService
-
getBinSelectionStrategy
-
setBinSelectionStrategy
-
getAsnReleaseDateStrategy
-
setAsnReleaseDateStrategy
-
getWarehouseStockService
-
setWarehouseStockService
-
getAsnDao
-
setAsnDao
-
getAsnWorkflowService
-
setAsnWorkflowService
-