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.

Foi útil?

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
scroll top