如何为每个新的付款请求获得不同的唯一编号?

时间:2017-01-20 07:50:50

标签: prestashop prestashop-1.6

我是PrestaShop的开发支付插件,是否有办法为每个付款请求获取唯一编号。现在我可以使用购物车ID,但这是不安全的,因为消费者可能要求价格为20美元的产品,但要支付10美元。 Prestashop为每个请求提供不同数量的功能。我搜索解决方案没有成功,对不起,如果这个问题重复,我很抱歉。

感谢您的帮助! :)干杯!

1 个答案:

答案 0 :(得分:0)

有很多方法可以生成唯一编号。您可以按照说明使用购物车ID。您可以将其与付款日期时间连接起来。例如购物车ID = 1付款日期2017-01-01 00:12:00,结果编号为120170101001200。

无论如何,ps_order_payment表在插入后都有唯一的ID。

Prestashop使用函数generateReference生成参考号。它呼吁:

Tools::passwdGen(9, 'NUMERIC')

其中第一个参数是长度和第二个类型。这不太可能,但此功能可以生成重复的结果。这就是为什么Prestashop检查它是否是唯一的:

do {
       $reference = Order::generateReference()  
} while (Order::getByReference($reference)->count());
祝你好运