Class SapOmsSendOrderToDataHubAction
- java.lang.Object
-
- de.hybris.platform.processengine.action.AbstractAction<T>
-
- de.hybris.platform.processengine.action.AbstractProceduralAction<OrderProcessModel>
-
- de.hybris.platform.sap.saporderexchangeoms.actions.SapOmsSendOrderToDataHubAction
-
- All Implemented Interfaces:
Action<OrderProcessModel>
- Direct Known Subclasses:
SapCpiOmsOrderOutboundAction
public class SapOmsSendOrderToDataHubAction extends AbstractProceduralAction<OrderProcessModel>
To send the order to Data Hub to be processed and sent as an IDoc to the SAP back end. The retry logic is applied in case the sending did not succeed. The order export status is set to EXPORTED / NOT EXPORTED accordingly.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class de.hybris.platform.processengine.action.AbstractProceduralAction
AbstractProceduralAction.Transition
-
-
Field Summary
-
Fields inherited from class de.hybris.platform.processengine.action.AbstractAction
modelService, processParameterHelper
-
Fields inherited from interface de.hybris.platform.processengine.spring.Action
ERROR_RETURN_CODE, RETRY_RETURN_CODE
-
-
Constructor Summary
Constructors Constructor Description SapOmsSendOrderToDataHubAction()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected OrderHistoryEntryModelcreateOrderHistory(OrderModel order, java.lang.String logicalSystem)Create an entry to the order history for every SAP order sent to data-hubprotected voidcreateSapOrders(java.util.List<SAPOrderModel> sapOrders, OrderHistoryEntryModel orderHistoryEntry, java.util.Set<ConsignmentModel> consignments)Create an SAP order and add it to the given list of ordersvoidexecuteAction(OrderProcessModel process)Executes thisAction's business logic working on the givenBusinessProcessModel.protected BusinessProcessServicegetBusinessProcessService()protected intgetMaxRetries()protected OrderHistoryServicegetOrderHistoryService()protected OrderServicegetOrderService()protected intgetRetryDelay()protected java.lang.StringgetSapLogSysName(OrderModel order, ConsignmentModel consignment)protected SapPlantLogSysOrgServicegetSapPlantLogSysOrgService()protected java.lang.StringgetSapSalesOrgName(OrderModel order, ConsignmentModel consignment)protected SendToDataHubHelper<OrderModel>getSendOrderToDataHubHelper()protected TimeServicegetTimeService()protected java.util.Set<java.util.Set<ConsignmentModel>>groupOrderConsignments(OrderModel order)Group the order consignments by SAP logical system and SAP sales organizationprotected voidhandleRetry(OrderProcessModel process)protected voidresetEndMessage(OrderProcessModel process)protected voidsaveOrderHistory(java.util.List<OrderHistoryEntryModel> orderHistoryList)Save order historyprotected voidsaveSapOrders(OrderModel order, java.util.List<SAPOrderModel> sapOrders)Save SAP ordersprotected voidsendOrder(OrderModel order, java.util.List<SendToDataHubResult> results, java.util.List<OrderHistoryEntryModel> orderHistoryList, java.util.Set<ConsignmentModel> consignments, java.util.List<SAPOrderModel> sapOrders)Send SAP order to data-hubvoidsetBusinessProcessService(BusinessProcessService businessProcessService)voidsetMaxRetries(int maxRetries)voidsetOrderHistoryService(OrderHistoryService orderHistoryService)voidsetOrderService(OrderService orderService)protected voidsetOrderStatus(OrderModel order, ExportStatus exportStatus)voidsetRetryDelay(int retryDelay)voidsetSapPlantLogSysOrgService(SapPlantLogSysOrgService sapPlantLogSysOrgService)voidsetSendOrderToDataHubHelper(SendToDataHubHelper<OrderModel> sendOrderAsCSVHelper)voidsetTimeService(TimeService timeService)protected voidstartSapConsignmentSubProcess(java.util.Collection<ConsignmentModel> consignments, OrderProcessModel process)* Start an SAP consignment process for every hybris consignment-
Methods inherited from class de.hybris.platform.processengine.action.AbstractProceduralAction
execute, getTransitions
-
Methods inherited from class de.hybris.platform.processengine.action.AbstractAction
createTransitions, getModelService, getProcessParameterHelper, getProcessParameterValue, refresh, save, setModelService, setOrderStatus, setProcessParameterHelper
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.hybris.platform.processengine.spring.Action
getCurrentActionDefinitionContext
-
-
-
-
Method Detail
-
executeAction
public void executeAction(OrderProcessModel process) throws RetryLaterException
Description copied from class:AbstractProceduralActionExecutes thisAction's business logic working on the givenBusinessProcessModel.- Specified by:
executeActionin classAbstractProceduralAction<OrderProcessModel>- Parameters:
process- The process context to work on.- Throws:
RetryLaterException
-
groupOrderConsignments
protected java.util.Set<java.util.Set<ConsignmentModel>> groupOrderConsignments(OrderModel order)
Group the order consignments by SAP logical system and SAP sales organization- Parameters:
order-- Returns:
-
getSapSalesOrgName
protected java.lang.String getSapSalesOrgName(OrderModel order, ConsignmentModel consignment)
- Parameters:
order-consignment-- Returns:
-
getSapLogSysName
protected java.lang.String getSapLogSysName(OrderModel order, ConsignmentModel consignment)
- Parameters:
order-consignment-- Returns:
-
sendOrder
protected void sendOrder(OrderModel order, java.util.List<SendToDataHubResult> results, java.util.List<OrderHistoryEntryModel> orderHistoryList, java.util.Set<ConsignmentModel> consignments, java.util.List<SAPOrderModel> sapOrders)
Send SAP order to data-hub- Parameters:
order-results-orderHistoryList-consignments-
-
createSapOrders
protected void createSapOrders(java.util.List<SAPOrderModel> sapOrders, OrderHistoryEntryModel orderHistoryEntry, java.util.Set<ConsignmentModel> consignments)
Create an SAP order and add it to the given list of orders- Parameters:
sapOrders-orderHistoryEntry-consignments-
-
saveSapOrders
protected void saveSapOrders(OrderModel order, java.util.List<SAPOrderModel> sapOrders)
Save SAP orders- Parameters:
order-sapOrders-
-
saveOrderHistory
protected void saveOrderHistory(java.util.List<OrderHistoryEntryModel> orderHistoryList)
Save order history- Parameters:
orderHistoryList-
-
createOrderHistory
protected OrderHistoryEntryModel createOrderHistory(OrderModel order, java.lang.String logicalSystem)
Create an entry to the order history for every SAP order sent to data-hub- Parameters:
order-logicalSystem-- Returns:
-
startSapConsignmentSubProcess
protected void startSapConsignmentSubProcess(java.util.Collection<ConsignmentModel> consignments, OrderProcessModel process)
* Start an SAP consignment process for every hybris consignment- Parameters:
consignments-process-
-
handleRetry
protected void handleRetry(OrderProcessModel process) throws RetryLaterException
- Parameters:
process-- Throws:
RetryLaterException
-
setOrderStatus
protected void setOrderStatus(OrderModel order, ExportStatus exportStatus)
- Parameters:
order-exportStatus-
-
resetEndMessage
protected void resetEndMessage(OrderProcessModel process)
- Parameters:
process-
-
getTimeService
protected TimeService getTimeService()
-
setTimeService
public void setTimeService(TimeService timeService)
-
getSapPlantLogSysOrgService
protected SapPlantLogSysOrgService getSapPlantLogSysOrgService()
-
setSapPlantLogSysOrgService
public void setSapPlantLogSysOrgService(SapPlantLogSysOrgService sapPlantLogSysOrgService)
-
getOrderService
protected OrderService getOrderService()
-
setOrderService
public void setOrderService(OrderService orderService)
-
getOrderHistoryService
protected OrderHistoryService getOrderHistoryService()
-
setOrderHistoryService
public void setOrderHistoryService(OrderHistoryService orderHistoryService)
-
getSendOrderToDataHubHelper
protected SendToDataHubHelper<OrderModel> getSendOrderToDataHubHelper()
-
setSendOrderToDataHubHelper
public void setSendOrderToDataHubHelper(SendToDataHubHelper<OrderModel> sendOrderAsCSVHelper)
-
getMaxRetries
protected int getMaxRetries()
-
setMaxRetries
public void setMaxRetries(int maxRetries)
-
getRetryDelay
protected int getRetryDelay()
-
setRetryDelay
public void setRetryDelay(int retryDelay)
-
getBusinessProcessService
protected BusinessProcessService getBusinessProcessService()
-
setBusinessProcessService
public void setBusinessProcessService(BusinessProcessService businessProcessService)
-
-