Ignore:
Timestamp:
2010/03/11 10:35:11 (14 years ago)
Author:
kajiwara
Message:

正式版にナイトリービルド版をマージしてみるテスト

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tmp/version-2_5-test/data/class/pages/admin/order/LC_Page_Admin_Order_Status.php

    r17466 r18609  
    4848        $this->tpl_mainno = 'order'; 
    4949        $this->tpl_subno = 'status'; 
     50        $this->tpl_subtitle = 'ステータス管理'; 
    5051 
    5152        $masterData = new SC_DB_MasterData_Ex(); 
     
    6364        $objSess = new SC_Session(); 
    6465        $objDb = new SC_Helper_DB_Ex(); 
    65         $objQuery = new SC_Query(); 
    6666 
    6767        // 認証可否の判定 
     
    8181        case 'update': 
    8282            if (!isset($_POST['change_status'])) $_POST['change_status'] = ""; 
    83             if ($_POST['change_status'] == 'delete') { 
    84                 $this->lfStatusMove("delete",$_POST['move']); 
    85             } elseif (!empty($_POST['change_status'])) { 
    86                 $this->lfStatusMove($_POST['change_status'], $_POST['move']); 
     83             
     84            switch ($_POST['change_status']) { 
     85                case '': 
     86                    break; 
     87                 
     88                // 削除 
     89                case 'delete': 
     90                    $this->lfDelete($_POST['move']); 
     91                    break; 
     92                 
     93                // 更新 
     94                default: 
     95                    $this->lfStatusMove($_POST['change_status'], $_POST['move']); 
     96                    break; 
    8797            } 
     98             
    8899            //ステータス情報 
    89100            $status = isset($_POST['status']) ? $_POST['status'] : ""; 
     
    152163    } 
    153164 
    154     //ステータス情報の更新(削除) 
    155     function lfStatusMove($status_id, $arrMove){ 
     165    /** 
     166     * ステータス情報の更新 
     167     */ 
     168    function lfStatusMove($statusId, $arrOrderId) { 
    156169        $objQuery = new SC_Query(); 
     170         
     171        if (!isset($arrOrderId) || !is_array($arrOrderId)) { 
     172            return false; 
     173        } 
    157174        $masterData = new SC_DB_MasterData_Ex(); 
    158175        $arrORDERSTATUS = $masterData->getMasterData("mtb_order_status"); 
    159  
    160         $table = 'dtb_order'; 
    161         $where = 'order_id = ?'; 
    162         $arrUpdate = array('update_date' => 'NOW()'); 
    163  
    164         $delflg  = '1'; // 削除フラグ 
    165         $message = '';  // ステータス変更後にポップアップするメッセージの内容 
    166  
    167         if ( $status_id == 'delete' ) { 
    168             $arrUpdate['del_flg'] = $delflg; 
    169             $message = '削除'; 
    170         } 
    171         // ステータスが発送済みの時は発送日を更新 
    172         elseif ( $status_id == ORDER_DELIV ) { 
    173             $arrUpdate['status'] = $status_id; 
    174             $arrUpdate['commit_date'] = 'NOW()'; 
    175             $message = $arrORDERSTATUS[$status_id] . 'へ移動'; 
    176         } 
    177         else { 
    178             $arrUpdate['status'] = $status_id; 
    179             $message = $arrORDERSTATUS[$status_id] . 'へ移動'; 
    180         } 
    181  
    182         if ( isset($arrMove) ){ 
    183             foreach ( $arrMove as $val ){ 
    184                 if ( $val != "" ) { 
    185                     $objQuery->update($table, $arrUpdate, $where, array($val)); 
    186                 } 
    187  
    188             } 
    189         } 
    190  
    191         $this->tpl_onload = "window.alert('選択項目を" . $message . "しました。');"; 
     176         
     177        $objQuery->begin(); 
     178         
     179        foreach ($arrOrderId as $orderId) { 
     180            SC_Helper_DB_Ex::sfUpdateOrderStatus($orderId, $statusId); 
     181        } 
     182         
     183        $objQuery->commit(); 
     184         
     185        $this->tpl_onload = "window.alert('選択項目を" . $arrORDERSTATUS[$statusId] . "へ移動しました。');"; 
     186        return true; 
     187    } 
     188 
     189    /** 
     190     * 受注テーブルの論理削除 
     191     */ 
     192    function lfDelete($arrOrderId) { 
     193        $objQuery = new SC_Query(); 
     194         
     195        if (!isset($arrOrderId) || !is_array($arrOrderId)) { 
     196            return false; 
     197        } 
     198         
     199        $arrUpdate = array( 
     200             'del_flg' => 1 
     201            ,'update_date' => 'Now()' 
     202        ); 
     203         
     204        $objQuery->begin(); 
     205         
     206        foreach ($arrOrderId as $orderId) { 
     207            $objQuery->update('dtb_order', $arrUpdate, 'order_id = ?', array($orderId)); 
     208        } 
     209         
     210        $objQuery->commit(); 
     211         
     212        $this->tpl_onload = "window.alert('選択項目を削除しました。');"; 
     213        return true; 
    192214    } 
    193215} 
Note: See TracChangeset for help on using the changeset viewer.