如何将订单参考更改为数字参考

Vin*_*oth 7 prestashop

使用新版本的Prestashop 1.5.2.0.我想将订单参考(字母)更改为字母数字值.我尝试在论坛中搜索并看到这个论坛.不幸的是它不适合我.

任何人都可以使用解决方案将订单参考(字母)更改为整个应用程序中的字母数字值.

我的意思是"AQMKATRQG"到"LD1001"并将它增加到"LD1002"我想将Order参考(字母)改为字母数字值.我尝试在论坛中搜索并看到这个论坛.不幸的是它不适合我.

任何人都可以使用解决方案将订单参考(字母)更改为整个应用程序中的字母数字值.

我的意思是"AQMKATRQG"到"LD1001"并将其增加到"LD1002"

ric*_*oke 15

在PrestaShop 1.6中(经过测试并确认在v1.6.0.14中工作),您可以通过以下方法完成此操作.

  1. 文件复制/classes/PaymentModule.php/override/classes/PaymentModule.php.

  2. 编辑文件/override/classes/PaymentModule.php如下.

第337-341行是一个代码块,应如下所示:

if (!result)
{
  PrestaShopLogger::addLog('PaymentModule::validateOrder - Order cannot be created',
    3, null, 'Cart', (int)$id_cart, true);
  throw new PrestaShopException('Can\'t save Order');
}
Run Code Online (Sandbox Code Playgroud)

在该代码块之后,立即插入以下两行代码:

$order->reference = str_pad($order->id, 9, '0', STR_PAD_LEFT);
$order->update();
Run Code Online (Sandbox Code Playgroud)
  1. 删除文件,/cache/class_index.php以便Prestashop自动重新创建此文件,同时考虑新的覆盖文件.

  2. 可以使用诸如phpMyAdmin之类的工具手动更新PrestaShop数据库中的任何现有记录以使用数字引用.

我认为如果与PrestaShop v1.5的步骤不相同,步骤将非常相似,但此时我尚未使用PrestaShop v1.5测试此解决方案.如果有人发现此解决方案适用于v1.5,也许他们可以在评论中确认这一点.谢谢.