1 | <?php |
||
24 | class PreOrderIdValidator implements PurchaseProcessor |
||
25 | { |
||
26 | /** |
||
27 | * @var CartService |
||
28 | */ |
||
29 | private $cartService; |
||
30 | |||
31 | /** |
||
32 | * PreOrderIdValidator constructor. |
||
33 | * |
||
34 | * @param CartService $cartService |
||
35 | */ |
||
36 | public function __construct(CartService $cartService) |
||
40 | |||
41 | /** |
||
42 | * 受注の仮確定処理を行います。 |
||
43 | * |
||
44 | * @param ItemHolderInterface $target |
||
45 | * @param PurchaseContext $context |
||
46 | * |
||
47 | * @throws PurchaseException |
||
48 | */ |
||
49 | public function prepare(ItemHolderInterface $target, PurchaseContext $context) |
||
53 | |||
54 | /** |
||
55 | * 受注の確定処理を行います。 |
||
56 | * |
||
57 | * @param ItemHolderInterface $target |
||
58 | * @param PurchaseContext $context |
||
59 | * |
||
60 | * @throws PurchaseException |
||
61 | */ |
||
62 | public function commit(ItemHolderInterface $target, PurchaseContext $context) |
||
66 | |||
67 | /** |
||
68 | * 仮確定した受注データの取り消し処理を行います。 |
||
69 | * |
||
70 | * 別のorder_idが渡されてきた場合に処理が継続されないようにするため、 |
||
71 | * orderのpre_order_idがsessionのpre_order_idと一致するか確認する |
||
72 | * |
||
73 | * @param ItemHolderInterface $itemHolder |
||
74 | * @param PurchaseContext $context |
||
75 | */ |
||
76 | public function rollback(ItemHolderInterface $itemHolder, PurchaseContext $context) |
||
98 | } |
||
99 |