Changeset 17178


Ignore:
Timestamp:
2008/03/24 00:28:34 (14 years ago)
Author:
kishida
Message:

商品詳細、商品コードをキャッシュするようにする

Location:
branches/sol/dev02/data/class
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/sol/dev02/data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php

    r16741 r17178  
    335335        $where = "product_id = ?"; 
    336336        $objQuery->delete("dtb_products_class", $where, array($product_id)); 
    337  
     337        // 在庫の削除 
     338        $objQuery->delete("dtb_stock", $where, array($product_id)); 
     339         
    338340        $cnt = 1; 
    339341        // すべての規格を登録する。 
     
    353355                // INSERTの実行 
    354356                $objQuery->insert("dtb_products_class", $sqlval); 
     357                 
     358                // 在庫テーブルを作成する 
     359                $where = ''; 
     360                $stock_where = array(); 
     361                $stock_sqlval = array(); 
     362                $where = 'product_id = ? AND classcategory_id1 = ? AND classcategory_id2 = ?'; 
     363                $tmp_product_class_id = $objQuery->select('product_class_id', 'dtb_products_class', $where, array($product_id, $sqlval['classcategory_id1'], $sqlval['classcategory_id2'])); 
     364                 
     365                $stock_sqlval['product_class_id'] = $tmp_product_class_id[0]['product_class_id']; 
     366                $stock_sqlval['product_id'] = $product_id; 
     367                $stock_sqlval['stock'] = $arrList["stock"]; 
     368                $objQuery->insert("dtb_stock", $stock_sqlval); 
     369                 
    355370            } 
    356371            $cnt++; 
  • branches/sol/dev02/data/class/pages/products/LC_Page_Products_List.php

    r17168 r17178  
    5656        parent::init(); 
    5757 
    58         $masterData = new SC_DB_MasterData_Ex(); 
    59         $this->arrSTATUS = $masterData->getMasterData("mtb_status"); 
    60         $this->arrSTATUS_IMAGE = $masterData->getMasterData("mtb_status_image"); 
    61         $this->arrDELIVERYDATE = $masterData->getMasterData("mtb_delivery_date"); 
    62         $this->arrPRODUCTLISTMAX = $masterData->getMasterData("mtb_product_list_max"); 
     58        $this->masterData = new SC_DB_MasterData_Ex(); 
     59        $this->arrSTATUS = $this->masterData->getMasterData("mtb_status"); 
     60        $this->arrSTATUS_IMAGE = $this->masterData->getMasterData("mtb_status_image"); 
     61        $this->arrDELIVERYDATE = $this->masterData->getMasterData("mtb_delivery_date"); 
     62        $this->arrPRODUCTLISTMAX = $this->masterData->getMasterData("mtb_product_list_max"); 
    6363 
    6464        $this->tpl_class_name1 = array(); 
     
    8989 
    9090        // GETのカテゴリIDを元に正しいカテゴリIDを取得する。 
    91         $arrCategory_id = $objDb->sfGetCategoryId("", $_GET['category_id']); 
    92  
     91        // キャッシュがあればキャッシュから元のカテゴリーIDを取得する 
     92        $arrCategory_id = $this->masterData->getMasterDataFlg("product_categoryid_".$_GET['category_id']); 
     93        if($arrCategory_id === false){ 
     94            $arrCategory_id = $objDb->sfGetCategoryId("", $_GET['category_id']); 
     95            // カテゴリIDをキャッシュする 
     96            $this->masterData->createCache("product_categoryid_".$_GET['category_id'], $arrCategory_id); 
     97        } 
     98         
     99         
    93100        if (!isset($_GET['mode'])) $_GET['mode'] = ""; 
    94101        if (!isset($_GET['name'])) $_GET['name'] = ""; 
  • branches/sol/dev02/data/class/util/SC_Utils.php

    r17121 r17178  
    763763            $where = "product_id = ?"; 
    764764            $objQuery->delete("dtb_products_class", $where, array($product_id)); 
    765  
     765            // 在庫テーブルの削除 
     766            $objQuery->delete("dtb_stock", $where, array($product_id)); 
     767             
    766768            // 配列の添字を定義 
    767769            $checkArray = array("product_code", "stock", "stock_unlimited", "price01", "price02"); 
     
    782784                $sqlval['creator_id'] = '0'; 
    783785            } 
    784  
     786             
    785787            // INSERTの実行 
    786788            $objQuery->insert("dtb_products_class", $sqlval); 
     789             
     790             
     791            // 在庫テーブルを作成する 
     792            $where = ''; 
     793            $stock_where = array(); 
     794            $stock_sqlval = array(); 
     795            $where = 'product_id = ? AND classcategory_id1 = 0 AND classcategory_id2 = 0'; 
     796            $tmp_product_class_id = $objQuery->select('product_class_id', 'dtb_products_class', $where, array($product_id)); 
     797             
     798            $stock_sqlval['product_class_id'] = $tmp_product_class_id[0]['product_class_id']; 
     799            $stock_sqlval['product_id'] = $product_id; 
     800            $stock_sqlval['stock'] = $arrList["stock"]; 
     801            $objQuery->insert("dtb_stock", $stock_sqlval); 
    787802        } 
    788803    } 
Note: See TracChangeset for help on using the changeset viewer.