Instruction de tâche ProcessOrderCmd

L'instruction de tâche ProcessOrderCmd effectue la requête de serveur ProcessOrder.

Instruction de tâche

com.ibm.commerce.order.client.commands.ProcessOrderCmd

Classe d'implémentation

com.ibm.commerce.order.client.commands.ProcessOrderCmdImpl

Commandes appelées

Appelants possibles

ProcessBackordersCmdImpl

ProcessFutureOrdersCmdImpl

BatchOrderRequestCmdImpl

OrderProcessCmdImpl

OrderProcessPostApprovalCmdImpl

Comportement

Si Unified Business Flow n'est pas activé ou est activé et que l'approbation est nécessaire :
  • Appelez PreProcessOrderCmd

Configurez la notification de commande

Comparez les totaux des commandes et les totaux des articles de commande et, s'ils ne sont pas égaux, émettez une exception

Appelez DoInventoryActionCmd pour mettre à jour le stock

Obtenez les frais en cours. Si les frais en cours sont supérieurs au total de la commande, émettez une exception

Appelez UpdateSpendingLimitCmd pour vérifier la limite de dépenses de l'accord commercial et validez le numéro de bon de commande

Appelez PrimePaymentCmd (commande EDP) pour garantir que le client dispose des fonds nécessaires pour payer la commande

Appelez RaiseOrderSubmitEventCmd pour déclencher l'événement de soumission de commande

Appelez CalculationHelper pour finaliser les utilisations de calcul

Mettez à jour le statut de la commande et des articles de commande en conséquence

Configurez les attributs de notification afin qu'une notification par e-mail puisse être envoyée

Si OrdersMgpPersistListener est activé :
  • Appelez PersistOrdersWithMemberGroupIdsForCurrentUserCmd (commande Marketing) pour maintenir l'orders_id avec l'id de groupe de membres

Appelez ExtOrderProcessCmd pour exécuter la logique de personnalisation

Validez le statut de stock de la commande. Si la commande en amont n'est pas autorisée et que l'un des articles de la commande est commandé en amont, lancez une exception

Appelez TransferOrderCmd pour transférer la commande à un système externe si nécessaire

Appelez OrderMessagingCmd pour générer le message de création de commande sortante

Appelez NotificationHelper pour informer le client qu'une commande est reçue