class CartSession

カートセッション管理クラス

Properties

$key_tmp ユニークIDを指定する.
$cartSession カートのセッション変数.

Methods

__construct($cartKey = 'cart')

No description

saveCurrentCart(string $key_tmp, integer $productTypeId)

No description

getCancelPurchase($productTypeId)

No description

checkChangeCart(integer $productTypeId)

No description

getNextCartID($productTypeId)

No description

setProductValue($id, $key, $val, $productTypeId)

No description

getMax($productTypeId)

No description

getTotalQuantity($productTypeId)

No description

getAllProductsTotal($productTypeId, $pref_id, $country_id)

No description

getAllProductsTax($productTypeId, $pref_id, $country_id)

No description

getAllProductsPoint(integer $productTypeId)

No description

addProduct($product_class_id, $quantity)

No description

setPrevURL($url, $excludePaths = array())

No description

getPrevURL()

No description

delProductKey($keyname, $val, $productTypeId)

No description

setValue($key, $val, $productTypeId)

No description

getValue($key, $productTypeId)

No description

adjustSessionProductsClass($arrProductsClass)

セッション中の商品情報データの調整。 productsClass項目から、不必要な項目を削除する。

void
setCartSession4getCartList(integer $productTypeId, integer $key)

getCartList用にcartSession情報をセットする

array
getCartList(integer $productTypeId, integer $pref_id, integer $country_id)

商品種別ごとにカート内商品の一覧を取得する.

array
getAllCartList()

全てのカートの内容を取得する.

array
getAllProductClassID(integer $productTypeId)

カート内にある商品規格IDを全て取得する.

void
delAllProducts(integer $productTypeId)

商品種別ID を指定して, カート内の商品を全て削除する.

delProduct($cart_no, $productTypeId)

No description

upQuantity($cart_no, $productTypeId)

No description

downQuantity($cart_no, $productTypeId)

No description

integer
getQuantity(integer $cart_no, integer $productTypeId)

カート番号と商品種別IDを指定して, 数量を取得する.

setQuantity(integer $quantity, integer $cart_no, integer $productTypeId)

カート番号と商品種別IDを指定して, 数量を設定する.

integer
getProductClassId(integer $cart_no, integer $productTypeId)

カート番号と商品種別IDを指定して, 商品規格IDを取得する.

string
checkProducts(string $productTypeId)

カート内の商品の妥当性をチェックする.

boolean
isDelivFree(integer $productTypeId)

送料無料条件を満たすかどうかチェックする

array
calculate(integer $productTypeId, Customer $objCustomer, integer $use_point, integer|array $deliv_pref = '', integer $charge, integer $discount, integer $deliv_id, integer $order_pref, integer $order_country_id)

カートの内容を計算する.

array
getKeys()

カートが保持するキー(商品種別ID)を配列で返す.

void
registerKey(integer $key)

カートに設定された現在のキー(商品種別ID)を登録する.

void
unsetKey()

カートに設定された現在のキー(商品種別ID)を削除する.

integer
getKey()

カートに設定された現在のキー(商品種別ID)を取得する.

boolean
isMultiple()

複数商品種別かどうか.

boolean
hasProductType(integer $product_type_id)

引数の商品種別の商品がカートに含まれるかどうか.

Details

at line 49
__construct($cartKey = 'cart')

Parameters

$cartKey

at line 63
saveCurrentCart(string $key_tmp, integer $productTypeId)

Parameters

string $key_tmp
integer $productTypeId

at line 79
getCancelPurchase($productTypeId)

Parameters

$productTypeId

at line 93
checkChangeCart(integer $productTypeId)

Parameters

integer $productTypeId

at line 121
getNextCartID($productTypeId)

Parameters

$productTypeId

at line 137
setProductValue($id, $key, $val, $productTypeId)

Parameters

$id
$key
$val
$productTypeId

at line 150
getMax($productTypeId)

Parameters

$productTypeId

at line 167
getTotalQuantity($productTypeId)

Parameters

$productTypeId

at line 179
getAllProductsTotal($productTypeId, $pref_id, $country_id)

Parameters

$productTypeId
$pref_id
$country_id

at line 207
getAllProductsTax($productTypeId, $pref_id, $country_id)

Parameters

$productTypeId
$pref_id
$country_id

at line 231
getAllProductsPoint(integer $productTypeId)

Parameters

integer $productTypeId

at line 258
addProduct($product_class_id, $quantity)

Parameters

$product_class_id
$quantity

at line 285
setPrevURL($url, $excludePaths = array())

Parameters

$url
$excludePaths

at line 307
getPrevURL()

at line 313
delProductKey($keyname, $val, $productTypeId)

Parameters

$keyname
$val
$productTypeId

at line 323
setValue($key, $val, $productTypeId)

Parameters

$key
$val
$productTypeId

at line 328
getValue($key, $productTypeId)

Parameters

$key
$productTypeId

at line 337
adjustSessionProductsClass($arrProductsClass)

セッション中の商品情報データの調整。 productsClass項目から、不必要な項目を削除する。

Parameters

$arrProductsClass

at line 374
void setCartSession4getCartList(integer $productTypeId, integer $key)

getCartList用にcartSession情報をセットする

Parameters

integer $productTypeId 商品種別ID
integer $key

Return Value

void MEMO: せっかく一回だけ読み込みにされてますが、税率対応の関係でちょっと保留

at line 407
array getCartList(integer $productTypeId, integer $pref_id, integer $country_id)

商品種別ごとにカート内商品の一覧を取得する.

Parameters

integer $productTypeId 商品種別ID
integer $pref_id 税金計算用注文者都道府県ID
integer $country_id 税金計算用注文者国ID

Return Value

array カート内商品一覧の配列

at line 479
array getAllCartList()

全てのカートの内容を取得する.

Return Value

array 全てのカートの内容

at line 502
array getAllProductClassID(integer $productTypeId)

カート内にある商品規格IDを全て取得する.

Parameters

integer $productTypeId 商品種別ID

Return Value

array 商品規格ID の配列

at line 521
void delAllProducts(integer $productTypeId)

商品種別ID を指定して, カート内の商品を全て削除する.

Parameters

integer $productTypeId 商品種別ID

Return Value

void

at line 530
delProduct($cart_no, $productTypeId)

Parameters

$cart_no
$productTypeId

at line 541
upQuantity($cart_no, $productTypeId)

Parameters

$cart_no
$productTypeId

at line 550
downQuantity($cart_no, $productTypeId)

Parameters

$cart_no
$productTypeId

at line 565
integer getQuantity(integer $cart_no, integer $productTypeId)

カート番号と商品種別IDを指定して, 数量を取得する.

Parameters

integer $cart_no カート番号
integer $productTypeId 商品種別ID

Return Value

integer 該当商品規格の数量

at line 583
setQuantity(integer $quantity, integer $cart_no, integer $productTypeId)

カート番号と商品種別IDを指定して, 数量を設定する.

Parameters

integer $quantity 設定する数量
integer $cart_no カート番号
integer $productTypeId 商品種別ID

at line 600
integer getProductClassId(integer $cart_no, integer $productTypeId)

カート番号と商品種別IDを指定して, 商品規格IDを取得する.

Parameters

integer $cart_no カート番号
integer $productTypeId 商品種別ID

Return Value

integer 商品規格ID

at line 623
string checkProducts(string $productTypeId)

カート内の商品の妥当性をチェックする.

エラーが発生した場合は, 商品をカート内から削除又は数量を調整し, エラーメッセージを返す.

  1. 商品種別に関連づけられた配送業者の存在チェック
  2. 削除/非表示商品のチェック
  3. 販売制限数のチェック
  4. 在庫数チェック

Parameters

string $productTypeId 商品種別ID

Return Value

string エラーが発生した場合はエラーメッセージ

at line 683
boolean isDelivFree(integer $productTypeId)

送料無料条件を満たすかどうかチェックする

Parameters

integer $productTypeId 商品種別ID

Return Value

boolean 送料無料の場合 true

at line 733
array calculate(integer $productTypeId, Customer $objCustomer, integer $use_point, integer|array $deliv_pref = '', integer $charge, integer $discount, integer $deliv_id, integer $order_pref, integer $order_country_id)

カートの内容を計算する.

カートの内容を計算し, 下記のキーを保持する連想配列を返す.

  • tax: 税額
  • subtotal: カート内商品の小計
  • deliv_fee: カート内商品の合計送料
  • total: 合計金額
  • payment_total: お支払い合計
  • add_point: 加算ポイント

Parameters

integer $productTypeId 商品種別ID
Customer $objCustomer ログイン中の Customer インスタンス
integer $use_point 今回使用ポイント
integer|array $deliv_pref 配送先都道府県ID. 複数に配送する場合は都道府県IDの配列
integer $charge 手数料
integer $discount 値引き
integer $deliv_id 配送業者ID
integer $order_pref 注文者の都道府県ID
integer $order_country_id 注文者の国

Return Value

array カートの計算結果の配列

at line 797
array getKeys()

カートが保持するキー(商品種別ID)を配列で返す.

Return Value

array 商品種別IDの配列

at line 817
void registerKey(integer $key)

カートに設定された現在のキー(商品種別ID)を登録する.

Parameters

integer $key 商品種別ID

Return Value

void

at line 827
void unsetKey()

カートに設定された現在のキー(商品種別ID)を削除する.

Return Value

void

at line 837
integer getKey()

カートに設定された現在のキー(商品種別ID)を取得する.

Return Value

integer 商品種別ID

at line 847
boolean isMultiple()

複数商品種別かどうか.

Return Value

boolean カートが複数商品種別の場合 true

at line 858
boolean hasProductType(integer $product_type_id)

引数の商品種別の商品がカートに含まれるかどうか.

Parameters

integer $product_type_id 商品種別ID

Return Value

boolean 指定の商品種別がカートに含まれる場合 true