Ignore:
Timestamp:
2010/09/29 18:03:38 (14 years ago)
Author:
nanasess
bzr:base-revision:
ohkouchi@loop-az.jp-20100927103023-gxi8k3mun5ajq1th
bzr:committer:
Kentaro Ohkouchi <ohkouchi@loop-az.jp>
bzr:file-ids:

data/Smarty/templates/default/cart/index.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fcart%2Findex.tpl
data/Smarty/templates/default/detail.tpl 15747@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fdetail.tpl
data/Smarty/templates/default/list.tpl 15747@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Flist.tpl
data/Smarty/templates/default/shopping/confirm.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fshopping%2Fconfirm.tpl
data/class/SC_CartSession.php 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2FSC_CartSession.php
data/class/helper/SC_Helper_DB.php 15176@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fhelper%2FSC_Helper_DB.php
data/class/pages/cart/LC_Page_Cart.php 15179@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fcart%2FLC_Page_Cart.php
data/class/pages/products/LC_Page_Products_Detail.php 15154@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fproducts%2FLC_Page_Products_Detail.php
data/class/pages/shopping/LC_Page_Shopping_Confirm.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping_Confirm.php
bzr:mapping-version:
v4
bzr:repository-uuid:
1e3b908f-19a9-db11-a64c-001125224ba8
bzr:revision-id:
ohkouchi@loop-az.jp-20100929090334-re3rzc4b55n2u27e
bzr:revno:
2313
bzr:revprop:branch-nick:
branches/version-2_5-dev
bzr:root:
branches/version-2_5-dev
bzr:timestamp:
2010-09-29 18:03:34.467999935 +0900
bzr:user-agent:
bzr2.2.0+bzr-svn1.0.3
svn:original-date:
2010-09-29T09:03:34.468000Z
Message:

商品種別によってカートを分ける(#823)

  • dtb_products_class.down を使用した暫定的な対応
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/class/helper/SC_Helper_DB.php

    r18829 r18830  
    245245     * @return LC_Page 集計処理後のページクラスインスタンス 
    246246     */ 
    247     function sfTotalCart(&$objPage, $objCartSess, $dummy1 = null) { 
    248  
    249         // 規格名一覧 
    250         $arrClassName = $this->sfGetIDValueList("dtb_class", "class_id", "name"); 
    251         // 規格分類名一覧 
    252         $arrClassCatName = $this->sfGetIDValueList("dtb_classcategory", "classcategory_id", "name"); 
    253  
    254         $objPage->tpl_total_pretax = 0;     // 費用合計(税込み) 
    255         $objPage->tpl_total_tax = 0;        // 消費税合計 
    256         $objPage->tpl_total_point = 0;      // ポイント合計 
     247    function sfTotalCart(&$objPage, $objCartSess, $dummy1 = null, $key = "") { 
     248 
     249        $objPage->tpl_total_pretax[$key] = 0;     // 費用合計(税込み) 
     250        $objPage->tpl_total_tax[$key] = 0;        // 消費税合計 
     251        $objPage->tpl_total_point[$key] = 0;      // ポイント合計 
    257252 
    258253        $objProduct = new SC_Product(); 
     
    298293                $arrQuantityInfo_by_product[$product_id]['name'] = $arrData['name']; 
    299294 
    300                 $objPage->arrProductsClass[$cnt] = $arrData; 
    301                 $objPage->arrProductsClass[$cnt]['quantity'] = $quantity; 
    302                 $objPage->arrProductsClass[$cnt]['cart_no'] = $arrCart['cart_no']; 
    303                 $objPage->arrProductsClass[$cnt]['class_name1'] = 
     295                $objPage->arrProductsClass[$cnt][$key] = $arrData; 
     296                $objPage->arrProductsClass[$cnt]['quantity'][$key] = $quantity; 
     297                $objPage->arrProductsClass[$cnt]['cart_no'][$key] = $arrCart['cart_no']; 
     298                $objPage->arrProductsClass[$cnt]['class_name1'][$key] = 
    304299                    isset($arrData['class_name1']) 
    305300                        ? $arrData['class_name1'] : ""; 
    306301 
    307                 $objPage->arrProductsClass[$cnt]['class_name2'] = 
     302                $objPage->arrProductsClass[$cnt]['class_name2'][$key] = 
    308303                    isset($arrData['class_name2']) 
    309304                        ? $arrData['class_name2'] : ""; 
    310305 
    311                 $objPage->arrProductsClass[$cnt]['classcategory_name1'] = $arrData['name1']; 
    312  
    313                 $objPage->arrProductsClass[$cnt]['classcategory_name2'] = $arrData['name2']; 
     306                $objPage->arrProductsClass[$cnt]['classcategory_name1'][$key] = $arrData['name1']; 
     307 
     308                $objPage->arrProductsClass[$cnt]['classcategory_name2'][$key] = $arrData['name2']; 
    314309                // 価格の登録 
    315310                $objCartSess->setProductValue($arrCart['id'], 'price', $arrData['price02']); 
    316                 $objPage->arrProductsClass[$cnt]['uniq_price'] = $arrData['price02']; 
     311                $objPage->arrProductsClass[$cnt]['uniq_price'][$key] = $arrData['price02']; 
    317312                // ポイント付与率の登録 
    318313                if (USE_POINT !== false) { 
     
    320315                } 
    321316                // 商品ごとの合計金額 
    322                 $objPage->arrProductsClass[$cnt]['total_pretax'] = $objCartSess->getProductTotal($arrCart['id']); 
     317                $objPage->arrProductsClass[$cnt]['total_pretax'][$key] = $objCartSess->getProductTotal($arrCart['id']); 
    323318                // 送料の合計を計算する 
    324                 $objPage->tpl_total_deliv_fee+= ($arrData['deliv_fee'] * $arrCart['quantity']); 
     319                $objPage->tpl_total_deliv_fee[$key] += ($arrData['deliv_fee'] * $arrCart['quantity']); 
    325320                $cnt++; 
    326321            } else { // DBに商品が見つからない場合、 
     
    335330                $objPage->tpl_error = "※「{$quantityInfo['name']}」は数量「{$quantityInfo['sale_limit']}」以下に販売制限しております。一度にこれ以上の購入はできません。\n"; 
    336331                // 販売制限に引っかかった商品をマークする 
    337                 foreach (array_keys($objPage->arrProductsClass) as $key) { 
    338                     $ProductsClass =& $objPage->arrProductsClass[$key]; 
     332                foreach (array_keys($objPage->arrProductsClass) as $k) { 
     333                    $ProductsClass =& $objPage->arrProductsClass[$k]; 
    339334                    if ($ProductsClass['product_id'] == $product_id) { 
    340335                        $ProductsClass['error'] = true; 
     
    345340 
    346341        // 全商品合計金額(税込み) 
    347         $objPage->tpl_total_pretax = $objCartSess->getAllProductsTotal(); 
     342        $objPage->tpl_total_pretax[$key] = $objCartSess->getAllProductsTotal(); 
    348343        // 全商品合計消費税 
    349         $objPage->tpl_total_tax = $objCartSess->getAllProductsTax(); 
     344        $objPage->tpl_total_tax[$key] = $objCartSess->getAllProductsTax(); 
    350345        // 全商品合計ポイント 
    351346        if (USE_POINT !== false) { 
    352             $objPage->tpl_total_point = $objCartSess->getAllProductsPoint(); 
     347            $objPage->tpl_total_point[$key] = $objCartSess->getAllProductsPoint(); 
    353348        } 
    354349 
     
    14471442     * @return array 最終計算後の配列 
    14481443     */ 
    1449     function sfTotalConfirm($arrData, &$objPage, &$objCartSess, $dummy1 = null, $objCustomer = "") { 
     1444    function sfTotalConfirm($arrData, &$objPage, &$objCartSess, $dummy1 = null, $objCustomer = "", $key = "") { 
    14501445        // 店舗基本情報を取得する 
    14511446        $arrInfo = SC_Helper_DB_Ex::sf_getBasisData(); 
     
    14591454 
    14601455        // 税金の取得 
    1461         $arrData['tax'] = $objPage->tpl_total_tax; 
     1456        $arrData['tax'] = $objPage->tpl_total_tax[$key]; 
    14621457        // 小計の取得 
    1463         $arrData['subtotal'] = $objPage->tpl_total_pretax; 
     1458        $arrData['subtotal'] = $objPage->tpl_total_pretax[$key]; 
    14641459 
    14651460        // 合計送料の取得 
     
    15021497 
    15031498        // 合計の計算 
    1504         $arrData['total'] = $objPage->tpl_total_pretax; // 商品合計 
     1499        $arrData['total'] = $objPage->tpl_total_pretax[$key]; // 商品合計 
    15051500        $arrData['total']+= $arrData['deliv_fee'];      // 送料 
    15061501        $arrData['total']+= $arrData['charge'];         // 手数料 
     
    15091504        // 加算ポイントの計算 
    15101505        if (USE_POINT !== false) { 
    1511             $arrData['add_point'] = SC_Helper_DB_Ex::sfGetAddPoint($objPage->tpl_total_point, $arrData['use_point']); 
     1506            $arrData['add_point'] = SC_Helper_DB_Ex::sfGetAddPoint($objPage->tpl_total_point[$key], $arrData['use_point']); 
    15121507 
    15131508            if($objCustomer != "") { 
Note: See TracChangeset for help on using the changeset viewer.