[Svn-src-all:2724] [version-2_12-dev 21623] #1491 配送料金のカスタマイズを行いやすくする の対応

pingpong admin @ mail.ec-cube.net
2012年 3月 9日 (金) 21:14:47 JST


Subversion committed to /home/svn/open 21623
http://svn.ec-cube.net/open_trac/changeset/21623
┌────────────────────────────┐
│更新者 :  pingpong                                     │
│更新日時:  2012-03-09 21:14:46 +0900 (金, 09  3月 2012)│
└────────────────────────────┘

Log:
--------------------------------------------------------
#1491 配送料金のカスタマイズを行いやすくする の対応


Changed:                      [U:修正,A:追加,D:削除]
--------------------------------------------------------
U   branches/version-2_12-dev/data/class/SC_CartSession.php
U   branches/version-2_12-dev/data/class/helper/SC_Helper_DB.php

変更: branches/version-2_12-dev/data/class/SC_CartSession.php
===================================================================
--- branches/version-2_12-dev/data/class/SC_CartSession.php	2012-03-09 08:47:50 UTC (rev 21622)
+++ branches/version-2_12-dev/data/class/SC_CartSession.php	2012-03-09 12:14:46 UTC (rev 21623)
@@ -623,7 +623,6 @@
     function calculate($productTypeId, &$objCustomer, $use_point = 0,
         $deliv_pref = '', $charge = 0, $discount = 0, $deliv_id = 0
     ) {
-        $objDb = new SC_Helper_DB_Ex();
 
         $total_point = $this->getAllProductsPoint($productTypeId);
         $results['tax'] = $this->getAllProductsTax($productTypeId);
@@ -642,7 +641,7 @@
         if (OPTION_DELIV_FEE == 1
             && !SC_Utils_Ex::isBlank($deliv_pref)
             && !SC_Utils_Ex::isBlank($deliv_id)) {
-            $results['deliv_fee'] += $objDb->sfGetDelivFee($deliv_pref, $deliv_id);
+            $results['deliv_fee'] += $this->sfGetDelivFee($deliv_pref, $deliv_id);
         }
 
         // 送料無料チェック
@@ -739,4 +738,33 @@
     function hasProductType($product_type_id) {
         return in_array($product_type_id, $this->getKeys());
     }
+
+    /**
+     * 都道府県から配送料金を取得する.
+     *
+     * @param integer|array $pref_id 都道府県ID 又は都道府県IDの配列
+     * @param integer $deliv_id 配送業者ID
+     * @return string 指定の都道府県, 配送業者の配送料金
+     */
+    function sfGetDelivFee($pref_id, $deliv_id = 0) {
+        $objQuery =& SC_Query_Ex::getSingletonInstance();
+        if (!is_array($pref_id)) {
+            $pref_id = array($pref_id);
+        }
+        $sql = <<< __EOS__
+            SELECT T1.fee AS fee
+            FROM dtb_delivfee T1
+                JOIN dtb_deliv T2
+                    ON T1.deliv_id = T2.deliv_id
+            WHERE T1.pref = ?
+                AND T1.deliv_id = ?
+                AND T2.del_flg = 0
+__EOS__;
+        $result = 0;
+        foreach ($pref_id as $pref) {
+            $result += $objQuery->getOne($sql, array($pref, $deliv_id));
+        }
+        return $result;
+    }
+
 }

変更: branches/version-2_12-dev/data/class/helper/SC_Helper_DB.php
===================================================================
--- branches/version-2_12-dev/data/class/helper/SC_Helper_DB.php	2012-03-09 08:47:50 UTC (rev 21622)
+++ branches/version-2_12-dev/data/class/helper/SC_Helper_DB.php	2012-03-09 12:14:46 UTC (rev 21623)
@@ -1195,34 +1195,6 @@
     }
 
     /**
-     * 都道府県から配送料金を取得する.
-     *
-     * @param integer|array $pref_id 都道府県ID 又は都道府県IDの配列
-     * @param integer $deliv_id 配送業者ID
-     * @return string 指定の都道府県, 配送業者の配送料金
-     */
-    function sfGetDelivFee($pref_id, $deliv_id = 0) {
-        $objQuery =& SC_Query_Ex::getSingletonInstance();
-        if (!is_array($pref_id)) {
-            $pref_id = array($pref_id);
-        }
-        $sql = <<< __EOS__
-            SELECT T1.fee AS fee
-            FROM dtb_delivfee T1
-                JOIN dtb_deliv T2
-                    ON T1.deliv_id = T2.deliv_id
-            WHERE T1.pref = ?
-                AND T1.deliv_id = ?
-                AND T2.del_flg = 0
-__EOS__;
-        $result = 0;
-        foreach ($pref_id as $pref) {
-            $result += $objQuery->getOne($sql, array($pref, $deliv_id));
-        }
-        return $result;
-    }
-
-    /**
      * レコードの存在チェックを行う.
      *
      * TODO SC_Query に移行するべきか?




Svn-src-all メーリングリストの案内