ShoppingController extends AbstractShoppingController
Table of Contents
Properties
$cartService
protected
CartService
$cartService
$mailService
protected
MailService
$mailService
$orderHelper
protected
OrderHelper
$orderHelper
$orderRepository
protected
OrderRepository
$orderRepository
$purchaseFlow
protected
PurchaseFlow
$purchaseFlow
$eccubeConfig
protected
EccubeConfig
$eccubeConfig
$entityManager
protected
EntityManagerInterface
$entityManager
$translator
protected
TranslatorInterface
$translator
$formFactory
protected
FormFactoryInterface
$formFactory
$eventDispatcher
protected
EventDispatcherInterface
$eventDispatcher
$session
protected
Session
$session
Methods
__construct()
public
__construct(
$cartService :
CartService
, $mailService :
MailService
, $orderRepository :
OrderRepository
, $orderHelper :
OrderHelper
)
: mixed
Parameters
- $cartService : CartService
- $mailService : MailService
- $orderRepository : OrderRepository
- $orderHelper : OrderHelper
Return values
mixedindex()
注文手続き画面を表示する
public
index(
$cartPurchaseFlow :
PurchaseFlow
)
: mixed
未ログインまたはRememberMeログインの場合はログイン画面に遷移させる. ただし、非会員でお客様情報を入力済の場合は遷移させない.
カート情報から受注データを生成し, pre_order_id
でカートと受注の紐付けを行う.
既に受注が生成されている場合(pre_order_idで取得できる場合)は, 受注の生成を行わずに画面を表示する.
purchaseFlowの集計処理実行後, warningがある場合はカートど同期をとるため, カートのPurchaseFlowを実行する.
Parameters
- $cartPurchaseFlow : PurchaseFlow
Tags
Return values
mixedredirectTo()
他画面への遷移を行う.
public
redirectTo(
$request :
Request
, $router :
RouterInterface
)
: mixed
お届け先編集画面など, 他画面へ遷移する際に, フォームの値をDBに保存してからリダイレクトさせる.
フォームのredirect_to
パラメータの値にリダイレクトを行う.
redirect_to
パラメータはpath('遷移先のルーティング')が渡される必要がある.
外部のURLやPathを渡された場合($router->matchで展開出来ない場合)は, 購入エラーとする.
プラグインやカスタマイズでこの機能を使う場合は, twig側で以下のように記述してください.
<button data-trigger="click" data-path="path('ルーティング')">更新する</button>
data-triggerは, click/change/blur等のイベント名を指定してください。 data-pathは任意のパラメータです. 指定しない場合, 注文手続き画面へリダイレクトします.
Parameters
- $request : Request
- $router : RouterInterface
Tags
Return values
mixedconfirm()
注文確認画面を表示する.
public
confirm(
$request :
Request
)
: mixed
ここではPaymentMethod::verifyがコールされます. PaymentMethod::verifyではクレジットカードの有効性チェック等, 注文手続きを進められるかどうかのチェック処理を行う事を想定しています. PaymentMethod::verifyでエラーが発生した場合は, 注文手続き画面へリダイレクトします.
Parameters
- $request : Request
Tags
Return values
mixedcheckout()
注文処理を行う.
public
checkout(
$request :
Request
)
: mixed
決済プラグインによる決済処理および注文の確定処理を行います.
Parameters
- $request : Request
Tags
Return values
mixedcomplete()
購入完了画面を表示する.
public
complete(
$request :
Request
)
: mixed
Parameters
- $request : Request
Tags
Return values
mixedshipping()
お届け先選択画面.
public
shipping(
$request :
Request
, $Shipping :
Shipping
)
: mixed
会員ログイン時, お届け先を選択する画面を表示する 非会員の場合はこの画面は使用しない。
Parameters
- $request : Request
- $Shipping : Shipping
Tags
Return values
mixedshippingEdit()
お届け先の新規作成または編集画面.
public
shippingEdit(
$request :
Request
, $Shipping :
Shipping
)
: mixed
会員時は新しいお届け先を作成し, 作成したお届け先を選択状態にして注文手続き画面へ遷移する. 非会員時は選択されたお届け先の編集を行う.
Parameters
- $request : Request
- $Shipping : Shipping
Tags
Return values
mixedlogin()
ログイン画面.
public
login(
$request :
Request
, $authenticationUtils :
AuthenticationUtils
)
: mixed
Parameters
- $request : Request
- $authenticationUtils : AuthenticationUtils
Tags
Return values
mixederror()
購入エラー画面.
public
error(
$request :
Request
, $cartPurchaseFlow :
PurchaseFlow
)
: mixed
Parameters
- $request : Request
- $cartPurchaseFlow : PurchaseFlow
Tags
Return values
mixedcreatePaymentMethod()
PaymentMethodをコンテナから取得する.
private
createPaymentMethod(
$Order :
Order
, $form :
FormInterface
)
: PaymentMethodInterface
Parameters
- $Order : Order
- $form : FormInterface
Return values
PaymentMethodInterfaceexecuteApply()
PaymentMethod::applyを実行する.
protected
executeApply(
$paymentMethod :
PaymentMethodInterface
)
: RedirectResponse|Response
Parameters
- $paymentMethod : PaymentMethodInterface
Return values
RedirectResponse|ResponseexecuteCheckout()
PaymentMethod::checkoutを実行する.
protected
executeCheckout(
$paymentMethod :
PaymentMethodInterface
)
: RedirectResponse|Response
Parameters
- $paymentMethod : PaymentMethodInterface
Return values
RedirectResponse|ResponsesetPurchaseFlow()
public
setPurchaseFlow(
$shoppingPurchaseFlow :
PurchaseFlow
)
: mixed
Parameters
- $shoppingPurchaseFlow : PurchaseFlow
Tags
Return values
mixedexecutePurchaseFlow()
protected
executePurchaseFlow(
$itemHolder :
ItemHolderInterface
[, $returnResponse :
bool
= true ]
)
: PurchaseFlowResult|RedirectResponse
Parameters
- $itemHolder : ItemHolderInterface
- $returnResponse : bool = true
レスポンスを返すかどうか. falseの場合はPurchaseFlowResultを返す.
Return values
PurchaseFlowResult|RedirectResponsesetEccubeConfig()
public
setEccubeConfig(
$eccubeConfig :
EccubeConfig
)
: mixed
Parameters
- $eccubeConfig : EccubeConfig
Tags
Return values
mixedsetEntityManager()
public
setEntityManager(
$entityManager :
EntityManagerInterface
)
: mixed
Parameters
- $entityManager : EntityManagerInterface
Tags
Return values
mixedsetTranslator()
public
setTranslator(
$translator :
TranslatorInterface
)
: mixed
Parameters
- $translator : TranslatorInterface
Tags
Return values
mixedsetSession()
public
setSession(
$session :
SessionInterface
)
: mixed
Parameters
- $session : SessionInterface
Tags
Return values
mixedsetFormFactory()
public
setFormFactory(
$formFactory :
FormFactoryInterface
)
: mixed
Parameters
- $formFactory : FormFactoryInterface
Tags
Return values
mixedsetEventDispatcher()
public
setEventDispatcher(
$eventDispatcher :
EventDispatcherInterface
)
: mixed
Parameters
- $eventDispatcher : EventDispatcherInterface
Tags
Return values
mixedaddSuccess()
public
addSuccess(
$message :
mixed
[, $namespace :
mixed
= 'front' ]
)
: mixed
Parameters
- $message : mixed
- $namespace : mixed = 'front'
Return values
mixedaddError()
public
addError(
$message :
mixed
[, $namespace :
mixed
= 'front' ]
)
: mixed
Parameters
- $message : mixed
- $namespace : mixed = 'front'
Return values
mixedaddDanger()
public
addDanger(
$message :
mixed
[, $namespace :
mixed
= 'front' ]
)
: mixed
Parameters
- $message : mixed
- $namespace : mixed = 'front'
Return values
mixedaddWarning()
public
addWarning(
$message :
mixed
[, $namespace :
mixed
= 'front' ]
)
: mixed
Parameters
- $message : mixed
- $namespace : mixed = 'front'
Return values
mixedaddInfo()
public
addInfo(
$message :
mixed
[, $namespace :
mixed
= 'front' ]
)
: mixed
Parameters
- $message : mixed
- $namespace : mixed = 'front'
Return values
mixedaddRequestError()
public
addRequestError(
$message :
mixed
[, $namespace :
mixed
= 'front' ]
)
: mixed
Parameters
- $message : mixed
- $namespace : mixed = 'front'
Return values
mixedclearMessage()
public
clearMessage(
)
: mixed
Return values
mixeddeleteMessage()
public
deleteMessage(
)
: mixed
Return values
mixedsetLoginTargetPath()
public
setLoginTargetPath(
$targetPath :
string
[, $namespace :
mixed
= null ]
)
: mixed
Parameters
- $targetPath : string
- $namespace : mixed = null
Return values
mixedforwardToRoute()
Forwards the request to another controller.
public
forwardToRoute(
$route :
string
[, $path :
array
= [] ]
[, $query :
array
= [] ]
)
: Response
Parameters
- $route : string
The name of the route
- $path : array = []
An array of path parameters
- $query : array = []
An array of query parameters
Return values
Response —A Response instance
isTokenValid()
Checks the validity of a CSRF token.
protected
isTokenValid(
)
: bool
if token is invalid, throws AccessDeniedHttpException.