Magento 2何时确定哪个客户获得下一个连续的订单ID?
它是从报价产生的,
entity_id
还是分配给先完成的订单?
订单ID(entity_id
)是sales_order
表格的主键(自动递增)。
这意味着先到先得。
当订单存储在数据库中时,id递增。
另一方面,increment_id
订单上有。
这是不同的。在结帐过程中通过调用方法将其保留\Magento\Quote\Model\Quote::reserveOrderId
。
这意味着一旦保留号码就不会更改。这就是为什么您可能会发现increment_id
序列中的空白。可能有些人没有完成结帐过程,但保留了ID。
在Magento\Multishipping\Model\Checkout\Type\Multishipping::_prepareOrder
,in \Magento\Paypal\Model\Express\Checkout::start
和in 的multishipping checkout中调用此方法\Magento\Quote\Model\QuoteManagement:reserveOrderId()
。
如果需要,您可以进一步挖掘以查看保留增量ID的实际时间。
什么时候调用此函数?\ Magento \ Quote \ Model \ Quote :: reserveOrderId对于某些报价,则设置了reserved_order_id,对于某些报价则未设置