Bonjour,
je viens vers vous ce jour car je me penche un peu plus sur le développement de module et j'avoue qu'après des essais et autre, je suis un peu en galère.
J'ai regardé tout le code des modules disponible sur Github, comprendre la logique, je travaille sous PHPStorm (pour l'auto-completion avec Thelia c'est vraiment top)
L'idée de ce module, qui est tout simple en fait, est de remplir le champ postscriptum de la table order_product quand une commande est payée.
Dans l'idéal, je chercherais à faire que ce champ se remplisse selon la manière suivante:
$postscriptum= $product_id.":".$customer_email.":".$order_date
Et là je bloque un peu... J'ai essayé plein de chose mais sans y arriver...
J'en suis là :
namespace PostscriptumKeys\Action;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Thelia\Core\Event\Order\OrderEvent;
use Thelia\Core\Event\TheliaEvents;
use Thelia\Model\OrderProduct;
use Thelia\Model\Base\OrderProductQuery;
class PostscriptumKeys implements EventSubscriberInterface
{
protected $request;
public function __construct(Request $request)
{
$this->request = $request;
}
public function PostscriptumCreate(OrderEvent $event)
{
$order_id= $event->getPlacedOrder();
$product = OrderProductQuery::create()
->findByOrderId($order_id)
->count();
if ($product > 0) {
}
}
public static function getSubscribedEvents()
{
return [
TheliaEvents::ORDER_PAY => ['PostscriptumCreate', 128]
];
}
}
Si une âme charitable pourrait m'aider, cela serait fort sympathique.
Merci d'avance à vous d'avoir pris le temps de me lire.
Thibault