Changeset 22738


Ignore:
Timestamp:
2013/03/22 00:18:29 (8 years ago)
Author:
Seasoft
Message:

#2043 (typo修正・ソース整形・ソースコメントの改善 for 2.13.0)
#2044 (無駄な処理を改善する for 2.13.0)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_13-dev/data/class/helper/SC_Helper_CSV.php

    r22567 r22738  
    8585 
    8686        // TODO: 固有処理 なんかエレガントな処理にしたい 
    87         if ($csv_id == '1') { 
    88             //商品の場合 
     87        // 商品の場合 
     88        if ($csv_id == 1) { 
    8989            $objProduct = new SC_Product_Ex(); 
    9090            // このWhereを足さないと無効な規格も出力される。現行仕様と合わせる為追加。 
    9191            $inner_where = 'dtb_products_class.del_flg = 0'; 
    92             $sql = $objQuery->getSql($cols, $objProduct->prdclsSQL($inner_where),$where); 
    93         } else if ($csv_id == '2') { 
     92            $from = $objProduct->prdclsSQL($inner_where); 
     93            $sql = $objQuery->getSql($cols, $from, $where); 
     94        } 
     95        // 商品以外の場合 
     96        else { 
    9497            // 会員の場合 
    95             $sql = 'SELECT ' . $cols . ' FROM dtb_customer ' . $where; 
    96         } else if ($csv_id == '3') { 
     98            if ($csv_id == 2) { 
     99                $from = 'dtb_customer'; 
     100            } 
    97101            // 注文の場合 
    98             $sql = 'SELECT ' . $cols . ' FROM dtb_order ' . $where; 
    99         } else if ($csv_id == '4') { 
     102            else if ($csv_id == 3) { 
     103                $from = 'dtb_order'; 
     104            } 
    100105            // レビューの場合 
    101             $sql = 'SELECT ' . $cols . ' FROM dtb_review AS A INNER JOIN dtb_products AS B on A.product_id = B.product_id ' . $where; 
    102         } else if ($csv_id == '5') { 
     106            else if ($csv_id == 4) { 
     107                $from = 'dtb_review AS A INNER JOIN dtb_products AS B on A.product_id = B.product_id'; 
     108            } 
    103109            // カテゴリの場合 
    104             $sql = 'SELECT ' . $cols . ' FROM dtb_category ' . $where; 
    105         } 
    106         // 「getSqlを使っているcsv_id=1」以外で「order指定」がある場合は末尾に付与 
    107         // 全csv_idでgetSqlを使用して生成するよう統一する場合は当メソッドの呼び元も要修正 
    108         $sql = ($csv_id != '1' && strlen($order) >= 1) ? $sql.' order by '.$order : $sql; 
     110            else if ($csv_id == 5) { 
     111                $from = 'dtb_category'; 
     112            } 
     113 
     114            $sql = "SELECT $cols FROM $from $where"; 
     115            // 「getSqlを使っているcsv_id=1」以外で「order指定」がある場合は末尾に付与 
     116            // 全csv_idでgetSqlを使用して生成するよう統一する場合は当メソッドの呼び元も要修正 
     117            if ($csv_id != 1 && strlen($order) >= 1) { 
     118                $sql .= " ORDER BY $order"; 
     119            } 
     120        } 
    109121        // 固有処理ここまで 
     122 
    110123        return $this->sfDownloadCsvFromSql($sql, $arrVal, $this->arrSubnavi[$csv_id], $arrOutput['disp_name'], $is_download); 
    111124    } 
Note: See TracChangeset for help on using the changeset viewer.