本文整理汇总了PHP中SC_Helper_Customer_Ex::sfGetCustomerDataFromId方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Helper_Customer_Ex::sfGetCustomerDataFromId方法的具体用法?PHP SC_Helper_Customer_Ex::sfGetCustomerDataFromId怎么用?PHP SC_Helper_Customer_Ex::sfGetCustomerDataFromId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SC_Helper_Customer_Ex
的用法示例。
在下文中一共展示了SC_Helper_Customer_Ex::sfGetCustomerDataFromId方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setOrderToFormParam
/**
* 受注データを取得して, SC_FormParam へ設定する.
*
* @param SC_FormParam $objFormParam SC_FormParam インスタンス
* @param integer $order_id 取得元の受注ID
* @return void
*/
function setOrderToFormParam(&$objFormParam, $order_id)
{
$objPurchase = new SC_Helper_Purchase_Ex();
// 受注詳細を設定
$arrOrderDetail = $objPurchase->getOrderDetail($order_id, false);
$objFormParam->setParam(SC_Utils_Ex::sfSwapArray($arrOrderDetail));
$arrShippingsTmp = $objPurchase->getShippings($order_id);
$arrShippings = array();
foreach ($arrShippingsTmp as $row) {
// お届け日の処理
if (!SC_Utils_Ex::isBlank($row['shipping_date'])) {
$ts = strtotime($row['shipping_date']);
$row['shipping_date_year'] = date('Y', $ts);
$row['shipping_date_month'] = date('n', $ts);
$row['shipping_date_day'] = date('j', $ts);
}
$arrShippings[$row['shipping_id']] = $row;
}
$objFormParam->setValue('shipping_quantity', count($arrShippings));
$objFormParam->setParam(SC_Utils_Ex::sfSwapArray($arrShippings));
/*
* 配送商品を設定
*
* $arrShipmentItem['shipment_(key)'][$shipping_id][$item_index] = 値
* $arrProductQuantity[$shipping_id] = 配送先ごとの配送商品数量
*/
$arrProductQuantity = array();
$arrShipmentItem = array();
foreach ($arrShippings as $shipping_id => $arrShipping) {
$arrProductQuantity[$shipping_id] = count($arrShipping['shipment_item']);
foreach ($arrShipping['shipment_item'] as $item_index => $arrItem) {
foreach ($arrItem as $item_key => $item_val) {
$arrShipmentItem['shipment_' . $item_key][$shipping_id][$item_index] = $item_val;
}
}
}
$objFormParam->setValue('shipping_product_quantity', $arrProductQuantity);
$objFormParam->setParam($arrShipmentItem);
/*
* 受注情報を設定
* $arrOrderDetail と項目が重複しており, $arrOrderDetail は連想配列の値
* が渡ってくるため, $arrOrder で上書きする.
*/
$arrOrder = $objPurchase->getOrder($order_id);
$objFormParam->setParam($arrOrder);
// ポイントを設定
list($db_point, $rollback_point) = SC_Helper_DB_Ex::sfGetRollbackPoint($order_id, $arrOrder['use_point'], $arrOrder['add_point'], $arrOrder['status']);
$objFormParam->setValue('total_point', $db_point);
$objFormParam->setValue('point', $rollback_point);
if (!SC_Utils_Ex::isBlank($objFormParam->getValue('customer_id'))) {
$arrCustomer = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($objFormParam->getValue('customer_id'));
$objFormParam->setValue('customer_point', $arrCustomer['point']);
}
}
示例2: delete
/**
* 会員を削除する処理
*
* @param integer $customer_id 会員ID
* @return boolean true:成功 false:失敗
*/
public static function delete($customer_id)
{
$arrData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id, 'del_flg = 0');
if (SC_Utils_Ex::isBlank($arrData)) {
//対象となるデータが見つからない。
return false;
}
// XXXX: 仮会員は物理削除となっていたが論理削除に変更。
$arrVal = array('del_flg' => '1');
SC_Helper_Customer_Ex::sfEditCustomerData($arrVal, $customer_id);
return true;
}
示例3: setCustomerTo
/**
* 会員情報をフォームに設定する.
*
* @param integer $customer_id 会員ID
* @param SC_FormParam $objFormParam SC_FormParam インスタンス
* @return void
*/
function setCustomerTo($customer_id, &$objFormParam)
{
$arrCustomer = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id);
foreach ($arrCustomer as $key => $val) {
$objFormParam->setValue('order_' . $key, $val);
}
$objFormParam->setValue('customer_id', $customer_id);
$objFormParam->setValue('customer_point', $arrCustomer['point']);
}
示例4: sfSendRegistMail
/**
* 登録メールを送信する。
*
* @param string $secret_key 会員固有キー
* @param integer $customer_id 顧客ID
* @param boolean $is_mobile false(default):PCアドレスにメールを送る true:携帯アドレスにメールを送る
* @return boolean true:成功 false:失敗
*/
function sfSendRegistMail($secret_key, $customer_id = '', $is_mobile = false)
{
// 会員データの取得
if (SC_Utils_Ex::sfIsInt($customer_id)) {
$arrCustomerData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id);
} else {
$arrCustomerData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId('', "secret_key = ?", array($secret_key));
}
if (SC_Utils_Ex::isBlank($arrCustomerData)) {
return false;
}
$CONF = SC_Helper_DB_Ex::sfGetBasisData();
$objMailText = new SC_SiteView_Ex();
$objMailText->assign('CONF', $CONF);
$objMailText->assign("name01", $arrCustomerData['name01']);
$objMailText->assign("name02", $arrCustomerData['name02']);
$objMailText->assign('uniqid', $arrCustomerData['secret_key']);
$objMailText->assignobj($arrCustomerData);
$objMailText->assignobj($this);
$objHelperMail = new SC_Helper_Mail_Ex();
// 仮会員が有効の場合
if (CUSTOMER_CONFIRM_MAIL == true and $arrCustomerData['status'] == 1) {
$subject = $objHelperMail->sfMakeSubject('会員登録のご確認', $objMailText);
$toCustomerMail = $objMailText->fetch("mail_templates/customer_mail.tpl");
} else {
$subject = $objHelperMail->sfMakeSubject('会員登録のご完了', $objMailText);
$toCustomerMail = $objMailText->fetch("mail_templates/customer_regist_mail.tpl");
}
$objMail = new SC_SendMail();
$objMail->setItem('', $subject, $toCustomerMail, $CONF["email03"], $CONF["shop_name"], $CONF["email03"], $CONF["email04"], $CONF["email04"], $CONF["email01"]);
// 宛先の設定
if ($is_mobile) {
$to_addr = $arrCustomerData["email_mobile"];
} else {
$to_addr = $arrCustomerData['email'];
}
$objMail->setTo($to_addr, $arrCustomerData["name01"] . $arrCustomerData["name02"] . " 様");
$objMail->sendMail();
return true;
}
示例5: setCustomerTo
/**
* 会員情報をフォームに設定する.
*
* @param integer $customer_id 会員ID
* @param SC_FormParam $objFormParam SC_FormParam インスタンス
* @return void
*/
public function setCustomerTo($customer_id, &$objFormParam)
{
$arrCustomer = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id);
foreach ($arrCustomer as $key => $val) {
$objFormParam->setValue('order_' . $key, $val);
}
// 誕生日の処理
if (!SC_Utils_Ex::isBlank($objFormParam->getValue('order_birth'))) {
$order_birth = substr($objFormParam->getValue('order_birth'), 0, 10);
$arrOrderBirth = explode("-", $order_birth);
$objFormParam->setValue('order_birth_year', intval($arrOrderBirth[0]));
$objFormParam->setValue('order_birth_month', intval($arrOrderBirth[1]));
$objFormParam->setValue('order_birth_day', intval($arrOrderBirth[2]));
}
$objFormParam->setValue('customer_id', $customer_id);
$objFormParam->setValue('customer_point', $arrCustomer['point']);
}
示例6: doContBillResult
/**
*
* @deprecated 重複決済される
* @param unknown $accountDay
*/
function doContBillResult($accountDay)
{
if ($accountDay == null) {
$accountDay = $this->getAccountDay();
}
$objQuery = SC_Query_Ex::getSingletonInstance();
$curl = $this->curl_init();
do {
$zip_file = CSV_TEMP_REALDIR . "auone/" . date("Y/m/d/His") . ".zip";
if (file_exists($zip_file)) {
sleep(5);
}
} while (file_exists($zip_file));
SC_Utils_Ex::recursiveMkdir(dirname($zip_file));
$fp = fopen($zip_file, "w");
// FIXME 決済認可
$curl = $this->curl_init(false, true);
// $post_history = array ();
$post = $this->getPost("ContBillResult", $this->config, compact("accountDay"));
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
curl_setopt($curl, CURLOPT_HEADER, FALSE);
curl_setopt($curl, CURLOPT_FILE, $fp);
curl_exec($curl);
$zip = new ZipArchive();
if (!$zip->open($zip_file)) {
SC_Utils_Ex::sfDispSiteError(PAGE_ERROR);
}
$extr = dirname($zip_file) . "/" . basename($zip_file, ".zip") . "/";
SC_Utils_Ex::recursiveMkdir($extr);
if (!$zip->extractTo($extr)) {
SC_Utils_Ex::sfDispSiteError(PAGE_ERROR);
}
$files = glob($extr . "*.csv");
foreach ($files as $file) {
$enc_filepath = SC_Utils_Ex::sfEncodeFile($file, CHAR_CODE, dirname($file) . DIRECTORY_SEPARATOR);
$fp2 = fopen($enc_filepath, "r");
fgetcsv($fp2);
while ($arrCsv = fgetcsv($fp2)) {
if (count($arrCsv) == 0) {
// 空の列
continue;
}
if ($arrCsv[4] != $this->config["serviceId"]) {
// 別サービス・チェック
continue;
}
if ($arrCsv[8] != 'MPL01000') {
// 取消レコード
continue;
}
$pay_info_no = $arrCsv[1];
$amount_in_tax = $arrCsv[2];
$service_id = $arrCsv[4];
$au_open_id = $arrCsv[5];
$member_manage_no = $arrCsv[6];
$process_day = $arrCsv[11];
$cont_bill_regst_day = $arrCsv[13];
$continue_account_id = $arrCsv[19];
$amount = $amount_in_tax - $amount_in_tax % 100;
$add_point = $amount;
$where = "au_open_id =? AND status = 2 AND del_flg = 0";
$arrWhereVal = (array) $au_open_id;
$customer = SC_Helper_Customer_Ex::sfGetCustomerDataFromId(null, $where, $arrWhereVal);
if (SC_Utils_Ex::isBlank($customer)) {
// ユーザー復旧は手動の方がいいかもしれない。
continue;
}
$name = "継続(" . $amount_in_tax . "円)";
$customer_id = $customer["customer_id"];
if ($add_point) {
$lost_point = 0;
// 更新後ポイント
$updatePoint = array("point" => min($customer["point"] + $add_point, AU_MAXPOINT));
// 最大ポイントへ変更している場合は失効ポイントを計算
if ($updatePoint["point"] == AU_MAXPOINT) {
$lost_point = max($customer["point"] + $add_point, AU_MAXPOINT) - AU_MAXPOINT;
}
SC_Helper_Customer_Ex::sfEditCustomerData($updatePoint, $customer_id);
$objQuery->insert("cp_dtb_point_history", array("id" => $objQuery->nextVal("cp_dtb_point_history_id"), "customer_id" => $customer_id, "add_point" => $add_point, "use_point" => 0, "lost_point" => $lost_point, "order_id" => 0, "name" => $name, "create_date" => "NOW()", "update_date" => "NOW()"));
$arrWhereVal[] = $continue_account_id;
if ($objQuery->exists("cp_dtb_customer_transaction", "au_open_id=? AND del_flg=0 AND continue_account_id =?", $arrWhereVal)) {
// 何かしらの影響で削除された場合後続処理を行う
continue;
}
$objQuery->insert("cp_dtb_customer_transaction", array("id" => $objQuery->nextVal("cp_dtb_customer_transaction_id"), "customer_id" => $customer_id, "au_open_id" => $au_open_id, "transaction_id" => "", "transaction_status" => "40", "pay_info_no" => $pay_info_no, "pay_status" => 20, "continue_account_id" => $continue_account_id, "member_manage_no" => $member_manage_no, "process_day" => $process_day, "process_time" => "000000", "cont_bill_regst_day" => $cont_bill_regst_day, "cont_bill_regst_time" => "000000", "ammount" => $amount, "ammount_in_tax" => $amount_in_tax, "del_flg" => 0, "contents_id" => sprintf("%05d%09d", $service_id, $add_point), "status" => 0));
}
}
}
}
示例7: lfDoResendMail
/**
* 会員に登録メールを再送する処理
*
* @param integer $customer_id 会員ID
* @return boolean true:成功 false:失敗
*/
public function lfDoResendMail($customer_id)
{
$arrData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id);
if (SC_Utils_Ex::isBlank($arrData) or $arrData['del_flg'] == 1) {
//対象となるデータが見つからない、または削除済み
return false;
}
//仮登録メール再送
$resend_flg = true;
// 登録メール再送
$objHelperMail = new SC_Helper_Mail_Ex();
$objHelperMail->setPage($this);
$objHelperMail->sfSendRegistMail($arrData['secret_key'], $customer_id, null, $resend_flg);
return true;
}
示例8: lfSendRefusalMail
/**
* 退会手続き完了メール送信する
*
* @access private
* @param integer $customer_id 会員ID
* @return void
*/
public function lfSendRefusalMail($customer_id)
{
// 会員データの取得
if (SC_Utils_Ex::sfIsInt($customer_id)) {
$arrCustomerData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id);
}
if (SC_Utils_Ex::isBlank($arrCustomerData)) {
return false;
}
$CONF = SC_Helper_DB_Ex::sfGetBasisData();
$objMailText = new SC_SiteView_Ex();
$objMailText->setPage($this);
$objMailText->assign('CONF', $CONF);
$objMailText->assign('name01', $arrCustomerData['name01']);
$objMailText->assign('name02', $arrCustomerData['name02']);
$objMailText->assignobj($this);
$objHelperMail = new SC_Helper_Mail_Ex();
$objHelperMail->setPage($this);
$subject = $objHelperMail->sfMakeSubject('退会手続きのご完了', $objMailText);
$toCustomerMail = $objMailText->fetch('mail_templates/customer_refusal_mail.tpl');
$objMail = new SC_SendMail_Ex();
$objMail->setItem('', $subject, $toCustomerMail, $CONF['email03'], $CONF['shop_name'], $CONF['email03'], $CONF['email04'], $CONF['email04'], $CONF['email01']);
$objMail->setTo($arrCustomerData['email'], $arrCustomerData['name01'] . $arrCustomerData['name02'] . ' 様');
$objMail->sendMail();
}
示例9: sfSendRegistMail
/**
* 登録メールを送信する。
*
* @param string $secret_key 会員固有キー
* @param integer $customer_id 会員ID
* @param boolean $is_mobile false(default):PCアドレスにメールを送る true:携帯アドレスにメールを送る
* @return boolean true:成功 false:失敗
*/
function sfSendRegistMail($secret_key, $customer_id = '', $is_mobile = false)
{
// 会員データの取得
if (SC_Utils_Ex::sfIsInt($customer_id)) {
$arrCustomerData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id);
} else {
$arrCustomerData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId('', 'secret_key = ?', array($secret_key));
}
if (SC_Utils_Ex::isBlank($arrCustomerData)) {
return false;
}
$CONF = SC_Helper_DB_Ex::sfGetBasisData();
$objMailText = new SC_SiteView_Ex();
$objMailText->setPage($this->getPage());
$objMailText->assign('CONF', $CONF);
$objMailText->assign('name01', $arrCustomerData['name01']);
$objMailText->assign('name02', $arrCustomerData['name02']);
$objMailText->assign('uniqid', $arrCustomerData['secret_key']);
$objMailText->assignobj($arrCustomerData);
$objMailText->assignobj($this);
$objHelperMail = new SC_Helper_Mail_Ex();
// 仮会員が有効の場合
if (CUSTOMER_CONFIRM_MAIL == true and $arrCustomerData['status'] == 1) {
$subject = $objHelperMail->sfMakeSubject(t('c_Confirmation of member registration_01'), $objMailText);
$toCustomerMail = $objMailText->fetch('mail_templates/customer_mail.tpl');
} else {
$subject = $objHelperMail->sfMakeSubject(t('c_Completion of member registration_01'), $objMailText);
$toCustomerMail = $objMailText->fetch('mail_templates/customer_regist_mail.tpl');
}
$objMail = new SC_SendMail_Ex();
$objMail->setItem('', $subject, $toCustomerMail, $CONF['email03'], $CONF['shop_name'], $CONF['email03'], $CONF['email04'], $CONF['email04'], $CONF['email01']);
// 宛先の設定
if ($is_mobile) {
$to_addr = $arrCustomerData['email_mobile'];
} else {
$to_addr = $arrCustomerData['email'];
}
$objMail->setTo($to_addr, t('f_NAME_FULL_SIR_01', array('T_ARG1' => $arrCustomerData['name01'], 'T_ARG2' => $arrCustomerData['name02'])));
$objMail->sendMail();
return true;
}