class ShoppingService

Properties

Application $app
protected CartService $cartService
protected OrderService $orderService
protected BaseInfo $BaseInfo
protected EntityManager $em

Methods

__construct(Application $app, $cartService, $orderService)

No description

null|object
getOrder(null $status = null)

セッションにセットされた受注情報を取得

$Customer|null
getNonMember($sesisonKey)

非会員情報を取得

createOrder($Customer)

受注情報を作成

mixed
registerPreOrder(Customer $Customer, $preOrderId)

仮受注情報作成

getNewOrder(Customer $Customer)

受注情報を作成

newOrder()

受注情報を作成

copyToOrderFromCustomer(Order $Order, Customer $Customer = null)

受注情報を作成

array
getDeliveriesCart()

配送業者情報を取得

array
getDeliveriesOrder(Order $Order)

配送業者情報を取得

array
getDeliveries($productTypes)

配送業者情報を取得

getNewShipping(Order $Order, Customer $Customer, $deliveries)

お届け先情報を作成

copyToShippingFromCustomer(Shipping $Shipping, Customer $Customer = null)

お届け先情報を作成

getNewDetails(Order $Order)

受注明細情報、配送商品情報を作成

getNewOrderDetail(Product $Product, ProductClass $ProductClass, $quantity)

受注明細情報を作成

getNewShipmentItem(Order $Order, Product $Product, ProductClass $ProductClass, $quantity)

配送商品情報を作成

int
getShippingDeliveryFeeTotal($shippings)

お届け先ごとの送料合計を取得

int
getProductDeliveryFee(Shipping $Shipping)

商品ごとの配送料を取得

getAmount(Order $Order)

住所などの情報が変更された時に金額の再計算を行う

setShippingDeliveryFee(Shipping $Shipping, Delivery $Delivery = null)

配送料金の設定

setDeliveryFreeAmount(Order $Order)

配送料無料条件(合計金額)の条件を満たしていれば配送料金を0に設定

setDeliveryFreeQuantity(Order $Order)

配送料無料条件(合計数量)の条件を満たしていれば配送料金を0に設定

bool
isOrderProduct($em, Order $Order)

商品公開ステータスチェック、在庫チェック、購入制限数チェックを行い、在庫情報をロックする

setOrderUpdate(Order $Order, $data) deprecated

受注情報、お届け先情報の更新

setOrderUpdateData(Order $Order)

受注情報の更新

setStockUpdate($em, Order $Order)

在庫情報の更新

setCustomerUpdate(Order $Order, Customer $user)

会員情報の更新

array
getPayments($payments, $subTotal)

支払方法選択の表示設定

array
getFormDeliveryDates(Order $Order)

お届け日を取得

array
getFormPayments($deliveries, Order $Order)

支払方法を取得

Form
getShippingForm(Order $Order) deprecated

お届け先ごとにFormを作成

FormBuilderInterface
getShippingFormBuilder(Order $Order)

お届け先ごとにFormBuilderを作成

setFormData(Order $Order, array $data)

フォームデータを更新

calculateDeliveryFee(Order $Order)

配送料の合計金額を計算

processPurchase(Order $Order)

購入処理を行う

bool
isDiscount(Order $Order, $discount)

値引き可能かチェック

setDiscount(Order $Order, $discount)

値引き金額をセット

calculatePrice(Order $Order)

合計金額を計算

setOrderStatus(Order $Order, $status)

受注ステータスをセット

sendOrderMail(Order $Order)

受注メール送信を行う

notifyComplete(Order $Order)

受注処理完了通知

Details

at line 62
__construct(Application $app, $cartService, $orderService)

Parameters

Application $app
$cartService
$orderService

at line 76
null|object getOrder(null $status = null)

セッションにセットされた受注情報を取得

Parameters

null $status

Return Value

null|object

at line 107
$Customer|null getNonMember($sesisonKey)

非会員情報を取得

Parameters

$sesisonKey

Return Value

$Customer|null

at line 129
Order createOrder($Customer)

受注情報を作成

Parameters

$Customer

Return Value

Order

at line 160
mixed registerPreOrder(Customer $Customer, $preOrderId)

仮受注情報作成

Parameters

Customer $Customer
$preOrderId

Return Value

mixed

Exceptions

NoResultException
NonUniqueResultException

at line 227
Order getNewOrder(Customer $Customer)

受注情報を作成

Parameters

Customer $Customer

Return Value

Order

at line 240
Order newOrder()

受注情報を作成

Return Value

Order

at line 254
Order copyToOrderFromCustomer(Order $Order, Customer $Customer = null)

受注情報を作成

Parameters

Order $Order
Customer $Customer

Return Value

Order

at line 295
array getDeliveriesCart()

配送業者情報を取得

Return Value

array

at line 311
array getDeliveriesOrder(Order $Order)

配送業者情報を取得

Parameters

Order $Order

Return Value

array

at line 327
array getDeliveries($productTypes)

配送業者情報を取得

Parameters

$productTypes

Return Value

array

at line 359
Order getNewShipping(Order $Order, Customer $Customer, $deliveries)

お届け先情報を作成

Parameters

Order $Order
Customer $Customer
$deliveries

Return Value

Order

at line 391
Shipping copyToShippingFromCustomer(Shipping $Shipping, Customer $Customer = null)

お届け先情報を作成

Parameters

Shipping $Shipping
Customer $Customer

Return Value

Shipping

at line 452
Order getNewDetails(Order $Order)

受注明細情報、配送商品情報を作成

Parameters

Order $Order

Return Value

Order

at line 485
OrderDetail getNewOrderDetail(Product $Product, ProductClass $ProductClass, $quantity)

受注明細情報を作成

Parameters

Product $Product
ProductClass $ProductClass
$quantity

Return Value

OrderDetail

at line 523
ShipmentItem getNewShipmentItem(Order $Order, Product $Product, ProductClass $ProductClass, $quantity)

配送商品情報を作成

Parameters

Order $Order
Product $Product
ProductClass $ProductClass
$quantity

Return Value

ShipmentItem

at line 584
int getShippingDeliveryFeeTotal($shippings)

お届け先ごとの送料合計を取得

Parameters

$shippings

Return Value

int

at line 601
int getProductDeliveryFee(Shipping $Shipping)

商品ごとの配送料を取得

Parameters

Shipping $Shipping

Return Value

int

at line 617
Order getAmount(Order $Order)

住所などの情報が変更された時に金額の再計算を行う

Parameters

Order $Order

Return Value

Order

at line 645
setShippingDeliveryFee(Shipping $Shipping, Delivery $Delivery = null)

配送料金の設定

Parameters

Shipping $Shipping
Delivery $Delivery

at line 671
setDeliveryFreeAmount(Order $Order)

配送料無料条件(合計金額)の条件を満たしていれば配送料金を0に設定

Parameters

Order $Order

at line 693
setDeliveryFreeQuantity(Order $Order)

配送料無料条件(合計数量)の条件を満たしていれば配送料金を0に設定

Parameters

Order $Order

at line 718
bool isOrderProduct($em, Order $Order)

商品公開ステータスチェック、在庫チェック、購入制限数チェックを行い、在庫情報をロックする

Parameters

$em トランザクション制御されているEntityManager
Order $Order 受注情報

Return Value

bool true : 成功、false : 失敗

at line 766
setOrderUpdate(Order $Order, $data) deprecated

deprecated since 3.0.5, to be removed in 3.1

受注情報、お届け先情報の更新

Parameters

Order $Order 受注情報
$data フォームデータ

at line 805
setOrderUpdateData(Order $Order)

受注情報の更新

Parameters

Order $Order 受注情報

at line 821
setStockUpdate($em, Order $Order)

在庫情報の更新

Parameters

$em トランザクション制御されているEntityManager
Order $Order 受注情報

at line 854
setCustomerUpdate(Order $Order, Customer $user)

会員情報の更新

Parameters

Order $Order 受注情報
Customer $user ログインユーザ

at line 880
array getPayments($payments, $subTotal)

支払方法選択の表示設定

Parameters

$payments 支払選択肢情報
$subTotal 小計

Return Value

array

at line 905
array getFormDeliveryDates(Order $Order)

お届け日を取得

Parameters

Order $Order

Return Value

array

at line 957
array getFormPayments($deliveries, Order $Order)

支払方法を取得

Parameters

$deliveries
Order $Order

Return Value

array

at line 987
Form getShippingForm(Order $Order) deprecated

deprecated since 3.0, to be removed in 3.1

お届け先ごとにFormを作成

Parameters

Order $Order

Return Value

Form

at line 1020
FormBuilderInterface getShippingFormBuilder(Order $Order)

お届け先ごとにFormBuilderを作成

Parameters

Order $Order

Return Value

FormBuilderInterface

at line 1052
setFormData(Order $Order, array $data)

フォームデータを更新

Parameters

Order $Order
array $data

at line 1077
Order calculateDeliveryFee(Order $Order)

配送料の合計金額を計算

Parameters

Order $Order

Return Value

Order

at line 1103
processPurchase(Order $Order)

購入処理を行う

Parameters

Order $Order

Exceptions

ShoppingException

at line 1138
bool isDiscount(Order $Order, $discount)

値引き可能かチェック

Parameters

Order $Order
$discount

Return Value

bool

at line 1155
setDiscount(Order $Order, $discount)

値引き金額をセット

Parameters

Order $Order
$discount

at line 1169
Order calculatePrice(Order $Order)

合計金額を計算

Parameters

Order $Order

Return Value

Order

at line 1193
Order setOrderStatus(Order $Order, $status)

受注ステータスをセット

Parameters

Order $Order
$status

Return Value

Order

at line 1217
MailHistory sendOrderMail(Order $Order)

受注メール送信を行う

Parameters

Order $Order

Return Value

MailHistory

at line 1247
notifyComplete(Order $Order)

受注処理完了通知

Parameters

Order $Order