Como recupero uma lista de status de pedidos permitidos para um determinado estado de pedido?
-
12-12-2019 - |
Pergunta
Meu entendimento sobre estados de pedidos e status de pedidos é que um determinado estado de pedido pode ter um ou mais status permitidos.Descobri que posso recuperar uma lista de todos Status no sistema usando:
Mage::getSingleton('sales/order_config')->getStatuses();
No entanto, preciso que a lista se limite aos estatutos válidos para um determinado Estado.
Solução
Ocorreu-me que o Magento faz isso ao visualizar um pedido no backend;especificamente, a caixa "Histórico de comentários" possui um menu suspenso preenchido com status permitidos para um determinado estado.
Analisar esse bloco revelou esta solução:
public function getStatuses()
{
$state = $this->getOrder()->getState();
$statuses = $this->getOrder()->getConfig()->getStateStatuses($state);
return $statuses;
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange