Prestashop 1.6 -> ajax 更改订单状态,电子邮件出错

Prestashop 1.6 -> Change Order State by ajax, errors with email

我需要一个模块来通过 ajax 更改订单的订单状态。 我目前正在使用 Order Class :

中的函数来执行此操作
$o = new Order($id_order);
$o->setCurrentState($id_state,$this->context->employee->id);

然后我在 JSON 响应中恢复新订单状态信息以将其显示在页面上。 它适用于每个订单状态,除了发送带附件的电子邮件的状态(invoice.pdf 或 delivery.pdf -- 例如已接受付款)

这是我在 JSON 响应中得到的错误:

Notice: Undefined index: startx in C:\wamp64\www\tdc\tools\tcpdf\tcpdf.php on line 24628
Call Stack
#   Time    Memory  Function    Location
1   0.0008  386736  {main}( )   ...\index.php:0
2   0.1224  2348784 Dispatcher->dispatch( ) ...\index.php:58
3   0.2177  3387304 AdminOrderManagerController->run( ) ...\Dispatcher.php:367
4   0.3167  4328416 AdminOrderManagerController->postProcess( ) ...\Controller.php:178
5   0.3177  4329424 AdminOrderManagerController->ajaxProcessChangeOrderState( ) ...\AdminController.php:897
6   0.3277  4625976 Order->setCurrentState( )   ...\adminordermanager.php:407
7   0.4096  4949648 OrderHistory->addWithemail( )   ...\Order.php:1569
8   0.4609  4974424 OrderHistory->sendEmail( )  ...\OrderHistory.php:419
9   0.4728  6633024 PDF->render( )  ...\OrderHistory.php:470
10  4.9544  7630400 PDFGenerator->render( ) ...\PDF.php:108
11  4.9544  7630400 PDFGenerator->Output( ) ...\PDFGenerator.php:207
12  4.9544  7630400 PDFGenerator->Close( )  ...\tcpdf.php:8864
13  4.9580  7636848 PDFGenerator->endPage( )    ...\tcpdf.php:3869
14  4.9580  7636848 PDFGenerator->setFooter( )  ...\tcpdf.php:4021
15  4.9588  7639840 PDFGenerator->Footer( ) ...\tcpdf.php:4471
16  4.9588  7639840 PDFGenerator->writeHTML( )  ...\PDFGenerator.php:172
17  5.1563  7768440 PDFGenerator->closeHTMLTagHandler( )    ...\tcpdf.php:23219

还有 6 个类似的问题,但最奇怪的是,即使我收到这些错误,电子邮件仍会发送,附件中包含正确的 PDF,呈现时没有任何错误...

我可以忽略我在 JSON 响应中得到的错误,因为电子邮件和 pdf 已正确发送,但是由于这些错误,我无法在 JSON 响应然后将它们显示在页面上。

有什么帮助吗? 谢谢

似乎 TCPDF 解析器无法解析您的 HTML。

从主题文件夹中删除 "pdf" 文件夹中的所有“.tpl”文件,以确保 默认 PrestaShop 文件 正在使用