Class: SC_Helper_Purchase
Source Location: /helper/SC_Helper_Purchase.php
商品購入関連のヘルパークラス.
Author(s):
Version:
- $Id: SC_Helper_Purchase.php 21303 2011-10-28 10:01:24Z shutta $
|
|
Class Details
Class Methods
static method sfUpdateOrderNameCol [line 1188]
static void sfUpdateOrderNameCol(
integer
$order_id, [boolean
$temp_table = false])
|
|
受注の名称列を更新する
Parameters:
method cancelOrder [line 114]
void cancelOrder(
integer
$order_id, [integer
$orderStatus = ORDER_CANCEL], [boolean
$is_delete = false])
|
|
受注をキャンセルする. 受注完了後の受注をキャンセルする. この関数は, 主に決済モジュールにて, 受注をキャンセルする場合に使用する. 対応状況を引数 $orderStatus で指定した値に変更する. (デフォルト ORDER_CANCEL) 引数 $is_delete が true の場合は, 受注データを論理削除する. 商品の在庫数は, 受注前の在庫数に戻される.
Parameters:
method cleanupSession [line 1275]
void cleanupSession(
integer
$orderId,
&$objCartSession,
&$objCustomer, integer
$cartKey, SC_CartSession
$objCartSession, SC_Customer
$objCustomer)
|
|
セッションに保持している情報を破棄する. 通常、受注処理(completeOrder)完了後に呼び出され、 セッション情報を破棄する. 決済モジュール画面から確認画面に「戻る」場合を考慮し、 セッション情報を破棄しないカスタマイズを、モジュール側で 加える機会を与える.
Parameters:
method clearShipmentItemTemp [line 315]
void clearShipmentItemTemp(
[integer
$shipping_id = null])
|
|
配送商品をクリア(消去)する
Parameters:
method completeOrder [line 56]
void completeOrder(
[integer
$orderStatus = ORDER_NEW])
|
|
受注を完了する. 下記のフローで受注を完了する. - トランザクションを開始する
- カートの内容を検証する.
- 受注一時テーブルから受注データを読み込む
- ユーザーがログインしている場合はその他の発送先へ登録する
- 受注データを受注テーブルへ登録する
- トランザクションをコミットする
実行中に, 何らかのエラーが発生した場合, 処理を中止しエラーページへ遷移する 決済モジュールを使用する場合は対応状況を「決済処理中」に設定し, 決済完了後「新規受付」に変更すること
Parameters:
method copyFromCustomer [line 419]
void copyFromCustomer(
&$dest,
&$objCustomer, [string
$prefix = 'order'], [array
$keys = array('name01', 'name02', 'kana01', 'kana02',
'sex', 'zip01', 'zip02', 'pref',
'addr01', 'addr02',
'tel01', 'tel02', 'tel03', 'job',
'birth', 'email')], array
$dest, SC_Customer
$objCustomer)
|
|
会員情報を受注情報にコピーする. ユーザーがログインしていない場合は何もしない. 会員情報を $dest の order_* へコピーする. customer_id は強制的にコピーされる.
Parameters:
method copyFromOrder [line 463]
void copyFromOrder(
&$dest, array
$src, [string
$prefix = 'shipping'], [string
$src_prefix = 'order'], [array
$keys = array('name01', 'name02', 'kana01', 'kana02',
'sex', 'zip01', 'zip02', 'pref',
'addr01', 'addr02',
'tel01', 'tel02', 'tel03')], array
$dest)
|
|
受注情報を配送情報にコピーする. 受注情報($src)を $dest の order_* へコピーする. TODO 汎用的にして SC_Utils へ移動
Parameters:
method getDateArray [line 589]
void getDateArray(
$start_day,
$end_day)
|
|
お届け可能日のスタート値から, お届け日の配列を取得する.
Parameters:
method getDeliv [line 635]
array getDeliv(
integer
$product_type_id)
|
|
商品種別ID から配送業者を取得する.
Tags:
Parameters:
method getDelivDate [line 532]
void getDelivDate(
&$objCartSess,
$productTypeId)
|
|
お届け日一覧を取得する.
Parameters:
method getDelivTime [line 616]
array getDelivTime(
integer
$deliv_id)
|
|
配送業者IDからお届け時間の配列を取得する.
Tags:
Parameters:
method getOrder [line 904]
array getOrder(
integer
$order_id, [integer
$customer_id = null])
|
|
受注情報を取得する.
Tags:
Parameters:
method getOrderDetail [line 922]
array getOrderDetail(
integer
$order_id, [boolean
$has_order_status = true])
|
|
受注詳細を取得する.
Tags:
Parameters:
method getOrderTemp [line 234]
array getOrderTemp(
integer
$uniqId)
|
|
受注一時情報を取得する.
Tags:
Parameters:
method getOrderTempByOrderId [line 246]
array getOrderTempByOrderId(
integer
$order_id)
|
|
受注IDをキーにして受注一時情報を取得する.
Tags:
Parameters:
method getPayments [line 648]
array getPayments(
integer
$deliv_id)
|
|
配送業者ID から, 有効な支払方法IDを取得する.
Tags:
Parameters:
method getPaymentsByPrice [line 489]
array getPaymentsByPrice(
integer
$total, integer
$deliv_id)
|
|
購入金額に応じた支払方法を取得する.
Tags:
Parameters:
method getShipmentItems [line 1029]
array getShipmentItems(
integer
$order_id, integer
$shipping_id, [boolean
$has_detail = true])
|
|
配送商品を取得する.
Tags:
Parameters:
method getShippingPref [line 361]
void getShippingPref(
$is_multiple)
|
|
配送先都道府県の配列を返す.
Parameters:
method getShippings [line 998]
array getShippings(
integer
$order_id, [boolean
$has_items = true])
|
|
配送情報を取得する.
Tags:
Parameters:
method getShippingTemp [line 296]
void getShippingTemp(
bool
$has_shipment_item)
|
|
配送情報をセッションから取得する.
Parameters:
method isAddPoint [line 1241]
boolean isAddPoint(
integer
$status)
|
|
ポイント加算するかの判定
Tags:
Parameters:
method isMultiple [line 374]
method isUsePoint [line 1221]
boolean isUsePoint(
integer
$status)
|
|
ポイント使用するかの判定 $status が null の場合は false を返す.
Tags:
Parameters:
method registerOrder [line 829]
integer registerOrder(
integer
$order_id, array
$arrParams)
|
|
受注情報を登録する. 既に受注IDが存在する場合は, 受注情報を更新する. 引数の受注IDが, 空白又は null の場合は, 新しく受注IDを発行して登録する.
Tags:
Parameters:
method registerOrderComplete [line 762]
void registerOrderComplete(
array
$orderParams,
&$objCartSession, integer
$cartKey, SC_CartSession
$objCartSession, integer
3)
|
|
受注登録を完了する. 引数の受注情報を受注テーブル及び受注詳細テーブルに登録する. 登録後, 受注一時テーブルに削除フラグを立てる.
Parameters:
method registerOrderDetail [line 883]
void registerOrderDetail(
integer
$order_id, array
$arrParams)
|
|
受注詳細情報を登録する. 既に, 該当の受注が存在する場合は, 受注情報を削除し, 登録する.
Parameters:
method registerShipmentItem [line 706]
void registerShipmentItem(
integer
$order_id, integer
$shipping_id, array
$arrParams)
|
|
配送商品を登録する.
Parameters:
method registerShipping [line 668]
void registerShipping(
integer
$order_id, array
$arrParams, [boolean
$convert_shipping_date = true])
|
|
配送情報の登録を行う. $arrParam のうち, dtb_shipping テーブルに存在するカラムのみを登録する. TODO UPDATE/INSERT にする
Parameters:
method rollbackOrder [line 155]
string rollbackOrder(
integer
$order_id, [integer
$orderStatus = ORDER_CANCEL], [boolean
$is_delete = false])
|
|
受注をキャンセルし, カートをロールバックして, 受注一時IDを返す. 受注完了後の受注をキャンセルし, カートの状態を受注前の状態へ戻す. この関数は, 主に, 決済モジュールに遷移した後, 購入確認画面へ戻る場合に使用する. 対応状況を引数 $orderStatus で指定した値に変更する. (デフォルト ORDER_CANCEL) 引数 $is_delete が true の場合は, 受注データを論理削除する. 商品の在庫数, カートの内容は受注前の状態に戻される.
Tags:
Parameters:
method saveOrderTemp [line 264]
array saveOrderTemp(
integer
$uniqId, array
$params,
&$objCustomer, SC_Customer
$objCustomer)
|
|
受注一時情報を保存する. 既存のデータが存在しない場合は新規保存. 存在する場合は更新する. 既存のデータが存在せず, ユーザーがログインしている場合は, 会員情報をコピーする.
Tags:
Parameters:
method saveShippingTemp [line 385]
void saveShippingTemp(
array
$arrSrc, [integer
$shipping_id = 0])
|
|
配送情報をセッションに保存する.
Parameters:
method sendOrderMail [line 1061]
void sendOrderMail(
integer
$orderId)
|
|
受注完了メールを送信する. HTTP_USER_AGENT の種別により, 携帯電話の場合は携帯用の文面, PC の場合は PC 用の文面でメールを送信する.
Parameters:
method setDownloadableFlgTo [line 975]
void setDownloadableFlgTo(
array
&$arrOrderDetail)
|
|
ダウンロード可能フラグを, 受注詳細に設定する. ダウンロード可能と判断されるのは, 以下の通り. - ダウンロード可能期限が期限内かつ, 入金日が入力されている
- 販売価格が 0 円である
受注詳細行には, is_downloadable という真偽値が設定される.
Parameters:
method setShipmentItemTemp [line 331]
void setShipmentItemTemp(
integer
$shipping_id, integer
$product_class_id, integer
$quantity)
|
|
配送商品を設定する.
Parameters:
method sfUpdateOrderStatus [line 1080]
void sfUpdateOrderStatus(
integer
$orderId, [integer|null
$newStatus = null], [integer|null
$newAddPoint = null], [integer|null
$newUsePoint = null],
&$sqlval, array
$sqlval)
|
|
受注.対応状況の更新 必ず呼び出し元でトランザクションブロックを開いておくこと。
Parameters:
method unsetShippingTemp [line 401]
void unsetShippingTemp(
)
|
|
セッションの配送情報を破棄する.
method verifyChangeCart [line 197]
void verifyChangeCart(
string
$uniqId,
&$objCartSession, SC_CartSession
$objCartSession)
|
|
カートに変化が無いか検証する. ユニークIDとセッションのユニークIDを比較し, 異なる場合は エラー画面を表示する. カートが空の場合, 購入ボタン押下後にカートが変更された場合は カート画面へ遷移する.
Parameters:
Documentation generated on Fri, 24 Feb 2012 14:02:48 +0900 by Seasoft
|