Me lo estoy pasando muy bien averiguando la diferencia entre el "estado" de una orden y su "estado" en Magento.estado de orden de Magento frente a estado
Tenemos un flujo personalizado configurado para enviar pedidos al cumplimiento de terceros y también tenemos una lógica personalizada para verificar pedidos potencialmente fraudulentos e indicar que se aprueben manualmente para ser enviados por un usuario administrador para su cumplimiento .
He añadido un estado 'Pendiente de Envío', y un 'OK a la nave' estado en mi módulo de configuración de este 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>
... Y uso el construido en el estado de 'sospecha de fraude' por todo esto El problema es que el estado de "Fraude Sospechado" se agrupa bajo el estado "Revisión de Pago", y si una orden está marcada como "Fraude Sospechado" o "Revisión de Pago", el administrador no le permite elegir ningún otro estado además de esos 2. Idealmente, la opción 'Aceptar para enviar' estaría disponible, pero agrupada bajo el 'estado' de 'Procesamiento'. Aquí, tengo 'OK para enviar' en el estado 'payment_review' y la opción está disponible, pero luego cuando abro un pedido y reviso canShip() - falla porque es un estado de estado 'Payment Review'.
Así que si alguien puede ayudarme a entender cómo se pretende que los estados/estados funcionen en Magento y la mejor forma de configurar esta situación, lo agradecería.
Sí, me trato que - Pongo 'ok_to_ship' tanto bajo 'transformación' y estados 'payment_review' que me permitieron seleccionarlo y actualizarlo cuando el pedido estaba en estado/estado de 'fraude'. El problema es que al pasar de 'fraude' a 'ok_to_ship' todavía se lo agrupaba bajo el estado 'payment_review', volviendo a hacer fallar la comprobación de canShip(). ¿Hay alguna forma de vincular un estado a un estado? y todavía lo hacen una opción mientras que el otro está configurado para otros estados? –
Corrección en la última línea: "... * la orden se establece en otros estados?" –
Básicamente, más importante que el estado, desea cambiar el estado de la orden desde Payment Review => Processing. No me he equivocado tanto, pero busco una transición de estado entre esos dos, y luego me mantengo "bien para enviar" en el proceso. En cuanto al proceso, use 2 pasos para pasar de Fraude -> Procesamiento -> De acuerdo a Enviar y ahorre algo de complejidad. –