Mi sto divertendo a capire la differenza tra lo "stato" di un ordine rispetto al suo stato in Magento.Stato ordine Magento Stato vs Stato
Abbiamo un flusso personalizzato impostato per inviare ordini ad adempimenti di terze parti e abbiamo anche una logica personalizzata per verificare la presenza di ordini potenzialmente fraudolenti e contrassegnarli per essere approvati manualmente per la spedizione da un utente amministratore per uscire per l'adempimento .
ho aggiunto uno stato di 'In attesa della spedizione', e di un 'OK per Ship' stato nel mio modulo di configurazione in questo modo:
<global>
...
<sales>
<order>
<statuses>
<pending_shipment translate="label"><label>Pending Shipment</label></pending_shipment>
<ok_to_ship translate="label"><label>OK To Ship</label></ok_to_ship>
</statuses>
<states>
<processing translate="label">
<statuses>
<pending_shipment />
</statuses>
</processing>
<payment_review translate="label">
<statuses>
<ok_to_ship />
</statuses>
</payment_review>
</states>
</order>
</sales>
...
</global>
... e io uso il costruito in stato di 'sospetto di frode' per tutto questo Il problema è che lo stato "Sospettato frode" è raggruppato sotto lo stato "Revisione pagamento", e se un ordine è contrassegnato come "Frode sospetta" o "Revisione pagamento", l'amministratore non ti consente di scegliere altri stati oltre a quelli 2. Idealmente l'opzione 'OK per spedire' sarebbe disponibile, ma raggruppata sotto lo 'stato' di 'Elaborazione'. Qui, ho 'OK spedire' sotto lo stato 'payment_review' e ha reso l'opzione disponibile, ma poi quando ho premuto un ordine e controllo canShip() - fallisce perché è uno stato di stato 'Revisione pagamento'.
Quindi, se qualcuno può aiutarmi a capire come gli stati/stati sono destinati a funzionare in Magento e come configurare al meglio questa situazione, lo apprezzerei.
Sì, ho provato che - ho messo 'ok_to_ship' sia sotto 'trasformazione' e 'payment_review' afferma e questo mi ha permesso di selezionarlo e aggiornarlo quando l'ordine era nello stato/stato di 'frode'. Il problema è che il passaggio da "frode" a "ok_to_ship" lo ha ancora raggruppato sotto lo stato "payment_review", facendo nuovamente fallire il controllo canShip(). C'è un modo per associare uno stato a uno stato? e lo rendono ancora un'opzione mentre l'altro è impostato su altri stati? –
Correzione su quest'ultima riga: "... * l'ordine è impostato su altri stati?" –
Fondamentalmente, più importante dello stato, si desidera modificare lo stato dell'ordine da Revisione pagamento => Elaborazione. Non ho incasinato così tanto, ma cerco una transizione di stato tra questi due, e poi manterrò "ok per spedire" in elaborazione. Per quanto riguarda il processo, usa 2 passaggi per passare da Fraud -> Processing -> Okay to Ship e risparmiare un po 'di complessità. –