Ignore:
Timestamp:
2011/01/16 01:20:36 (13 years ago)
Author:
nanasess
bzr:base-revision:
svn-v4:1e3b908f-19a9-db11-a64c-001125224ba8:branches/version-2_5-dev:19922
bzr:committer:
Kentaro Ohkouchi <nanasess@fsm.ne.jp>
bzr:file-ids:

data/Smarty/templates/admin/order/edit.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Forder%2Fedit.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/helper/SC_Helper_Purchase.php sc_helper_purchase.p-20101020100530-jyaoa7ch9pdfjqzp-1
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php 15594@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Forder%2FLC_Page_Admin_Order_Edit.php
data/class/pages/shopping/LC_Page_Shopping_Multiple.php lc_page_shopping_mul-20110109122547-u3fq5xmi1b4jn5n4-2
data/class/pages/shopping/LC_Page_Shopping_Payment.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping_Payment.php
bzr:mapping-version:
v4
bzr:merge:

nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
bzr:repository-uuid:
1e3b908f-19a9-db11-a64c-001125224ba8
bzr:revision-id:
nanasess@fsm.ne.jp-20110115162029-azxvx5ryjasawo2x
bzr:revno:
2652
bzr:revprop:branch-nick:
branches/version-2_5-dev
bzr:root:
branches/version-2_5-dev
bzr:text-revisions:

data/Smarty/templates/admin/order/edit.tpl nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
data/Smarty/templates/default/shopping/confirm.tpl nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
data/class/helper/SC_Helper_Purchase.php nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
data/class/pages/shopping/LC_Page_Shopping_Multiple.php nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
data/class/pages/shopping/LC_Page_Shopping_Payment.php nanasess@fsm.ne.jp-20110115161744-w643cxmm1o552cds
bzr:timestamp:
2011-01-16 01:20:29.269999981 +0900
bzr:user-agent:
bzr2.2.2+bzr-svn1.0.4
svn:original-date:
2011-01-15T16:20:29.270000Z
Message:

#843(複数配送先の指定)

  • お届け日/お届け時間が反映されるよう修正
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Payment.php

    r19915 r19923  
    9898        $this->cartKey = $objCartSess->getKey(); 
    9999 
     100        // 配送時間を取得 
     101        $this->arrDelivTime = $objPurchase->getDelivTime($this->cartKey); 
     102 
    100103        // 会員ログインチェック 
    101104        if($this->objCustomer->isLoginSuccess()) { 
     
    146149            // 入力エラーなし 
    147150            if(count($this->arrErr) == 0) { 
    148                 // DBへのデータ登録 
     151 
     152                foreach (array_keys($_SESSION['shipping']) as $key) { 
     153                    $timeId = $this->objFormParam->getValue('deliv_time_id' . $key); 
     154                    $_SESSION['shipping'][$key]['time_id'] = $timeId; 
     155                    $_SESSION['shipping'][$key]['shipping_time'] = $this->arrDelivTime[$timeId]; 
     156                    // XXX 文字列を代入しておいてもDBで自動変換可能? 
     157                    $_SESSION['shipping'][$key]['shipping_date'] = $this->objFormParam->getValue('deliv_date' . $key); 
     158                } 
    149159                $this->lfRegistData($uniqid, $objPurchase); 
    150                 $_SESSION['shipping'][0]['time_id'] = $this->objFormParam->getValue('deliv_time_id'); 
    151                 $_SESSION['shipping'][0]['deliv_date'] = $this->objFormParam->getValue('deliv_date'); 
     160 
    152161                // 正常に登録されたことを記録しておく 
    153162                $objSiteSess->setRegistFlag(); 
     
    159168                $uniqid = $objSiteSess->getUniqId(); 
    160169                // 受注一時テーブルからの情報を格納 
    161                 $this->lfSetOrderTempData($uniqid); 
     170                $this->objFormParam->setParam($objPurchase->getOrderTemp($uniqid)); 
    162171            } 
    163172            break; 
     
    177186        } 
    178187 
    179         // 配送時間を取得 
    180         $this->arrDelivTime = $objPurchase->getDelivTime($this->cartKey); 
    181  
    182188        // 支払い方法の画像があるなしを取得($img_show true:ある false:なし) 
    183189        $this->img_show = $this->lfGetImgShow($this->arrPayment); 
    184         // FIXME お届け日一覧の取得 
    185         $this->arrDelivDate = $this->lfGetDelivDate(); 
    186  
     190        // お届け日一覧の取得 
     191        $this->arrDelivDate = $objPurchase->getDelivDate($objCartSess, $this->cartKey); 
    187192        $this->arrForm = $this->objFormParam->getFormParamList(); 
    188193    } 
     
    262267        $objQuery = new SC_Query(); 
    263268        $where = "payment_id = ?"; 
    264         $arrRet = $objQuery->select("charge", "dtb_payment", $where, array($payment_id)); 
    265         return (array($arrRet[0]['charge'], $arrRet[0]['deliv_id'])); 
     269        $arrRet = $objQuery->getRow("charge, payment_method", "dtb_payment", $where, array($payment_id)); 
     270        return (array($arrRet['charge'], $arrRet['payment_method'])); 
    266271    } 
    267272 
     
    275280 
    276281        if (strlen($sqlval['payment_id']) >= 1) { 
    277             // FIXME list($sqlval['charge'], $sqlval['deliv_id']) = $this->lfGetPaymentInfo($sqlval['payment_id']); 
     282            list($sqlval['charge'], $sqlval['payment_method']) = $this->lfGetPaymentInfo($sqlval['payment_id']); 
    278283        } 
    279284 
     
    286291    } 
    287292 
    288     /* お届け日一覧を取得する */ 
    289     function lfGetDelivDate() { 
    290         $objCartSess = new SC_CartSession(); 
    291         $objQuery = new SC_Query(); 
    292         // 商品IDの取得 
    293         $max = $objCartSess->getMax(); 
    294         for($i = 1; $i <= $max; $i++) { 
    295             if($_SESSION[$objCartSess->key][$i]['id'][0] != "") { 
    296                 $arrID['product_id'][$i] = $_SESSION[$objCartSess->key][$i]['id'][0]; 
    297             } 
    298         } 
    299         if(count($arrID['product_id']) > 0) { 
    300             $id = implode(",", $arrID['product_id']); 
    301             //商品から発送目安の取得 
    302             $deliv_date = $objQuery->get("MAX(deliv_date_id)", "dtb_products", "product_id IN (".$id.")"); 
    303             //発送目安 
    304             switch($deliv_date) { 
    305             //即日発送 
    306             case '1': 
    307                 $start_day = 1; 
    308                 break; 
    309             //1-2日後 
    310             case '2': 
    311                 $start_day = 3; 
    312                 break; 
    313             //3-4日後 
    314             case '3': 
    315                 $start_day = 5; 
    316                 break; 
    317             //1週間以内 
    318             case '4': 
    319                 $start_day = 8; 
    320                 break; 
    321             //2週間以内 
    322             case '5': 
    323                 $start_day = 15; 
    324                 break; 
    325             //3週間以内 
    326             case '6': 
    327                 $start_day = 22; 
    328                 break; 
    329             //1ヶ月以内 
    330             case '7': 
    331                 $start_day = 32; 
    332                 break; 
    333             //2ヶ月以降 
    334             case '8': 
    335                 $start_day = 62; 
    336                 break; 
    337             //お取り寄せ(商品入荷後) 
    338             case '9': 
    339                 $start_day = ""; 
    340                 break; 
    341             default: 
    342                 //お届け日が設定されていない場合 
    343                 $start_day = ""; 
    344                 break; 
    345             } 
    346             //お届け可能日のスタート値から、お届け日の配列を取得する 
    347             $arrDelivDate = $this->lfGetDateArray($start_day, DELIV_DATE_END_MAX); 
    348         } 
    349         return $arrDelivDate; 
    350     } 
    351  
    352     //お届け可能日のスタート値から、お届け日の配列を取得する 
    353     function lfGetDateArray($start_day, $end_day) { 
    354         $masterData = new SC_DB_MasterData(); 
    355         $arrWDAY = $masterData->getMasterData("mtb_wday"); 
    356         //お届け可能日のスタート値がセットされていれば 
    357         if($start_day >= 1) { 
    358             $now_time = time(); 
    359             $max_day = $start_day + $end_day; 
    360             // 集計 
    361             for ($i = $start_day; $i < $max_day; $i++) { 
    362                 // 基本時間から日数を追加していく 
    363                 $tmp_time = $now_time + ($i * 24 * 3600); 
    364                 list($y, $m, $d, $w) = split(" ", date("y m d w", $tmp_time)); 
    365                 $val = sprintf("%02d/%02d/%02d(%s)", $y, $m, $d, $arrWDAY[$w]); 
    366                 $arrDate[$val] = $val; 
    367             } 
    368         } else { 
    369             $arrDate = false; 
    370         } 
    371         return $arrDate; 
    372     } 
    373  
    374293    //一時受注テーブルからの情報を格納する 
    375     function lfSetOrderTempData($uniqid) { 
    376         $objQuery = new SC_Query(); 
    377         $col = "payment_id, use_point, message, point_check "; 
    378         $from = "dtb_order_temp"; 
    379         $where = "order_temp_id = ?"; 
    380         $arrRet = $objQuery->select($col, $from, $where, array($uniqid)); 
    381         // DB値の取得 
    382         $this->objFormParam->setParam($arrRet[0]); 
     294    function lfSetOrderTempData($uniqid, &$objPurchase) { 
     295        $arrOrderTemp = $objPurchase->getOrderTemp($uniqid); 
     296        $this->objFormParam->setParam($arrOrderTemp); 
    383297        return $this->objFormParam; 
    384298    } 
     
    395309        return $img_show; 
    396310    } 
    397  
    398     /* 配送時間の配列を生成 */ 
    399     function lfSetDelivTime() { 
    400         $objDb = new SC_Helper_DB_Ex(); 
    401         $objJson = new Services_JSON; 
    402  
    403         // 配送時間の取得 
    404         $arrRet = $objDb->sfGetDelivTime($this->cartKey); 
    405         // JSONエンコード 
    406         echo $objJson->encode($arrRet); 
    407         exit; 
    408     } 
    409311} 
    410312?> 
Note: See TracChangeset for help on using the changeset viewer.