バージョン選択

フォーラム

メニュー

オンライン状況

49 人のユーザが現在オンラインです。 (38 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 49
もっと...

サイト内検索

質問 > フロント機能 > PurchaseFlow でセッションを使いたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2024/3/19 18:29
対応状況: 解決済
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1646
PurchaseFlow でセッションを使いたい
EC-CUBE4.2.3

あらかじめ流入メディアをセッションに保存しておき、注文完了時に流入メディアを受注情報に保存したいです。

注文完了ページのコントローラーイベントに追加するのでも良いのですが、可能なら ShoppingFlow の処理で保存するほうがスマートかと考えています。
以下のように実装してみたのですが、 $session が取得できないようです。
PurchaseFlow でセッションを使うことはできないのでしょうか?

エラー
Uncaught Error: Call to a member function get() on null


<?php

namespace Customize\Service\PurchaseFlow\Processor;

use Eccube\Annotation\ShoppingFlow;
use Eccube\Entity\ItemHolderInterface;
use Eccube\Entity\Order;
use Eccube\Service\PurchaseFlow\Processor\AbstractPurchaseProcessor;
use Eccube\Service\PurchaseFlow\PurchaseContext;
use Symfony\Component\HttpFoundation\Session\SessionInterface;

/**
 * 流入メディアの保存.
 *
 * @ShoppingFlow
 */
class RegisterMediaProcessor extends AbstractPurchaseProcessor
{
    /**
     * @var SessionInterface
     */
    protected $session;

    public function __construct(
        SessionInterface $session
    ) {
        $this->session = $session;
    }

    public function commit(ItemHolderInterface $target, PurchaseContext $context)
    {
        if (!$target instanceof Order) {
            return;
        }

        $media = $session->get('eccube.media');
        if ($media) {
            $target->setMedia($media);
        }
    }
}

tattsu
投稿日時: 2024/3/19 18:31
対応状況: −−−
長老
登録日: 2023/12/23
居住地:
投稿: 210
Re: PurchaseFlow でセッションを使いたい
いえ、使えます!
$session->getとなっているところ、$this->session->getでしょうか。


----------------
-------------------
EC-CUBEカスタマイズ・バージョンアップ・不具合修正 
気軽にご相談ください。ゴールドランクパートナー。

h_tanaka
投稿日時: 2024/3/19 18:40
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1646
Re: PurchaseFlow でセッションを使いたい
tattsu さん

ありがとうございます。
単純なコーディングミスでした。
無事に取得することができました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,870名です
総投稿数は109,999件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1295
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.