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 OrderHistoryEntryModel
createOrderHistory(OrderModel order, java.lang.String logicalSystem)
Create an entry to the order history for every SAP order sent to data-hubprotected 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 ordersvoid
executeAction(OrderProcessModel process)
Executes thisAction
's business logic working on the givenBusinessProcessModel
.protected BusinessProcessService
getBusinessProcessService()
protected int
getMaxRetries()
protected OrderHistoryService
getOrderHistoryService()
protected OrderService
getOrderService()
protected int
getRetryDelay()
protected java.lang.String
getSapLogSysName(OrderModel order, ConsignmentModel consignment)
protected SapPlantLogSysOrgService
getSapPlantLogSysOrgService()
protected java.lang.String
getSapSalesOrgName(OrderModel order, ConsignmentModel consignment)
protected SendToDataHubHelper<OrderModel>
getSendOrderToDataHubHelper()
protected TimeService
getTimeService()
protected java.util.Set<java.util.Set<ConsignmentModel>>
groupOrderConsignments(OrderModel order)
Group the order consignments by SAP logical system and SAP sales organizationprotected void
handleRetry(OrderProcessModel process)
protected void
resetEndMessage(OrderProcessModel process)
protected void
saveOrderHistory(java.util.List<OrderHistoryEntryModel> orderHistoryList)
Save order historyprotected void
saveSapOrders(OrderModel order, java.util.List<SAPOrderModel> sapOrders)
Save SAP ordersprotected 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-hubvoid
setBusinessProcessService(BusinessProcessService businessProcessService)
void
setMaxRetries(int maxRetries)
void
setOrderHistoryService(OrderHistoryService orderHistoryService)
void
setOrderService(OrderService orderService)
protected void
setOrderStatus(OrderModel order, ExportStatus exportStatus)
void
setRetryDelay(int retryDelay)
void
setSapPlantLogSysOrgService(SapPlantLogSysOrgService sapPlantLogSysOrgService)
void
setSendOrderToDataHubHelper(SendToDataHubHelper<OrderModel> sendOrderAsCSVHelper)
void
setTimeService(TimeService timeService)
protected void
startSapConsignmentSubProcess(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:AbstractProceduralAction
Executes thisAction
's business logic working on the givenBusinessProcessModel
.- Specified by:
executeAction
in 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)
-
-