PointProcessor implements DiscountProcessor, PurchaseProcessor
購入フローにおけるポイント処理.
Table of Contents
$entityManager | EntityManagerInterface | |
---|---|---|
$pointHelper | PointHelper | |
__construct() | PointProcessor constructor. | mixed |
removeDiscountItem() | 値引き明細の削除処理を実装します. | mixed |
addDiscountItem() | 値引き明細の追加処理を実装します. | ProcessResult|null |
prepare() | 受注の仮確定処理を行います。 | mixed |
commit() | {@inheritdoc | mixed |
rollback() | {@inheritdoc | mixed |
supports() | Processorが実行出来るかどうかを返す. | bool |
Properties
$entityManager
protected
EntityManagerInterface
$entityManager
$pointHelper
protected
PointHelper
$pointHelper
Methods
__construct()
PointProcessor constructor.
public
__construct(
$entityManager :
EntityManagerInterface
, $pointHelper :
PointHelper
)
: mixed
Parameters
- $entityManager : EntityManagerInterface
- $pointHelper : PointHelper
Return values
mixedremoveDiscountItem()
値引き明細の削除処理を実装します.
public
removeDiscountItem(
$itemHolder :
ItemHolderInterface
, $context :
PurchaseContext
)
: mixed
Parameters
- $itemHolder : ItemHolderInterface
- $context : PurchaseContext
Return values
mixedaddDiscountItem()
値引き明細の追加処理を実装します.
public
addDiscountItem(
$itemHolder :
ItemHolderInterface
, $context :
PurchaseContext
)
: ProcessResult|null
かならず合計金額等のチェックを行い, 超える場合は利用できる金額まで丸めるか、もしくは明細の追加処理をスキップしてください. 正常に追加できない場合は, ProcessResult::warnを返却してください.
Parameters
- $itemHolder : ItemHolderInterface
- $context : PurchaseContext
Return values
ProcessResult|nullprepare()
受注の仮確定処理を行います。
public
prepare(
$itemHolder :
ItemHolderInterface
, $context :
PurchaseContext
)
: mixed
Parameters
- $itemHolder : ItemHolderInterface
- $context : PurchaseContext
Return values
mixedcommit()
{@inheritdoc
public
commit(
$target :
ItemHolderInterface
, $context :
PurchaseContext
)
: mixed
Parameters
- $target : ItemHolderInterface
- $context : PurchaseContext
Return values
mixedrollback()
{@inheritdoc
public
rollback(
$itemHolder :
ItemHolderInterface
, $context :
PurchaseContext
)
: mixed
Parameters
- $itemHolder : ItemHolderInterface
- $context : PurchaseContext
Return values
mixedsupports()
Processorが実行出来るかどうかを返す.
private
supports(
$itemHolder :
ItemHolderInterface
)
: bool
以下を満たす場合に実行できる.
- ポイント設定が有効であること.
- $itemHolderがOrderエンティティであること.
- 会員のOrderであること.
Parameters
- $itemHolder : ItemHolderInterface