Ignore:
Timestamp:
2011/02/11 18:57:37 (15 years ago)
Author:
kimoto
Message:

LC_Page_Mypage_History リファクタリング
*lfGetShippingDataをSC_Helper_DBへ移動
*lfGetOrderDetailもSC_Helper_DBへ移動して管理側とsqlを統一すべき

Location:
branches/version-2_5-dev/data
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/Smarty/templates/default/mypage/history.tpl

    r20116 r20144  
    2929        <h3><!--{$tpl_subtitle|h}--></h3> 
    3030        <p class="myconditionarea"> 
    31         <strong>購入日時:&nbsp;</strong><!--{$arrDisp.create_date|sfDispDBDate}--><br /> 
    32         <strong>注文番号:&nbsp;</strong><!--{$arrDisp.order_id}--><br /> 
    33         <strong>お支払い方法:&nbsp;</strong><!--{$arrPayment[$arrDisp.payment_id]|h}--> 
    34         <!--{if $arrDisp.deliv_time_id != ""}--><br /> 
    35         <strong>お届け時間:&nbsp;</strong><!--{$arrDelivTime[$arrDisp.deliv_time_id]|h}--> 
     31        <strong>購入日時:&nbsp;</strong><!--{$tpl_arrOrderData.create_date|sfDispDBDate}--><br /> 
     32        <strong>注文番号:&nbsp;</strong><!--{$tpl_arrOrderData.order_id}--><br /> 
     33        <strong>お支払い方法:&nbsp;</strong><!--{$arrPayment[$tpl_arrOrderData.payment_id]|h}--> 
     34        <!--{if $tpl_arrOrderData.deliv_time_id != ""}--><br /> 
     35        <strong>お届け時間:&nbsp;</strong><!--{$arrDelivTime[$tpl_arrOrderData.deliv_time_id]|h}--> 
    3636        <!--{/if}--> 
    37         <!--{if $arrDisp.deliv_date != ""}--><br /> 
    38         <strong>お届け日:&nbsp;</strong><!--{$arrDisp.deliv_date|h}--> 
     37        <!--{if $tpl_arrOrderData.deliv_date != ""}--><br /> 
     38        <strong>お届け日:&nbsp;</strong><!--{$tpl_arrOrderData.deliv_date|h}--> 
    3939        <!--{/if}--> 
    4040        </p> 
    4141 
    4242        <form action="order.php" method="post"> 
    43             <input type="hidden" name="order_id" value="<!--{$arrDisp.order_id}-->"> 
     43            <input type="hidden" name="order_id" value="<!--{$tpl_arrOrderData.order_id}-->"> 
    4444            <input type="submit" name="submit" value="再注文"> 
    4545        </form> 
     
    6161                    <!--{if $orderDetail.product_type_id == PRODUCT_TYPE_DOWNLOAD}--> 
    6262                        <!--{if $orderDetail.price == "0" || ( $orderDetail.status >= "4" && $orderDetail.effective == "1" )}--> 
    63                             <a target="_self" href="<!--{$smarty.const.ROOT_URLPATH}-->mypage/download.php?order_id=<!--{$arrDisp.order_id}-->&product_id=<!--{$orderDetail.product_id}-->&product_class_id=<!--{$orderDetail.product_class_id}-->">ダウンロード</a> 
     63                            <a target="_self" href="<!--{$smarty.const.ROOT_URLPATH}-->mypage/download.php?order_id=<!--{$tpl_arrOrderData.order_id}-->&product_id=<!--{$orderDetail.product_id}-->&product_class_id=<!--{$orderDetail.product_class_id}-->">ダウンロード</a> 
    6464                        <!--{elseif $orderDetail.payment_date == "" || $orderDetail.status < "4"}--> 
    6565                            ダウンロード商品<BR />(入金確認中) 
     
    8080            <tr> 
    8181                <th colspan="5" class="resulttd">小計</th> 
    82                 <td class="pricetd"><!--{$arrDisp.subtotal|number_format}-->円</td> 
    83             </tr> 
    84             <!--{assign var=point_discount value="`$arrDisp.use_point*$smarty.const.POINT_VALUE`"}--> 
     82                <td class="pricetd"><!--{$tpl_arrOrderData.subtotal|number_format}-->円</td> 
     83            </tr> 
     84            <!--{assign var=point_discount value="`$tpl_arrOrderData.use_point*$smarty.const.POINT_VALUE`"}--> 
    8585            <!--{if $point_discount > 0}--> 
    8686            <tr> 
     
    9090            <!--{/if}--> 
    9191            <!--{assign var=key value="discount"}--> 
    92             <!--{if $arrDisp[$key] != "" && $arrDisp[$key] > 0}--> 
     92            <!--{if $tpl_arrOrderData[$key] != "" && $tpl_arrOrderData[$key] > 0}--> 
    9393            <tr> 
    9494                <th colspan="5" class="resulttd">値引き</th> 
    95                 <td class="pricetd"><!--{$arrDisp[$key]|number_format}-->円</td> 
     95                <td class="pricetd"><!--{$tpl_arrOrderData[$key]|number_format}-->円</td> 
    9696            </tr> 
    9797            <!--{/if}--> 
    9898            <tr> 
    9999                <th colspan="5" class="resulttd">送料</th> 
    100                 <td class="pricetd"><!--{assign var=key value="deliv_fee"}--><!--{$arrDisp[$key]|number_format|h}-->円</td> 
     100                <td class="pricetd"><!--{assign var=key value="deliv_fee"}--><!--{$tpl_arrOrderData[$key]|number_format|h}-->円</td> 
    101101            </tr> 
    102102            <tr> 
    103103                <th colspan="5" class="resulttd">手数料</th> 
    104104                <!--{assign var=key value="charge"}--> 
    105                 <td class="pricetd"><!--{$arrDisp[$key]|number_format|h}-->円</td> 
     105                <td class="pricetd"><!--{$tpl_arrOrderData[$key]|number_format|h}-->円</td> 
    106106            </tr> 
    107107            <tr> 
    108108                <th colspan="5" class="resulttd">合計</th> 
    109                 <td class="pricetd"><em><!--{$arrDisp.payment_total|number_format}-->円</em></td> 
     109                <td class="pricetd"><em><!--{$tpl_arrOrderData.payment_total|number_format}-->円</em></td> 
    110110            </tr> 
    111111        </table> 
     
    116116                <tr> 
    117117                    <th>ご使用ポイント</th> 
    118                     <td class="pricetd"><!--{assign var=key value="use_point"}--><!--{$arrDisp[$key]|number_format|default:0}--> pt</td> 
     118                    <td class="pricetd"><!--{assign var=key value="use_point"}--><!--{$tpl_arrOrderData[$key]|number_format|default:0}--> pt</td> 
    119119                </tr> 
    120120                <tr> 
    121121                    <th>今回加算されるポイント</th> 
    122                     <td class="pricetd"><!--{$arrDisp.add_point|number_format|default:0}--> pt</td> 
     122                    <td class="pricetd"><!--{$tpl_arrOrderData.add_point|number_format|default:0}--> pt</td> 
    123123                </tr> 
    124124            </table> 
  • branches/version-2_5-dev/data/Smarty/templates/mobile/mypage/history.tpl

    r20116 r20144  
    2222 */ 
    2323*}--> 
    24 購入日時:<!--{$arrDisp.create_date|sfDispDBDate}--><br /> 
    25 注文番号:<!--{$arrDisp.order_id}--><br /> 
    26 お支払い方法:<!--{$arrPayment[$arrDisp.payment_id]|h}--> 
    27 <!--{if $arrDisp.deliv_time_id != ""}--><br /> 
    28 お届け時間:<!--{$arrDelivTime[$arrDisp.deliv_time_id]|h}--> 
     24購入日時:<!--{$tpl_arrOrderData.create_date|sfDispDBDate}--><br /> 
     25注文番号:<!--{$tpl_arrOrderData.order_id}--><br /> 
     26お支払い方法:<!--{$arrPayment[$tpl_arrOrderData.payment_id]|h}--> 
     27<!--{if $tpl_arrOrderData.deliv_time_id != ""}--><br /> 
     28お届け時間:<!--{$arrDelivTime[$tpl_arrOrderData.deliv_time_id]|h}--> 
    2929<!--{/if}--> 
    30 <!--{if $arrDisp.deliv_date != ""}--><br /> 
    31 お届け日:<!--{$arrDisp.deliv_date|h}--> 
     30<!--{if $tpl_arrOrderData.deliv_date != ""}--><br /> 
     31お届け日:<!--{$tpl_arrOrderData.deliv_date|h}--> 
    3232<!--{/if}--> 
    3333 
    3434<form action="order.php" method="post"> 
    35     <input type="hidden" name="order_id" value="<!--{$arrDisp.order_id}-->"> 
     35    <input type="hidden" name="order_id" value="<!--{$tpl_arrOrderData.order_id}-->"> 
    3636    <input type="submit" name="submit" value="再注文"> 
    3737</form> 
     
    4545<!--{if $orderDetail.product_type_id == PRODUCT_TYPE_DOWNLOAD}--> 
    4646<!--{if $orderDetail.price == "0" || ( $orderDetail.status >= "4" && $orderDetail.effective == "1" )}--> 
    47 <a target="_self" href="<!--{$smarty.const.ROOT_URLPATH}-->mypage/download.php?order_id=<!--{$arrDisp.order_id}-->&product_id=<!--{$orderDetail.product_id}-->&product_class_id=<!--{$orderDetail.product_class_id}-->">ダウンロード</a><br> 
     47<a target="_self" href="<!--{$smarty.const.ROOT_URLPATH}-->mypage/download.php?order_id=<!--{$tpl_arrOrderData.order_id}-->&product_id=<!--{$orderDetail.product_id}-->&product_class_id=<!--{$orderDetail.product_class_id}-->">ダウンロード</a><br> 
    4848<!--{elseif $orderDetail.payment_date == "" || $orderDetail.status < "4"}--> 
    4949ダウンロード商品<br>(入金確認中)<br> 
     
    6262<!--{/foreach}--> 
    6363<hr> 
    64 小計:<!--{$arrDisp.subtotal|number_format}-->円<br> 
    65 <!--{assign var=point_discount value="`$arrDisp.use_point*$smarty.const.POINT_VALUE`"}--> 
     64小計:<!--{$tpl_arrOrderData.subtotal|number_format}-->円<br> 
     65<!--{assign var=point_discount value="`$tpl_arrOrderData.use_point*$smarty.const.POINT_VALUE`"}--> 
    6666<!--{if $point_discount > 0}--> 
    6767ポイント値引き:<!--{$point_discount|number_format}-->円<br> 
    6868<!--{/if}--> 
    6969<!--{assign var=key value="discount"}--> 
    70 <!--{if $arrDisp[$key] != "" && $arrDisp[$key] > 0}--> 
    71 値引き:<!--{$arrDisp[$key]|number_format}-->円<br> 
     70<!--{if $tpl_arrOrderData[$key] != "" && $tpl_arrOrderData[$key] > 0}--> 
     71値引き:<!--{$tpl_arrOrderData[$key]|number_format}-->円<br> 
    7272<!--{/if}--> 
    73 送料:<!--{assign var=key value="deliv_fee"}--><!--{$arrDisp[$key]|number_format|h}-->円<br> 
     73送料:<!--{assign var=key value="deliv_fee"}--><!--{$tpl_arrOrderData[$key]|number_format|h}-->円<br> 
    7474手数料: 
    7575<!--{assign var=key value="charge"}--> 
    76 <!--{$arrDisp[$key]|number_format|h}-->円<br> 
    77 合計:<!--{$arrDisp.payment_total|number_format}-->円<br> 
     76<!--{$tpl_arrOrderData[$key]|number_format|h}-->円<br> 
     77合計:<!--{$tpl_arrOrderData.payment_total|number_format}-->円<br> 
    7878<hr> 
    7979<!-- 使用ポイントここから --> 
    8080<!--{if $smarty.const.USE_POINT !== false}--> 
    8181■使用ポイント<br> 
    82 ご使用ポイント:<!--{assign var=key value="use_point"}--><!--{$arrDisp[$key]|number_format|default:0}--> pt<br> 
    83 今回加算されるポイント:<!--{$arrDisp.add_point|number_format|default:0}--> pt<br> 
     82ご使用ポイント:<!--{assign var=key value="use_point"}--><!--{$tpl_arrOrderData[$key]|number_format|default:0}--> pt<br> 
     83今回加算されるポイント:<!--{$tpl_arrOrderData.add_point|number_format|default:0}--> pt<br> 
    8484<hr> 
    8585<!--{/if}--> 
  • branches/version-2_5-dev/data/Smarty/templates/sphone/mypage/history.tpl

    r20116 r20144  
    2929        <h3><!--{$tpl_subtitle|h}--></h3> 
    3030        <p class="myconditionarea"> 
    31         <strong>購入日時:&nbsp;</strong><!--{$arrDisp.create_date|sfDispDBDate}--><br /> 
    32         <strong>注文番号:&nbsp;</strong><!--{$arrDisp.order_id}--><br /> 
    33         <strong>お支払い方法:&nbsp;</strong><!--{$arrPayment[$arrDisp.payment_id]|h}--> 
    34         <!--{if $arrDisp.deliv_time_id != ""}--><br /> 
    35         <strong>お届け時間:&nbsp;</strong><!--{$arrDelivTime[$arrDisp.deliv_time_id]|h}--> 
     31        <strong>購入日時:&nbsp;</strong><!--{$tpl_arrOrderData.create_date|sfDispDBDate}--><br /> 
     32        <strong>注文番号:&nbsp;</strong><!--{$tpl_arrOrderData.order_id}--><br /> 
     33        <strong>お支払い方法:&nbsp;</strong><!--{$arrPayment[$tpl_arrOrderData.payment_id]|h}--> 
     34        <!--{if $tpl_arrOrderData.deliv_time_id != ""}--><br /> 
     35        <strong>お届け時間:&nbsp;</strong><!--{$arrDelivTime[$tpl_arrOrderData.deliv_time_id]|h}--> 
    3636        <!--{/if}--> 
    37         <!--{if $arrDisp.deliv_date != ""}--><br /> 
    38         <strong>お届け日:&nbsp;</strong><!--{$arrDisp.deliv_date|h}--> 
     37        <!--{if $tpl_arrOrderData.deliv_date != ""}--><br /> 
     38        <strong>お届け日:&nbsp;</strong><!--{$tpl_arrOrderData.deliv_date|h}--> 
    3939        <!--{/if}--> 
    4040        </p> 
    4141 
    4242        <form action="order.php" method="post"> 
    43             <input type="hidden" name="order_id" value="<!--{$arrDisp.order_id}-->"> 
     43            <input type="hidden" name="order_id" value="<!--{$tpl_arrOrderData.order_id}-->"> 
    4444            <input type="submit" name="submit" value="再注文"> 
    4545        </form> 
     
    6161                    <!--{if $orderDetail.product_type_id == PRODUCT_TYPE_DOWNLOAD}--> 
    6262                        <!--{if $orderDetail.price == "0" || ( $orderDetail.status >= "4" && $orderDetail.effective == "1" )}--> 
    63                             <a target="_self" href="<!--{$smarty.const.ROOT_URLPATH}-->mypage/download.php?order_id=<!--{$arrDisp.order_id}-->&product_id=<!--{$orderDetail.product_id}-->&product_class_id=<!--{$orderDetail.product_class_id}-->">ダウンロード</a> 
     63                            <a target="_self" href="<!--{$smarty.const.ROOT_URLPATH}-->mypage/download.php?order_id=<!--{$tpl_arrOrderData.order_id}-->&product_id=<!--{$orderDetail.product_id}-->&product_class_id=<!--{$orderDetail.product_class_id}-->">ダウンロード</a> 
    6464                        <!--{elseif $orderDetail.payment_date == "" || $orderDetail.status < "4"}--> 
    6565                            ダウンロード商品<BR />(入金確認中) 
     
    8080            <tr> 
    8181                <th colspan="5" class="resulttd">小計</th> 
    82                 <td class="pricetd"><!--{$arrDisp.subtotal|number_format}-->円</td> 
    83             </tr> 
    84             <!--{assign var=point_discount value="`$arrDisp.use_point*$smarty.const.POINT_VALUE`"}--> 
     82                <td class="pricetd"><!--{$tpl_arrOrderData.subtotal|number_format}-->円</td> 
     83            </tr> 
     84            <!--{assign var=point_discount value="`$tpl_arrOrderData.use_point*$smarty.const.POINT_VALUE`"}--> 
    8585            <!--{if $point_discount > 0}--> 
    8686            <tr> 
     
    9090            <!--{/if}--> 
    9191            <!--{assign var=key value="discount"}--> 
    92             <!--{if $arrDisp[$key] != "" && $arrDisp[$key] > 0}--> 
     92            <!--{if $tpl_arrOrderData[$key] != "" && $tpl_arrOrderData[$key] > 0}--> 
    9393            <tr> 
    9494                <th colspan="5" class="resulttd">値引き</th> 
    95                 <td class="pricetd"><!--{$arrDisp[$key]|number_format}-->円</td> 
     95                <td class="pricetd"><!--{$tpl_arrOrderData[$key]|number_format}-->円</td> 
    9696            </tr> 
    9797            <!--{/if}--> 
    9898            <tr> 
    9999                <th colspan="5" class="resulttd">送料</th> 
    100                 <td class="pricetd"><!--{assign var=key value="deliv_fee"}--><!--{$arrDisp[$key]|number_format|h}-->円</td> 
     100                <td class="pricetd"><!--{assign var=key value="deliv_fee"}--><!--{$tpl_arrOrderData[$key]|number_format|h}-->円</td> 
    101101            </tr> 
    102102            <tr> 
    103103                <th colspan="5" class="resulttd">手数料</th> 
    104104                <!--{assign var=key value="charge"}--> 
    105                 <td class="pricetd"><!--{$arrDisp[$key]|number_format|h}-->円</td> 
     105                <td class="pricetd"><!--{$tpl_arrOrderData[$key]|number_format|h}-->円</td> 
    106106            </tr> 
    107107            <tr> 
    108108                <th colspan="5" class="resulttd">合計</th> 
    109                 <td class="pricetd"><em><!--{$arrDisp.payment_total|number_format}-->円</em></td> 
     109                <td class="pricetd"><em><!--{$tpl_arrOrderData.payment_total|number_format}-->円</em></td> 
    110110            </tr> 
    111111        </table> 
     
    116116                <tr> 
    117117                    <th>ご使用ポイント</th> 
    118                     <td class="pricetd"><!--{assign var=key value="use_point"}--><!--{$arrDisp[$key]|number_format|default:0}--> pt</td> 
     118                    <td class="pricetd"><!--{assign var=key value="use_point"}--><!--{$tpl_arrOrderData[$key]|number_format|default:0}--> pt</td> 
    119119                </tr> 
    120120                <tr> 
    121121                    <th>今回加算されるポイント</th> 
    122                     <td class="pricetd"><!--{$arrDisp.add_point|number_format|default:0}--> pt</td> 
     122                    <td class="pricetd"><!--{$tpl_arrOrderData.add_point|number_format|default:0}--> pt</td> 
    123123                </tr> 
    124124            </table> 
  • branches/version-2_5-dev/data/class/helper/SC_Helper_DB.php

    r20116 r20144  
    455455        return array($point, $rollback_point); 
    456456    } 
    457      
     457 
    458458 
    459459 
     
    869869    /** 
    870870     * カテゴリ数の登録を行う. 
    871      *  
     871     * 
    872872     * 
    873873     * @param SC_Query $objQuery SC_Query インスタンス 
     
    877877    function sfCountCategory($objQuery = NULL, $is_force_all_count = false){ 
    878878        $objProduct = new SC_Product(); 
    879          
     879 
    880880        if($objQuery == NULL) { 
    881881            $objQuery =& SC_Query::getSingletonInstance(); 
    882882        } 
    883          
     883 
    884884        $is_out_trans = false; 
    885885        if(!$objQuery->inTransaction()){ 
     
    887887            $is_out_trans = true; 
    888888        } 
    889          
     889 
    890890        //共通のfrom/where文の構築 
    891891        $sql_where = 'alldtl.del_flg = 0 AND alldtl.status = 1'; 
     
    897897            $from = " dtb_products as alldtl "; 
    898898        } 
    899          
     899 
    900900        //dtb_category_countの構成 
    901901        // 各カテゴリに所属する商品の数を集計。集計対象には子カテゴリを含まない。 
    902902        // 2.5で消える予定だったが復活させます。DELETE処理は無くしました。 
    903          
     903 
    904904        //まずテーブル内容の元を取得 
    905905        if(!$is_force_all_count) { 
     
    922922 
    923923        $arrCategoryCountNew = $objQuery->getAll($sql); 
    924         // 各カテゴリに所属する商品の数を集計。集計対象には子カテゴリを「含む」。         
     924        // 各カテゴリに所属する商品の数を集計。集計対象には子カテゴリを「含む」。 
    925925        //差分を取得して、更新対象カテゴリだけを確認する。 
    926926 
    927         //各カテゴリ毎のデータ値において以前との差を見る         
     927        //各カテゴリ毎のデータ値において以前との差を見る 
    928928        //古いデータの構造入れ替え 
    929929        $arrOld = array(); 
     
    950950            } 
    951951        } 
    952          
     952 
    953953        //対象IDが無ければ終了 
    954954        if(count($arrDiffCategory_id) == 0){ 
     
    961961        //差分対象カテゴリIDの重複を除去 
    962962        $arrDiffCategory_id = array_unique($arrDiffCategory_id); 
    963          
     963 
    964964        //dtb_category_countの更新 差分のあったカテゴリだけ更新する。 
    965965        foreach($arrDiffCategory_id as $cid) { 
     
    977977            } 
    978978        } 
    979          
     979 
    980980        //差分があったIDとその親カテゴリIDのリストを取得する 
    981981        $arrTgtCategory_id = array(); 
     
    987987            } 
    988988        } 
    989          
     989 
    990990        //重複を取り除く 
    991991        $arrTgtCategory_id = array_unique($arrTgtCategory_id); 
     
    20772077        $this->sfRegistTempOrder($uniqid, $sqlval); 
    20782078    } 
     2079 
     2080 
     2081    /** 
     2082     * 配送情報の取得. 
     2083     * TODO リファクタリング 
     2084     */ 
     2085    function sfGetShippingData($orderId) { 
     2086        $objQuery =& SC_Query::getSingletonInstance(); 
     2087        $objProduct = new SC_Product(); 
     2088        $objQuery->setOrder('shipping_id'); 
     2089        $arrRet = $objQuery->select("*", "dtb_shipping", "order_id = ?", array($orderId)); 
     2090 
     2091        foreach (array_keys($arrRet) as $key) { 
     2092            $objQuery->setOrder('shipping_id'); 
     2093            $arrItems = $objQuery->select("*", "dtb_shipment_item", "order_id = ? AND shipping_id = ?", 
     2094                                       array($orderId, $arrRet[$key]['shipping_id'])); 
     2095            foreach ($arrItems as $itemKey => $arrDetail) { 
     2096                foreach ($arrDetail as $detailKey => $detailVal) { 
     2097                    $arrRet[$key]['shipment_item'][$arrDetail['product_class_id']][$detailKey] = $detailVal; 
     2098                } 
     2099 
     2100                $arrRet[$key]['shipment_item'][$arrDetail['product_class_id']]['productsClass'] =& $objProduct->getDetailAndProductsClass($arrDetail['product_class_id']); 
     2101            } 
     2102        } 
     2103        return $arrRet; 
     2104    } 
     2105 
    20792106} 
    20802107?> 
  • branches/version-2_5-dev/data/class/pages/mypage/LC_Page_Mypage_History.php

    r20116 r20144  
    2323 
    2424// {{{ requires 
    25 require_once(CLASS_REALDIR . "pages/LC_Page.php"); 
     25require_once(CLASS_REALDIR . "pages/mypage/LC_Page_AbstractMypage.php"); 
    2626 
    2727/** 
     
    3232 * @version $Id$ 
    3333 */ 
    34 class LC_Page_Mypage_History extends LC_Page { 
     34class LC_Page_Mypage_History extends LC_Page_AbstractMypage { 
    3535 
    3636    // }}} 
     
    4444    function init() { 
    4545        parent::init(); 
    46         $this->tpl_navi = TEMPLATE_REALDIR . 'mypage/navi.tpl'; 
    47         $this->tpl_mainno = 'mypage'; 
    48         $this->tpl_mypageno = 'index'; 
    49         $this->tpl_subtitle = '購入履歴詳細'; 
     46        $this->tpl_mypageno     = 'index'; 
     47        $this->tpl_subtitle     = '購入履歴詳細'; 
    5048        $this->httpCacheControl('nocache'); 
    51         $masterData = new SC_DB_MasterData_Ex(); 
    52         $this->arrMAILTEMPLATE = $masterData->getMasterData("mtb_mail_template"); 
    53         $this->arrPref = $masterData->getMasterData('mtb_pref'); 
     49 
     50        $masterData             = new SC_DB_MasterData_Ex(); 
     51        $this->arrMAILTEMPLATE  = $masterData->getMasterData("mtb_mail_template"); 
     52        $this->arrPref          = $masterData->getMasterData('mtb_pref'); 
    5453   } 
    5554 
     
    6160    function process() { 
    6261        parent::process(); 
    63         $this->action(); 
    64         $this->sendResponse(); 
    6562    } 
    6663 
     
    7168     */ 
    7269    function action() { 
    73         $objQuery = new SC_Query(); 
    74         $objCustomer = new SC_Customer(); 
    75         $objDb = new SC_Helper_DB_Ex(); 
     70        $objQuery       = new SC_Query(); 
     71        $objCustomer    = new SC_Customer(); 
     72        $objDb          = new SC_Helper_DB_Ex(); 
    7673 
    77         // FIXME 他の画面と同様のバリデーションを行なう 
    7874        if (!SC_Utils_Ex::sfIsInt($_GET['order_id'])) { 
    79             SC_Utils_Ex::sfDispException(); 
     75            SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR); 
    8076        } 
    8177 
    82         $orderId = $_GET['order_id']; 
     78        $order_id        = $_GET['order_id']; 
     79        $arrOrderData   = $this->lfGetOrderData($objCustomer->getValue('customer_id'), $order_id); 
    8380 
    84         //不正アクセス判定 
    85         $from = "dtb_order"; 
    86         $where = "del_flg = 0 AND customer_id = ? AND order_id = ? "; 
    87         $arrval = array($objCustomer->getValue('customer_id'), $orderId); 
    88         //DBに情報があるか判定 
    89         $cnt = $objQuery->count($from, $where, $arrval); 
    90         //ログインしていない、またはDBに情報が無い場合 
    91         if (!$objCustomer->isLoginSuccess(true) || $cnt == 0){ 
     81        if (empty($arrOrderData)){ 
    9282            SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR); 
    9383        } 
    9484 
    9585        //受注詳細データの取得 
    96         $this->arrDisp = $this->lfGetOrderData($orderId); 
    97         $this->arrShipping = $this->lfGetShippingData($orderId); 
    98         $this->isMultiple = count($this->arrShipping) > 1; 
     86        $this->tpl_arrOrderData = $arrOrderData[0]; 
     87 
     88        $this->arrShipping      = $objDb->sfGetShippingData($order_id); 
     89        $this->isMultiple       = count($this->arrShipping) > 1; 
    9990        // 支払い方法の取得 
    100         $this->arrPayment = $objDb->sfGetIDValueList("dtb_payment", "payment_id", "payment_method"); 
     91        $this->arrPayment       = $objDb->sfGetIDValueList("dtb_payment", "payment_id", "payment_method"); 
    10192        // お届け時間の取得 
    102         $arrRet = $objDb->sfGetDelivTime($this->arrDisp['payment_id']); 
    103         $this->arrDelivTime = SC_Utils_Ex::sfArrKeyValue($arrRet, 'time_id', 'deliv_time'); 
    104  
    105         //マイページトップ顧客情報表示用 
    106         $this->tpl_login = true; 
    107         $this->CustomerName1 = $objCustomer->getvalue('name01'); 
    108         $this->CustomerName2 = $objCustomer->getvalue('name02'); 
    109         $this->CustomerPoint = $objCustomer->getvalue('point'); 
    110  
     93        $this->arrDelivTime     = SC_Utils_Ex::sfArrKeyValue($objDb->sfGetDelivTime($this->tpl_arrOrderData['payment_id']), 
     94                                                            'time_id', 
     95                                                            'deliv_time'); 
    11196        // 受注商品明細の取得 
    112         $this->tpl_arrOrderDetail = $this->lfGetOrderDetail($orderId); 
    113  
     97        $this->tpl_arrOrderDetail = $this->lfGetOrderDetail($order_id); 
    11498        // 受注メール送信履歴の取得 
    115         $this->tpl_arrMailHistory = $this->lfGetMailHistory($orderId); 
     99        $this->tpl_arrMailHistory = $this->lfGetMailHistory($order_id); 
    116100 
    117101    } 
     
    132116     * @return array 受注の内容 
    133117     */ 
    134     function lfGetOrderData($orderId) { 
     118    function lfGetOrderData($customer_id, $order_id) { 
    135119        // DBから受注情報を読み込む 
    136         $objQuery = new SC_Query(); 
    137         /* 
    138         $col = "order_id, create_date, payment_id, subtotal, tax, use_point, add_point, discount, "; 
    139         $col .= "deliv_fee, charge, payment_total, deliv_name01, deliv_name02, deliv_kana01, deliv_kana02, "; 
    140         $col .= "deliv_zip01, deliv_zip02, deliv_pref, deliv_addr01, deliv_addr02, deliv_tel01, deliv_tel02, deliv_tel03, deliv_time_id, deliv_date "; 
    141         */ 
    142         $from = "dtb_order"; 
    143         $where = "order_id = ?"; 
    144         $arrRet = $objQuery->select("*", $from, $where, array($orderId)); 
    145         return $arrRet[0]; 
    146     } 
    147  
    148     /** 
    149      * 配送情報の取得. 
    150      * TODO リファクタリング 
    151      */ 
    152     function lfGetShippingData($orderId) { 
    153         $objQuery =& SC_Query::getSingletonInstance(); 
    154         $objProduct = new SC_Product(); 
    155         $objQuery->setOrder('shipping_id'); 
    156         $arrRet = $objQuery->select("*", "dtb_shipping", "order_id = ?", array($orderId)); 
    157         foreach (array_keys($arrRet) as $key) { 
    158             $objQuery->setOrder('shipping_id'); 
    159             $arrItems = $objQuery->select("*", "dtb_shipment_item", "order_id = ? AND shipping_id = ?", 
    160                                        array($orderId, $arrRet[$key]['shipping_id'])); 
    161             foreach ($arrItems as $itemKey => $arrDetail) { 
    162                 foreach ($arrDetail as $detailKey => $detailVal) { 
    163                     $arrRet[$key]['shipment_item'][$arrDetail['product_class_id']][$detailKey] = $detailVal; 
    164                 } 
    165  
    166                 $arrRet[$key]['shipment_item'][$arrDetail['product_class_id']]['productsClass'] =& $objProduct->getDetailAndProductsClass($arrDetail['product_class_id']); 
    167             } 
    168         } 
    169         return $arrRet; 
     120        $objQuery   =& SC_Query::getSingletonInstance(); 
     121        $from       = "dtb_order"; 
     122        $where      = "del_flg = 0 AND customer_id = ? AND order_id = ?"; 
     123        return $objQuery->select("*", $from, $where, array($customer_id, $order_id)); 
    170124    } 
    171125 
     
    176130     * @return array 受注商品明細の内容 
    177131     */ 
    178     function lfGetOrderDetail($orderId) { 
    179         $objQuery = new SC_Query(); 
    180         $dbFactory = SC_DB_DBFactory_Ex::getInstance(); 
     132    function lfGetOrderDetail($order_id) { 
     133        $objQuery   =& SC_Query::getSingletonInstance(); 
     134        $dbFactory  = SC_DB_DBFactory_Ex::getInstance(); 
    181135 
    182         $col = "od.product_id AS product_id, od.product_code AS product_code, od.product_name AS product_name, od.classcategory_name1 AS classcategory_name1,"; 
    183         $col .= "od.classcategory_name2 AS classcategory_name2, od.price AS price, od.quantity AS quantity, od.point_rate AS point_rate"; 
    184         $col .= ",CASE WHEN EXISTS(SELECT * FROM dtb_products WHERE product_id = od.product_id AND del_flg = 0 AND status = 1) THEN '1' ELSE '0' END AS enable"; 
    185         $col .= ",o.status AS status, pc.product_type_id AS product_type_id, o.payment_date AS payment_date, od.product_class_id as product_class_id, "; 
    186         $col .= $dbFactory->getDownloadableDaysWhereSql(); 
    187         $col .= " AS effective"; 
    188         $where = "p.product_id = od.product_id AND pc.product_id = od.product_id AND pc.product_class_id = od.product_class_id AND od.order_id = o.order_id AND od.order_id = ?"; 
    189         $arrRet = $objQuery->select($col, "dtb_products p, dtb_products_class pc, dtb_order_detail od, dtb_order o", $where,array($orderId)); 
    190         return $arrRet; 
     136        $col    = " 
     137            od.product_id AS product_id, 
     138            od.product_code AS product_code, 
     139            od.product_name AS product_name, 
     140            od.classcategory_name1 AS classcategory_name1, 
     141            od.classcategory_name2 AS classcategory_name2, 
     142            od.price AS price, 
     143            od.quantity AS quantity, 
     144            od.point_rate AS point_rate 
     145            ,CASE WHEN EXISTS(SELECT * FROM dtb_products WHERE product_id = od.product_id AND del_flg = 0 AND status = 1) THEN '1' ELSE '0' END AS enable 
     146            ,o.status AS status, 
     147            pc.product_type_id AS product_type_id, 
     148            o.payment_date AS payment_date, 
     149            od.product_class_id as product_class_id, 
     150            ".$dbFactory->getDownloadableDaysWhereSql()." 
     151            AS effective"; 
     152 
     153        $from   = "dtb_products p, dtb_products_class pc, dtb_order_detail od, dtb_order o"; 
     154        $where  = "p.product_id = od.product_id AND pc.product_id = od.product_id AND pc.product_class_id = od.product_class_id AND od.order_id = o.order_id AND od.order_id = ?"; 
     155 
     156        return $objQuery->select($col, $from, $where, array($order_id)); 
    191157    } 
    192158 
     
    194160     * 受注メール送信履歴の取得 
    195161     * 
    196      * @param integer $orderId 注文番号 
     162     * @param integer $order_id 注文番号 
    197163     * @return array 受注メール送信履歴の内容 
    198164     */ 
    199     function lfGetMailHistory($orderId) { 
    200         $objQuery = new SC_Query(); 
    201         $col = 'send_date, subject, template_id, send_id'; 
    202         $where = 'order_id = ?'; 
     165    function lfGetMailHistory($order_id) { 
     166        $objQuery   =& SC_Query::getSingletonInstance(); 
     167        $col        = 'send_date, subject, template_id, send_id'; 
     168        $where      = 'order_id = ?'; 
    203169        $objQuery->setOrder('send_date DESC'); 
    204         $this->arrMailHistory = $objQuery->select($col, 'dtb_mail_history', $where, array($orderId)); 
     170        return $objQuery->select($col, 'dtb_mail_history', $where, array($order_id)); 
    205171    } 
    206172} 
Note: See TracChangeset for help on using the changeset viewer.