本文整理汇总了PHP中SC_Helper_Purchase::copyFromOrder方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Helper_Purchase::copyFromOrder方法的具体用法?PHP SC_Helper_Purchase::copyFromOrder怎么用?PHP SC_Helper_Purchase::copyFromOrder使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SC_Helper_Purchase
的用法示例。
在下文中一共展示了SC_Helper_Purchase::copyFromOrder方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
public function testCopyFromOrder_接頭辞・キーを設定した場合_指定の値でコピーされる()
{
$dest = array();
$src = array('input_name01' => '姓', 'input_name02' => '名', 'input_zip01' => '012');
$this->expected = array('output_name01' => '姓', 'output_name02' => '名');
$helper = new SC_Helper_Purchase();
$helper->copyFromOrder($dest, $src, 'output', 'input', array('name01', 'name02'));
$this->actual = $dest;
$this->verify();
}
示例2: registerDeliv
/**
* お届け先チェックの値に応じて, お届け先情報を保存する.
*
* 会員住所がチェックされている場合は, 会員情報からお届け先を取得する.
* その他のお届け先がチェックされている場合は, その他のお届け先からお届け先を取得する.
* お届け先チェックの値が不正な場合は false を返す.
*
* @param integer $other_deliv_id
* @param string $uniqid 受注一時テーブルのユニークID
* @param SC_Helper_Purchase $objPurchase SC_Helper_Purchase インスタンス
* @param SC_Customer $objCustomer SC_Customer インスタンス
* @param SC_Helper_Address_Ex $objAddress
* @return boolean お届け先チェックの値が妥当な場合 true
*/
public function registerDeliv($other_deliv_id, $uniqid, &$objPurchase, &$objCustomer, $objAddress)
{
$arrValues = array();
// 会員登録住所がチェックされている場合
if ($other_deliv_id == 0) {
$objPurchase->copyFromCustomer($arrValues, $objCustomer, 'shipping');
// 別のお届け先がチェックされている場合
} else {
$arrOtherDeliv = $objAddress->getAddress($other_deliv_id, $objCustomer->getValue('customer_id'));
if (!$arrOtherDeliv) {
return false;
}
$objPurchase->copyFromOrder($arrValues, $arrOtherDeliv, 'shipping', '');
}
$objPurchase->saveShippingTemp($arrValues, $other_deliv_id);
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
return true;
}
示例3: lfRegistData
/**
* データの一時登録を行う.
*
* 非会員向けの処理
* @param integer $uniqid 受注一時テーブルのユニークID
* @param SC_Helper_Purchase $objPurchase SC_Helper_Purchase インスタンス
* @param SC_Customer $objCustomer SC_Customer インスタンス
* @param SC_FormParam $objFormParam SC_FormParam インスタンス
* @param boolean $isMultiple 複数配送の場合 true
*/
function lfRegistData($uniqid, &$objPurchase, &$objCustomer, &$objFormParam, $isMultiple = false)
{
$arrParams = $objFormParam->getHashArray();
// 注文者をお届け先とする配列を取得
$arrShippingOwn = array();
$objPurchase->copyFromOrder($arrShippingOwn, $arrParams);
// 都度入力されたお届け先
$arrShipping = $objPurchase->extractShipping($arrParams);
if ($isMultiple) {
$objPurchase->unsetOneShippingTemp(0);
$objPurchase->unsetOneShippingTemp(1);
$objPurchase->saveShippingTemp($arrShippingOwn, 0);
if ($arrParams['deliv_check'] == '1') {
$objPurchase->saveShippingTemp($arrShipping, 1);
}
} else {
$objPurchase->unsetAllShippingTemp(true);
if ($arrParams['deliv_check'] == '1') {
$objPurchase->saveShippingTemp($arrShipping, 1);
} else {
$objPurchase->saveShippingTemp($arrShippingOwn, 0);
}
}
$arrValues = $objFormParam->getDbArray();
// 登録データの作成
$arrValues['order_birth'] = SC_Utils_Ex::sfGetTimestamp($arrParams['year'], $arrParams['month'], $arrParams['day']);
$arrValues['update_date'] = 'CURRENT_TIMESTAMP';
$arrValues['customer_id'] = '0';
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
}
示例4: registerDeliv
/**
* お届け先チェックの値に応じて, お届け先情報を保存する.
*
* 会員住所がチェックされている場合は, 会員情報からお届け先を取得する.
* その他のお届け先がチェックされている場合は, その他のお届け先からお届け先を取得する.
* お届け先チェックの値が不正な場合は false を返す.
*
* @param integer $other_deliv_id
* @param string $uniqid 受注一時テーブルのユニークID
* @param SC_Helper_Purchase $objPurchase SC_Helper_Purchase インスタンス
* @param SC_Customer $objCustomer SC_Customer インスタンス
* @return boolean お届け先チェックの値が妥当な場合 true
*/
function registerDeliv($other_deliv_id, $uniqid, &$objPurchase, &$objCustomer)
{
GC_Utils_Ex::gfDebugLog('register deliv. deliv_check=' . $deliv_check);
$arrValues = array();
// 会員登録住所がチェックされている場合
if ($other_deliv_id == 0) {
$objPurchase->copyFromCustomer($arrValues, $objCustomer, 'shipping');
} else {
$objQuery =& SC_Query_Ex::getSingletonInstance();
$arrOtherDeliv = $objQuery->getRow('*', 'dtb_other_deliv', 'customer_id = ? AND other_deliv_id = ?', array($objCustomer->getValue('customer_id'), $other_deliv_id));
if (empty($arrOtherDeliv)) {
return false;
}
$objPurchase->copyFromOrder($arrValues, $arrOtherDeliv, 'shipping', '');
}
$objPurchase->saveShippingTemp($arrValues, $other_deliv_id);
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
return true;
}
示例5: lfRegistData
/**
* データの一時登録を行う.
*
* @param integer $uniqid 受注一時テーブルのユニークID
* @param SC_Helper_Purchase $objPurchase SC_Helper_Purchase インスタンス
* @param SC_Customer $objCustomer SC_Customer インスタンス
* @param SC_FormParam $objFormParam SC_FormParam インスタンス
* @param boolean $isMultiple 複数配送の場合 true
*/
function lfRegistData($uniqid, &$objPurchase, &$objCustomer, &$objFormParam, $isMultiple = false)
{
$arrParams = $objFormParam->getHashArray();
$arrValues = $objFormParam->getDbArray();
// 登録データの作成
$arrValues['order_birth'] = SC_Utils_Ex::sfGetTimestamp($arrParams['year'], $arrParams['month'], $arrParams['day']);
$arrValues['update_date'] = 'CURRENT_TIMESTAMP';
$arrValues['customer_id'] = '0';
// お届け先を指定しない場合、
if ($arrParams['deliv_check'] != '1') {
// order_* を shipping_* へコピー
$objPurchase->copyFromOrder($arrValues, $arrParams);
}
/*
* order_* と shipping_* をそれぞれ $_SESSION['shipping'][$shipping_id]
* に, shipping_* というキーで保存
*/
foreach ($arrValues as $key => $val) {
if (preg_match('/^order_/', $key)) {
$arrOrder['shipping_' . str_replace('order_', '', $key)] = $val;
} elseif (preg_match('/^shipping_/', $key)) {
$arrShipping[$key] = $val;
}
}
if ($isMultiple) {
$objPurchase->saveShippingTemp($arrOrder, 0);
if ($arrParams['deliv_check'] == '1') {
$objPurchase->saveShippingTemp($arrShipping, 1);
}
} else {
if ($arrParams['deliv_check'] == '1') {
$objPurchase->saveShippingTemp($arrShipping, 0);
} else {
$objPurchase->saveShippingTemp($arrOrder, 0);
}
}
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
}
示例6: registerDeliv
/**
* お届け先チェックの値に応じて, お届け先情報を保存する.
*
* 会員住所がチェックされている場合は, 会員情報からお届け先を取得する.
* その他のお届け先がチェックされている場合は, その他のお届け先からお届け先を取得する.
* お届け先チェックの値が不正な場合は false を返す.
*
* @param integer $deliv_check お届け先チェック
* @param string $uniqid 受注一時テーブルのユニークID
* @param SC_Helper_Purchase $objPurchase SC_Helper_Purchase インスタンス
* @param SC_Customer $objCustomer SC_Customer インスタンス
* @return boolean お届け先チェックの値が妥当な場合 true
*/
function registerDeliv($deliv_check, $uniqid, &$objPurchase, &$objCustomer)
{
$this->log("register deliv. deliv_check=" . $deliv_check, "Debug");
$arrValues = array();
// 会員登録住所がチェックされている場合
if ($deliv_check == '-1') {
$objPurchase->copyFromCustomer($arrValues, $objCustomer, 'shipping');
$objPurchase->saveShippingTemp($arrValues);
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
return true;
} elseif ($deliv_check >= 1) {
$objQuery =& SC_Query_Ex::getSingletonInstance();
$arrOtherDeliv = $objQuery->getRow("*", "dtb_other_deliv", "customer_id = ? AND other_deliv_id = ?", array($objCustomer->getValue('customer_id'), $deliv_check));
if (SC_Utils_Ex::isBlank($arrOtherDeliv)) {
return false;
}
$objPurchase->copyFromOrder($arrValues, $arrOtherDeliv, 'shipping', '');
$objPurchase->saveShippingTemp($arrValues);
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
return true;
} else {
return false;
}
}
示例7: registerDeliv
/**
* お届け先チェックの値に応じて, お届け先情報を保存する.
*
* 会員住所がチェックされている場合は, 会員情報からお届け先を取得する.
* その他のお届け先がチェックされている場合は, その他のお届け先からお届け先を取得する.
* お届け先チェックの値が不正な場合は false を返す.
*
* @param integer $other_deliv_id
* @param string $uniqid 受注一時テーブルのユニークID
* @param SC_Helper_Purchase $objPurchase SC_Helper_Purchase インスタンス
* @param SC_Customer $objCustomer SC_Customer インスタンス
* @return boolean お届け先チェックの値が妥当な場合 true
*/
function registerDeliv($other_deliv_id, $uniqid, &$objPurchase, &$objCustomer, $objAddress)
{
GC_Utils_Ex::gfDebugLog('register deliv. deliv_check=' . $deliv_check);
$arrValues = array();
// 会員登録住所がチェックされている場合
if ($other_deliv_id == 0) {
$objPurchase->copyFromCustomer($arrValues, $objCustomer, 'shipping');
} else {
$arrOtherDeliv = $objAddress->getAddress($other_deliv_id);
if (!$arrOtherDeliv) {
return false;
}
$objPurchase->copyFromOrder($arrValues, $arrOtherDeliv, 'shipping', '');
}
$objPurchase->saveShippingTemp($arrValues, $other_deliv_id);
$objPurchase->saveOrderTemp($uniqid, $arrValues, $objCustomer);
return true;
}