当前位置: 首页>>代码示例>>PHP>>正文


PHP SC_Utils_Ex::sfPrePoint方法代码示例

本文整理汇总了PHP中SC_Utils_Ex::sfPrePoint方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Utils_Ex::sfPrePoint方法的具体用法?PHP SC_Utils_Ex::sfPrePoint怎么用?PHP SC_Utils_Ex::sfPrePoint使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SC_Utils_Ex的用法示例。


在下文中一共展示了SC_Utils_Ex::sfPrePoint方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: setProductsClassByProductIds

 /**
  * 商品IDに紐づく商品規格を自分自身に設定する.
  *
  * 引数の商品IDの配列に紐づく商品規格を取得し, 自分自身のフィールドに
  * 設定する.
  *
  * @param array $arrProductId 商品ID の配列
  * @param boolean $has_deleted 削除された商品規格も含む場合 true; 初期値 false
  * @return void
  */
 function setProductsClassByProductIds($arrProductId, $has_deleted = false)
 {
     foreach ($arrProductId as $productId) {
         $arrProductClasses = $this->getProductsClassFullByProductId($productId, $has_deleted);
         $classCats1 = array();
         $classCats1['__unselected'] = t('c_Please make a selection_01');
         // 規格1クラス名
         $this->className1[$productId] = isset($arrProductClasses[0]['class_name1']) ? $arrProductClasses[0]['class_name1'] : '';
         // 規格2クラス名
         $this->className2[$productId] = isset($arrProductClasses[0]['class_name2']) ? $arrProductClasses[0]['class_name2'] : '';
         // 規格1が設定されている
         $this->classCat1_find[$productId] = $arrProductClasses[0]['classcategory_id1'] > 0;
         // 要変更ただし、他にも改修が必要となる
         // 規格2が設定されている
         $this->classCat2_find[$productId] = $arrProductClasses[0]['classcategory_id2'] > 0;
         // 要変更ただし、他にも改修が必要となる
         $this->stock_find[$productId] = false;
         $classCategories = array();
         $classCategories['__unselected']['__unselected']['name'] = t('c_Please make a selection_01');
         $classCategories['__unselected']['__unselected']['product_class_id'] = $arrProductClasses[0]['product_class_id'];
         // 商品種別
         $classCategories['__unselected']['__unselected']['product_type'] = $arrProductClasses[0]['product_type_id'];
         $this->product_class_id[$productId] = $arrProductClasses[0]['product_class_id'];
         // 商品種別
         $this->product_type[$productId] = $arrProductClasses[0]['product_type_id'];
         foreach ($arrProductClasses as $arrProductsClass) {
             $arrClassCats2 = array();
             $classcategory_id1 = $arrProductsClass['classcategory_id1'];
             $classcategory_id2 = $arrProductsClass['classcategory_id2'];
             // 在庫
             $stock_find_class = $arrProductsClass['stock_unlimited'] || $arrProductsClass['stock'] > 0;
             $arrClassCats2['classcategory_id2'] = $classcategory_id2;
             $arrClassCats2['name'] = $arrProductsClass['classcategory_name2'] . ($stock_find_class ? '' : ' ' . t('c_(Sold out)_01'));
             $arrClassCats2['stock_find'] = $stock_find_class;
             if ($stock_find_class) {
                 $this->stock_find[$productId] = true;
             }
             if (!in_array($classcat_id1, $classCats1)) {
                 $classCats1[$classcategory_id1] = $arrProductsClass['classcategory_name1'] . ($classcategory_id2 == 0 && !$stock_find_class ? ' ' . t('c_(Sold out)_01') : '');
             }
             // 価格
             $arrClassCats2['price01'] = strlen($arrProductsClass['price01']) ? number_format(SC_Helper_DB_Ex::sfCalcIncTax($arrProductsClass['price01'])) : '';
             $arrClassCats2['price02'] = strlen($arrProductsClass['price02']) ? number_format(SC_Helper_DB_Ex::sfCalcIncTax($arrProductsClass['price02'])) : '';
             // ポイント
             $arrClassCats2['point'] = number_format(SC_Utils_Ex::sfPrePoint($arrProductsClass['price02'], $arrProductsClass['point_rate']));
             // 商品コード
             $arrClassCats2['product_code'] = $arrProductsClass['product_code'];
             // 商品規格ID
             $arrClassCats2['product_class_id'] = $arrProductsClass['product_class_id'];
             // 商品種別
             $arrClassCats2['product_type'] = $arrProductsClass['product_type_id'];
             // #929(GC8 規格のプルダウン順序表示不具合)対応のため、2次キーは「#」を前置
             if (!$this->classCat1_find[$productId]) {
                 $classcategory_id1 = '__unselected2';
             }
             $classCategories[$classcategory_id1]['#'] = array('classcategory_id2' => '', 'name' => t('c_Please make a selection_01'));
             $classCategories[$classcategory_id1]['#' . $classcategory_id2] = $arrClassCats2;
         }
         $this->classCategories[$productId] = $classCategories;
         // 規格1
         $this->classCats1[$productId] = $classCats1;
     }
 }
开发者ID:Rise-Up-Cambodia,项目名称:Rise-Up,代码行数:73,代码来源:SC_Product.php

示例2: lfGetProductsAllData

 /**
  * lfGetProductsAllData.
  *
  * @return array $arrProduct 商品情報の配列を返す
  */
 function lfGetProductsAllData()
 {
     $objQuery = SC_Query_Ex::getSingletonInstance();
     //商品情報を取得
     $arrProduct = $this->lfGetProductsAllclass($objQuery);
     // 値の整形
     foreach ($arrProduct as $key => $val) {
         // 画像ファイルのURLセット
         if (file_exists(IMAGE_SAVE_REALDIR . $arrProduct[$key]['main_list_image'])) {
             $dir = IMAGE_SAVE_RSS_URL;
         } else {
             $dir = IMAGE_TEMP_RSS_URL;
         }
         $arrProduct[$key]['main_list_image'] = $dir . $arrProduct[$key]['main_list_image'];
         if (file_exists(IMAGE_SAVE_REALDIR . $arrProduct[$key]['main_image'])) {
             $dir = IMAGE_SAVE_RSS_URL;
         } else {
             $dir = IMAGE_TEMP_RSS_URL;
         }
         $arrProduct[$key]['main_image'] = $dir . $arrProduct[$key]['main_image'];
         if (file_exists(IMAGE_SAVE_REALDIR . $arrProduct[$key]['main_large_image'])) {
             $dir = IMAGE_SAVE_RSS_URL;
         } else {
             $dir = IMAGE_TEMP_RSS_URL;
         }
         $arrProduct[$key]['main_large_image'] = $dir . $arrProduct[$key]['main_large_image'];
         // ポイント計算
         $arrProduct[$key]['point_max'] = SC_Utils_Ex::sfPrePoint($arrProduct[$key]['price02_max'], $arrProduct[$key]['point_rate']);
         $arrProduct[$key]['point_min'] = SC_Utils_Ex::sfPrePoint($arrProduct[$key]['price02_min'], $arrProduct[$key]['point_rate']);
     }
     return $arrProduct;
 }
开发者ID:Rise-Up-Cambodia,项目名称:Rise-Up,代码行数:37,代码来源:LC_Page_Rss_Products.php

示例3: is_array

    echo '';
    if ((is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_min']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) == (is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_max']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp))) {
        echo '';
        echo is_array($_tmp = is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_min']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('sfPrePoint', true, $_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) : SC_Utils_Ex::sfPrePoint($_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp))) ? $this->_run_mod_handler('n2s', true, $_tmp) : smarty_modifier_n2s($_tmp);
        echo '';
    } else {
        echo '';
        if ((is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_min']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('sfPrePoint', true, $_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) : SC_Utils_Ex::sfPrePoint($_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp))) == (is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_max']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('sfPrePoint', true, $_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) : SC_Utils_Ex::sfPrePoint($_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)))) {
            echo '';
            echo is_array($_tmp = is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_min']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('sfPrePoint', true, $_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) : SC_Utils_Ex::sfPrePoint($_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp))) ? $this->_run_mod_handler('n2s', true, $_tmp) : smarty_modifier_n2s($_tmp);
            echo '';
        } else {
            echo '';
            echo is_array($_tmp = is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_min']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('sfPrePoint', true, $_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) : SC_Utils_Ex::sfPrePoint($_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp))) ? $this->_run_mod_handler('n2s', true, $_tmp) : smarty_modifier_n2s($_tmp);
            echo '~';
            echo is_array($_tmp = is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['price02_max']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('sfPrePoint', true, $_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) : SC_Utils_Ex::sfPrePoint($_tmp, is_array($_tmp = $this->_tpl_vars['arrProduct']['point_rate']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp))) ? $this->_run_mod_handler('n2s', true, $_tmp) : smarty_modifier_n2s($_tmp);
            echo '';
        }
        echo '';
    }
    echo '';
    ?>
</span><span id="point_dynamic"></span>
                        Pt
                    </div>
                <?php 
}
?>

                                <?php 
if ((is_array($_tmp = is_array($_tmp = $this->_tpl_vars['arrProduct']['maker_name']) ? $this->_run_mod_handler('script_escape', true, $_tmp) : smarty_modifier_script_escape($_tmp)) ? $this->_run_mod_handler('strlen', true, $_tmp) : strlen($_tmp)) >= 1) {
开发者ID:geany-y,项目名称:cube2,代码行数:31,代码来源:%%D7^D78^D78E6C58%%detail.tpl.php

示例4: lfCheckError

 /**
  * 入力内容のチェックを行う.
  *
  * @param SC_FormParam $objFormParam SC_FormParam インスタンス
  * @return array エラーメッセージの配列
  */
 function lfCheckError(&$objFormParam)
 {
     $objProduct = new SC_Product_Ex();
     $arrErr = $objFormParam->checkError();
     if (!SC_Utils_Ex::isBlank($objErr->arrErr)) {
         return $arrErr;
     }
     $arrValues = $objFormParam->getHashArray();
     // 商品の種類数
     $max = count($arrValues['quantity']);
     $subtotal = 0;
     $totalpoint = 0;
     $totaltax = 0;
     for ($i = 0; $i < $max; $i++) {
         // 小計の計算
         $subtotal += SC_Helper_DB_Ex::sfCalcIncTax($arrValues['price'][$i]) * $arrValues['quantity'][$i];
         // 小計の計算
         $totaltax += SC_Helper_DB_Ex::sfTax($arrValues['price'][$i]) * $arrValues['quantity'][$i];
         // 加算ポイントの計算
         $totalpoint += SC_Utils_Ex::sfPrePoint($arrValues['price'][$i], $arrValues['point_rate'][$i]) * $arrValues['quantity'][$i];
         // 在庫数のチェック
         $arrProduct = $objProduct->getDetailAndProductsClass($arrValues['product_class_id'][$i]);
         // 編集前の値と比較するため受注詳細を取得
         $objPurchase = new SC_Helper_Purchase_Ex();
         $arrOrderDetail = SC_Utils_Ex::sfSwapArray($objPurchase->getOrderDetail($objFormParam->getValue('order_id'), false));
         if ($arrProduct['stock_unlimited'] != '1' && $arrProduct['stock'] < $arrValues['quantity'][$i] - $arrOrderDetail['quantity'][$i]) {
             $class_name1 = $arrValues['classcategory_name1'][$i];
             $class_name1 = SC_Utils_Ex::isBlank($class_name1) ? 'なし' : $class_name1;
             $class_name2 = $arrValues['classcategory_name2'][$i];
             $class_name2 = SC_Utils_Ex::isBlank($class_name2) ? 'なし' : $class_name2;
             $arrErr['quantity'][$i] .= $arrValues['product_name'][$i] . '/(' . $class_name1 . ')/(' . $class_name2 . ') の在庫が不足しています。 設定できる数量は「' . ($arrOrderDetail['quantity'][$i] + $arrProduct['stock']) . '」までです。<br />';
         }
     }
     // 消費税
     $arrValues['tax'] = $totaltax;
     // 小計
     $arrValues['subtotal'] = $subtotal;
     // 合計
     $arrValues['total'] = $subtotal - $arrValues['discount'] + $arrValues['deliv_fee'] + $arrValues['charge'];
     // お支払い合計
     $arrValues['payment_total'] = $arrValues['total'] - $arrValues['use_point'] * POINT_VALUE;
     // 加算ポイント
     $arrValues['add_point'] = SC_Helper_DB_Ex::sfGetAddPoint($totalpoint, $arrValues['use_point']);
     // 最終保持ポイント
     $arrValues['total_point'] = $objFormParam->getValue('point') - $arrValues['use_point'];
     if ($arrValues['total'] < 0) {
         $arrErr['total'] = '合計額がマイナス表示にならないように調整して下さい。<br />';
     }
     if ($arrValues['payment_total'] < 0) {
         $arrErr['payment_total'] = 'お支払い合計額がマイナス表示にならないように調整して下さい。<br />';
     }
     if ($arrValues['total_point'] < 0) {
         $arrErr['use_point'] = '最終保持ポイントがマイナス表示にならないように調整して下さい。<br />';
     }
     $objFormParam->setParam($arrValues);
     return $arrErr;
 }
开发者ID:snguyenone,项目名称:ec-cube-ja-2.12.6,代码行数:63,代码来源:LC_Page_Admin_Order_Edit.php

示例5: getAllProductsPoint

 public function getAllProductsPoint($productTypeId)
 {
     // ポイント合計
     $total = 0;
     if (USE_POINT !== false) {
         $max = $this->getMax($productTypeId);
         for ($i = 0; $i <= $max; $i++) {
             $price = $this->cartSession[$productTypeId][$i]['price'];
             $quantity = $this->cartSession[$productTypeId][$i]['quantity'];
             if (!isset($this->cartSession[$productTypeId][$i]['point_rate'])) {
                 $this->cartSession[$productTypeId][$i]['point_rate'] = '';
             }
             $point_rate = $this->cartSession[$productTypeId][$i]['point_rate'];
             if (!isset($this->cartSession[$productTypeId][$i]['id'][0])) {
                 $this->cartSession[$productTypeId][$i]['id'][0] = '';
             }
             $point = SC_Utils_Ex::sfPrePoint($price, $point_rate);
             $total += $point * $quantity;
         }
     }
     return $total;
 }
开发者ID:ryoogata,项目名称:eccube-SQLAzureSupport-plugin,代码行数:22,代码来源:SC_CartSession.php

示例6: lfCheckError

 /**
  * 入力内容のチェックを行う.
  *
  * @param  SC_FormParam $objFormParam SC_FormParam インスタンス
  * @return array        エラーメッセージの配列
  */
 public function lfCheckError(&$objFormParam)
 {
     $objProduct = new SC_Product_Ex();
     $arrValues = $objFormParam->getHashArray();
     $arrErr = array();
     $arrErrTemp = $objFormParam->checkError();
     $arrErrDate = array();
     foreach ($arrValues['shipping_date_year'] as $key_index => $year) {
         $month = $arrValues['shipping_date_month'][$key_index];
         $day = $arrValues['shipping_date_day'][$key_index];
         $objError = new SC_CheckError_Ex(array('shipping_date_year' => $year, 'shipping_date_month' => $month, 'shipping_date_day' => $day));
         $objError->doFunc(array('お届け日', 'shipping_date_year', 'shipping_date_month', 'shipping_date_day'), array('CHECK_DATE'));
         $arrErrDate['shipping_date_year'][$key_index] = $objError->arrErr['shipping_date_year'];
     }
     $arrErrTemp = array_merge($arrErrTemp, $arrErrDate);
     // 複数項目チェック
     $year = $arrValues['order_birth_year'];
     $month = $arrValues['order_birth_month'];
     $day = $arrValues['order_birth_day'];
     $objError = new SC_CheckError_Ex(array('order_birth_year' => $year, 'order_birth_month' => $month, 'order_birth_day' => $day));
     $objError->doFunc(array('生年月日', 'order_birth_year', 'order_birth_month', 'order_birth_day'), array('CHECK_BIRTHDAY'));
     $arrErrTemp['order_birth_year'] = $objError->arrErr['order_birth_year'];
     // 商品の種類数
     $max = count($arrValues['quantity']);
     $subtotal = 0;
     $totalpoint = 0;
     $totaltax = 0;
     for ($i = 0; $i < $max; $i++) {
         // 小計の計算
         $subtotal += SC_Helper_DB_Ex::sfCalcIncTax($arrValues['price'][$i], $arrValues['tax_rate'][$i], $arrValues['tax_rule'][$i]) * $arrValues['quantity'][$i];
         // 小計の計算
         $totaltax += SC_Utils_Ex::sfTax($arrValues['price'][$i], $arrValues['tax_rate'][$i], $arrValues['tax_rule'][$i]) * $arrValues['quantity'][$i];
         // 加算ポイントの計算
         $totalpoint += SC_Utils_Ex::sfPrePoint($arrValues['price'][$i], $arrValues['point_rate'][$i]) * $arrValues['quantity'][$i];
         // 在庫数のチェック
         $arrProduct = $objProduct->getDetailAndProductsClass($arrValues['product_class_id'][$i]);
         // 編集前の値と比較するため受注詳細を取得
         $objPurchase = new SC_Helper_Purchase_Ex();
         $arrOrderDetail = SC_Utils_Ex::sfSwapArray($objPurchase->getOrderDetail($objFormParam->getValue('order_id'), false));
         if ($arrProduct['stock_unlimited'] != '1' && $arrProduct['stock'] < $arrValues['quantity'][$i] - $arrOrderDetail['quantity'][$i]) {
             $class_name1 = $arrValues['classcategory_name1'][$i];
             $class_name1 = SC_Utils_Ex::isBlank($class_name1) ? 'なし' : $class_name1;
             $class_name2 = $arrValues['classcategory_name2'][$i];
             $class_name2 = SC_Utils_Ex::isBlank($class_name2) ? 'なし' : $class_name2;
             $arrErr['quantity'][$i] .= $arrValues['product_name'][$i] . '/(' . $class_name1 . ')/(' . $class_name2 . ') の在庫が不足しています。 設定できる数量は「' . ($arrOrderDetail['quantity'][$i] + $arrProduct['stock']) . '」までです。<br />';
         }
     }
     // 消費税
     $arrValues['tax'] = $totaltax;
     // 小計
     $arrValues['subtotal'] = $subtotal;
     // 合計
     $arrValues['total'] = $subtotal - $arrValues['discount'] + $arrValues['deliv_fee'] + $arrValues['charge'];
     // お支払い合計
     $arrValues['payment_total'] = $arrValues['total'] - $arrValues['use_point'] * POINT_VALUE;
     // 加算ポイント
     $arrValues['add_point'] = SC_Helper_DB_Ex::sfGetAddPoint($totalpoint, $arrValues['use_point']) + $arrValues['birth_point'];
     // 最終保持ポイント
     $arrValues['total_point'] = $objFormParam->getValue('point') - $arrValues['use_point'];
     if ($arrValues['total'] < 0) {
         $arrErr['total'] = '合計額がマイナス表示にならないように調整して下さい。<br />';
     }
     if ($arrValues['payment_total'] < 0) {
         $arrErr['payment_total'] = 'お支払い合計額がマイナス表示にならないように調整して下さい。<br />';
     }
     if ($arrValues['total_point'] < 0) {
         $arrErr['use_point'] = '最終保持ポイントがマイナス表示にならないように調整して下さい。<br />';
     }
     $objFormParam->setParam($arrValues);
     $arrErr = array_merge($arrErr, $arrErrTemp);
     return $arrErr;
 }
开发者ID:casan,项目名称:eccube-2_13,代码行数:78,代码来源:LC_Page_Admin_Order_Edit.php

示例7: process

 /**
  * Page のプロセス.
  *
  * @return void
  */
 function process()
 {
     $objQuery = new SC_Query();
     $objView = new SC_SiteView();
     $objSiteInfo = new SC_SiteInfo();
     //店舗情報をセット
     $arrSiteInfo = $objSiteInfo->data;
     //商品IDを取得
     $product_id = $_GET['product_id'];
     $mode = $_GET['mode'];
     if ($product_id != "" and is_numeric($product_id) or $mode == "all") {
         //商品詳細を取得
         $mode == "all" ? $arrProduct = $this->lfGetProductsDetail($objQuery, $mode) : ($arrProduct = $this->lfGetProductsDetail($objQuery, $product_id));
         // 値のセットし直し
         foreach ($arrProduct as $key => $val) {
             //商品価格を税込みに編集
             $arrProduct[$key]["price02"] = SC_Utils_Ex::sfPreTax($arrProduct[$key]["price02"], $arrSiteInfo["tax"], $arrSiteInfo["tax_rule"]);
             // 画像ファイルのURLセット
             file_exists(IMAGE_SAVE_DIR . $arrProduct[$key]["main_list_image"]) ? $dir = IMAGE_SAVE_URL_RSS : ($dir = IMAGE_TEMP_URL_RSS);
             $arrProduct[$key]["main_list_image"] = $dir . $arrProduct[$key]["main_list_image"];
             file_exists(IMAGE_SAVE_DIR . $arrProduct[$key]["main_image"]) ? $dir = IMAGE_SAVE_URL_RSS : ($dir = IMAGE_TEMP_URL_RSS);
             $arrProduct[$key]["main_image"] = $dir . $arrProduct[$key]["main_image"];
             file_exists(IMAGE_SAVE_DIR . $arrProduct[$key]["main_large_image"]) ? $dir = IMAGE_SAVE_URL_RSS : ($dir = IMAGE_TEMP_URL_RSS);
             $arrProduct[$key]["main_large_image"] = $dir . $arrProduct[$key]["main_large_image"];
             // ポイント計算
             $arrProduct[$key]["point"] = SC_Utils_Ex::sfPrePoint($arrProduct[$key]["price02"], $arrProduct[$key]["point_rate"], POINT_RULE, $arrProduct[$key]["product_id"]);
             // 在庫無制限
             $arrProduct[$key]["stock_unlimited"] = $arrProduct[$key]["stock_unlimited"] == 1 ? "在庫無制限" : NULL;
         }
     } elseif ($mode == "list") {
         //商品一覧を取得
         $arrProduct = $objQuery->getall("SELECT product_id, name AS product_name FROM dtb_products");
     } else {
         $arrProduct = $this->lfGetProductsAllclass($objQuery);
         // 値のセットし直し
         foreach ($arrProduct as $key => $val) {
             //商品価格を税込みに編集
             $arrProduct[$key]["price01_max"] = SC_Utils_Ex::sfPreTax($arrProduct[$key]["price01_max"], $arrSiteInfo["tax"], $arrSiteInfo["tax_rule"]);
             $arrProduct[$key]["price01_min"] = SC_Utils_Ex::sfPreTax($arrProduct[$key]["price01_min"], $arrSiteInfo["tax"], $arrSiteInfo["tax_rule"]);
             $arrProduct[$key]["price02_max"] = SC_Utils_Ex::sfPreTax($arrProduct[$key]["price02_max"], $arrSiteInfo["tax"], $arrSiteInfo["tax_rule"]);
             $arrProduct[$key]["price02_min"] = SC_Utils_Ex::sfPreTax($arrProduct[$key]["price02_min"], $arrSiteInfo["tax"], $arrSiteInfo["tax_rule"]);
             // 画像ファイルのURLセット
             file_exists(IMAGE_SAVE_DIR . $arrProduct[$key]["main_list_image"]) ? $dir = IMAGE_SAVE_URL_RSS : ($dir = IMAGE_TEMP_URL_RSS);
             $arrProduct[$key]["main_list_image"] = $dir . $arrProduct[$key]["main_list_image"];
             file_exists(IMAGE_SAVE_DIR . $arrProduct[$key]["main_image"]) ? $dir = IMAGE_SAVE_URL_RSS : ($dir = IMAGE_TEMP_URL_RSS);
             $arrProduct[$key]["main_image"] = $dir . $arrProduct[$key]["main_image"];
             file_exists(IMAGE_SAVE_DIR . $arrProduct[$key]["main_large_image"]) ? $dir = IMAGE_SAVE_URL_RSS : ($dir = IMAGE_TEMP_URL_RSS);
             $arrProduct[$key]["main_large_image"] = $dir . $arrProduct[$key]["main_large_image"];
             // ポイント計算
             $arrProduct[$key]["point_max"] = SC_Utils_Ex::sfPrePoint($arrProduct[$key]["price02_max"], $arrProduct[$key]["point_rate"], POINT_RULE, $arrProduct[$key]["product_id"]);
             $arrProduct[$key]["point_min"] = SC_Utils_Ex::sfPrePoint($arrProduct[$key]["price02_min"], $arrProduct[$key]["point_rate"], POINT_RULE, $arrProduct[$key]["product_id"]);
         }
     }
     //商品情報をセット
     $this->arrProduct = $arrProduct;
     if (is_array(SC_Utils_Ex::sfswaparray($arrProduct))) {
         $this->arrProductKeys = array_keys(SC_Utils_Ex::sfswaparray($arrProduct));
     }
     //店舗情報をセット
     $this->arrSiteInfo = $arrSiteInfo;
     //セットしたデータをテンプレートファイルに出力
     $objView->assignobj($this);
     //キャッシュしない(念のため)
     header("Pragma: no-cache");
     //XMLテキスト(これがないと正常にRSSとして認識してくれないツールがあるため)
     header("Content-type: application/xml");
     DETAIL_P_HTML;
     //画面表示
     $objView->display($this->tpl_mainpage, true);
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:75,代码来源:LC_Page_Rss_Products.php

示例8: lfCheek

 function lfCheek($arrInfo, $mode = "")
 {
     $objDb = new SC_Helper_DB_Ex();
     $arrVal = $this->objFormParam->getHashArray();
     $arrErr = array();
     // 商品の種類数
     $max = count($arrVal['quantity']);
     $subtotal = 0;
     $totalpoint = 0;
     $totaltax = 0;
     for ($i = 0; $i < $max; $i++) {
         // 小計の計算
         $subtotal += SC_Utils_Ex::sfPreTax($arrVal['price'][$i], $arrInfo['tax'], $arrInfo['tax_rule']) * $arrVal['quantity'][$i];
         // 小計の計算
         $totaltax += SC_Utils_Ex::sfTax($arrVal['price'][$i], $arrInfo['tax'], $arrInfo['tax_rule']) * $arrVal['quantity'][$i];
         // 加算ポイントの計算
         $totalpoint += SC_Utils_Ex::sfPrePoint($arrVal['price'][$i], $arrVal['point_rate'][$i]) * $arrVal['quantity'][$i];
     }
     // 消費税
     $arrVal['tax'] = $totaltax;
     // 小計
     $arrVal['subtotal'] = $subtotal;
     // 合計
     $arrVal['total'] = $subtotal - $arrVal['discount'] + $arrVal['deliv_fee'] + $arrVal['charge'];
     // お支払い合計
     $arrVal['payment_total'] = $arrVal['total'] - $arrVal['use_point'] * POINT_VALUE;
     // 加算ポイント
     $arrVal['add_point'] = SC_Utils_Ex::sfGetAddPoint($totalpoint, $arrVal['use_point'], $arrInfo);
     if (strlen($_POST['customer_id']) > 0) {
         list($arrVal['point'], $arrVal['total_point']) = $objDb->sfGetCustomerPointFromCid($_POST['customer_id'], $arrVal['use_point'], $arrVal['add_point']);
     } else {
         list($arrVal['point'], $arrVal['total_point']) = $objDb->sfGetCustomerPoint($_POST['order_id'], $arrVal['use_point'], $arrVal['add_point']);
     }
     if ($arrVal['total'] < 0) {
         $arrErr['total'] = '合計額がマイナス表示にならないように調整して下さい。<br />';
     }
     if ($arrVal['payment_total'] < 0) {
         $arrErr['payment_total'] = 'お支払い合計額がマイナス表示にならないように調整して下さい。<br />';
     }
     //新規追加受注のみ
     if ($mode == "add") {
         if ($arrVal['total_point'] < 0) {
             $arrErr['use_point'] = '最終保持ポイントがマイナス表示にならないように調整して下さい。<br />';
         }
     }
     $this->objFormParam->setParam($arrVal);
     return $arrErr;
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:48,代码来源:LC_Page_Admin_Order_Edit.php

示例9: lfCheckError

 /**
  * 入力内容のチェックを行う.
  *
  * @param SC_FormParam $objFormParam SC_FormParam インスタンス
  * @return array エラーメッセージの配列
  */
 function lfCheckError(&$objFormParam)
 {
     $objProduct = new SC_Product_Ex();
     $arrErr = $objFormParam->checkError();
     if (!SC_Utils_Ex::isBlank($objErr->arrErr)) {
         return $arrErr;
     }
     $arrValues = $objFormParam->getHashArray();
     // 商品の種類数
     $max = count($arrValues['quantity']);
     $subtotal = 0;
     $totalpoint = 0;
     $totaltax = 0;
     for ($i = 0; $i < $max; $i++) {
         // 小計の計算
         $subtotal += SC_Helper_DB_Ex::sfCalcIncTax($arrValues['price'][$i]) * $arrValues['quantity'][$i];
         // 小計の計算
         $totaltax += SC_Helper_DB_Ex::sfTax($arrValues['price'][$i]) * $arrValues['quantity'][$i];
         // 加算ポイントの計算
         $totalpoint += SC_Utils_Ex::sfPrePoint($arrValues['price'][$i], $arrValues['point_rate'][$i]) * $arrValues['quantity'][$i];
         // 在庫数のチェック
         $arrProduct = $objProduct->getDetailAndProductsClass($arrValues['product_class_id'][$i]);
         // 編集前の値と比較するため受注詳細を取得
         $objPurchase = new SC_Helper_Purchase_Ex();
         $arrOrderDetail = SC_Utils_Ex::sfSwapArray($objPurchase->getOrderDetail($objFormParam->getValue('order_id'), false));
         if ($arrProduct['stock_unlimited'] != '1' && $arrProduct['stock'] < $arrValues['quantity'][$i] - $arrOrderDetail['quantity'][$i]) {
             $class_name1 = $arrValues['classcategory_name1'][$i];
             $class_name1 = SC_Utils_Ex::isBlank($class_name1) ? t('c_None_01') : $class_name1;
             $class_name2 = $arrValues['classcategory_name2'][$i];
             $class_name2 = SC_Utils_Ex::isBlank($class_name2) ? t('c_None_01') : $class_name2;
             $arrErr['quantity'][$i] .= t('c_There is an inventory shortage for T_ARG1/(T_ARG2)/(T_ARG3). Up to T_ARG4 can be set for the quantity.<br />_1', array('T_ARG1' => $arrValues['product_name'][$i], 'T_ARG2' => $class_name1, 'T_ARG3' => $class_name2, 'T_ARG4' => $arrOrderDetail['quantity'][$i] + $arrProduct['stock']));
         }
     }
     // 消費税
     $arrValues['tax'] = $totaltax;
     // 小計
     $arrValues['subtotal'] = $subtotal;
     // 合計
     $arrValues['total'] = $subtotal - $arrValues['discount'] + $arrValues['deliv_fee'] + $arrValues['charge'];
     // お支払い合計
     $arrValues['payment_total'] = $arrValues['total'] - $arrValues['use_point'] * POINT_VALUE;
     // 加算ポイント
     $arrValues['add_point'] = SC_Helper_DB_Ex::sfGetAddPoint($totalpoint, $arrValues['use_point']);
     // 最終保持ポイント
     $arrValues['total_point'] = $objFormParam->getValue('point') - $arrValues['use_point'];
     if ($arrValues['total'] < 0) {
         $arrErr['total'] = t('c_Adjust so that the total amount is not a negative number.<br />_01');
     }
     if ($arrValues['payment_total'] < 0) {
         $arrErr['payment_total'] = t('c_Adjust so that a negative number is not displayed for the payment total.<br />_01');
     }
     if ($arrValues['total_point'] < 0) {
         $arrErr['use_point'] = t('c_Adjust the final number of points registered so that it does not become a negative number.<br />_01');
     }
     $objFormParam->setParam($arrValues);
     return $arrErr;
 }
开发者ID:Rise-Up-Cambodia,项目名称:Rise-Up,代码行数:63,代码来源:LC_Page_Admin_Order_Edit.php

示例10: getAllProductsPoint

 function getAllProductsPoint()
 {
     // ポイント合計
     $total = 0;
     $max = $this->getMax();
     for ($i = 0; $i <= $max; $i++) {
         $price = $_SESSION[$this->key][$i]['price'];
         $quantity = $_SESSION[$this->key][$i]['quantity'];
         if (!isset($_SESSION[$this->key][$i]['point_rate'])) {
             $_SESSION[$this->key][$i]['point_rate'] = "";
         }
         $point_rate = $_SESSION[$this->key][$i]['point_rate'];
         if (!isset($_SESSION[$this->key][$i]['id'][0])) {
             $_SESSION[$this->key][$i]['id'][0] = "";
         }
         $id = $_SESSION[$this->key][$i]['id'][0];
         $point = SC_Utils_Ex::sfPrePoint($price, $point_rate, POINT_RULE, $id);
         $total += $point * $quantity;
     }
     return $total;
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:21,代码来源:SC_CartSession.php


注:本文中的SC_Utils_Ex::sfPrePoint方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。