Ignore:
Timestamp:
2013/02/18 19:00:58 (14 years ago)
Author:
pineray
Message:

#2136 #2134 get した値をそのまま save できるように調整.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_12-dev/data/class/helper/SC_Helper_Delivery.php

    r22564 r22566  
    2929 * @version $Id:$ 
    3030 */ 
    31 class SC_Helper_Delivery 
    32 { 
     31class SC_Helper_Delivery { 
     32 
    3333    /** 
    3434     * 配送方法の情報を取得. 
    … …  
    4242 
    4343        // 配送業者一覧の取得 
    44         $col = 'deliv_id, name, service_name, remark, confirm_url, product_type_id'; 
     44        $col = '*'; 
    4545        $where = 'deliv_id = ?'; 
    4646        if (!$has_deleted) { 
    … …  
    5858 
    5959        // 配送料金の取得 
    60         $arrDeliv['fee'] = $this->getDelivFeeList($deliv_id); 
     60        $arrDeliv['deliv_fee'] = $this->getDelivFeeList($deliv_id); 
    6161 
    6262        // 支払方法 
    … …  
    116116        unset($sqlval['payment_ids']); 
    117117 
     118        $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; 
     119 
    118120        // deliv_id が決まっていた場合 
    119121        if ($sqlval['deliv_id'] != '') { 
     122            unset($sqlval['creator_id']); 
     123            unset($sqlval['create_date']); 
    120124            $deliv_id = $sqlval['deliv_id']; 
    121125            $where = 'deliv_id = ?'; 
    … …  
    126130            $where = 'deliv_id = ? AND time_id = ?'; 
    127131            for ($cnt = 1; $cnt <= DELIVTIME_MAX; $cnt++) { 
    128                 $keyname = 'deliv_time'.$cnt; 
    129132                $arrWhereVal = array($deliv_id, $cnt); 
    130133                // 既存データの有無を確認 
    … …  
    132135 
    133136                if (isset($sqlval_deliv_time[$cnt])) { 
    134                     $deliv_time = $sqlval_deliv_time[$cnt]; 
     137                    $deliv_time = array(); 
     138                    $deliv_time['deliv_time'] = $sqlval_deliv_time[$cnt]; 
    135139 
    136140                    // 入力が空ではなく、DBに情報があれば更新 
    … …  
    146150                } 
    147151                // 入力が空で、DBに情報がある場合は削除 
    148                 else if (count($curData)) { 
     152                elseif (count($curData)) { 
    149153                    $objQuery->delete($table, $where, $arrWhereVal); 
    150154                } 
    … …  
    153157            // 配送料の登録 
    154158            if (INPUT_DELIV_FEE) { 
    155                 foreach ($sqlval_deliv_fee as $cnt => $deliv_fee) { 
    156                     $objQuery->update('dtb_delivfee', array('fee' => $deliv_fee['fee']), 'deliv_id = ? AND fee_id = ?', array($deliv_id, $cnt)); 
     159                foreach ($sqlval_deliv_fee as $deliv_fee) { 
     160                    $objQuery->update('dtb_delivfee', array('fee' => $deliv_fee['fee']), 'deliv_id = ? AND fee_id = ?', array($deliv_id, $deliv_fee['fee_id'])); 
    157161                } 
    158162            } 
    … …  
    176180            if (INPUT_DELIV_FEE) { 
    177181                // 配送料金の設定 
    178                 foreach ($sqlval_deliv_fee as $cnt => $deliv_fee) { 
     182                foreach ($sqlval_deliv_fee as $deliv_fee) { 
    179183                    $deliv_fee['deliv_id'] = $deliv_id; 
    180                     $deliv_fee['fee_id'] = $cnt; 
    181184                    // INSERTの実行 
    182185                    $objQuery->insert('dtb_delivfee', $deliv_fee); 
    … …  
    187190        // 支払い方法 
    188191        $objQuery->delete('dtb_payment_options', 'deliv_id = ?', array($deliv_id)); 
    189         foreach ($sqlval_payment_ids as $payment_ids) { 
    190             $payment_ids['deliv_id'] = $deliv_id; 
    191             $objQuery->insert('dtb_payment_options', $payment_ids); 
     192        $i = 1; 
     193        foreach ($sqlval_payment_ids as $payment_id) { 
     194            $sqlval_payment_id = array(); 
     195            $sqlval_payment_id['deliv_id'] = $deliv_id; 
     196            $sqlval_payment_id['payment_id'] = $payment_id; 
     197            $sqlval_payment_id['rank'] = $i; 
     198            $objQuery->insert('dtb_payment_options', $sqlval_payment_id); 
     199            $i++; 
    192200        } 
    193201 
    … …  
    243251        } else { 
    244252            $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    245             $ret = (($objQuery->count('dtb_deliv', 'deliv_id != ? AND service_name = ? ', array($arrDeliv['deliv_id'], $arrDeliv['service_name'])) > 0)? true : false); 
     253            $ret = (($objQuery->count('dtb_deliv', 'deliv_id != ? AND service_name = ? ', array($arrDeliv['deliv_id'], $arrDeliv['service_name'])) > 0) ? true : false); 
    246254        } 
    247255        return $ret; 
    … …  
    267275        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    268276        $objQuery->setOrder('time_id'); 
    269         $results = $objQuery->select('time_id, deliv_time', 
    270                                      'dtb_delivtime', 
    271                                      'deliv_id = ?', array($deliv_id)); 
     277        $results = $objQuery->select('time_id, deliv_time', 'dtb_delivtime', 'deliv_id = ?', array($deliv_id)); 
    272278        $arrDelivTime = array(); 
    273279        foreach ($results as $val) { 
    … …  
    286292        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    287293        $objQuery->setOrder('rank'); 
    288         return $objQuery->getCol('payment_id', 'dtb_payment_options', 
    289                                  'deliv_id = ?', 
    290                                  array($deliv_id), MDB2_FETCHMODE_ORDERED); 
     294        return $objQuery->getCol('payment_id', 'dtb_payment_options', 'deliv_id = ?', array($deliv_id), MDB2_FETCHMODE_ORDERED); 
    291295    } 
    292296 
    … …  
    328332        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    329333        $objQuery->setOrder('pref'); 
    330         $col = 'fee'; 
     334        $col = 'fee_id, fee, pref'; 
    331335        $where = 'deliv_id = ?'; 
    332336        $table = 'dtb_delivfee'; 
    333         return $objQuery->getCol($col, $table, $where, array($deliv_id), 
    334                                  MDB2_FETCHMODE_ORDERED); 
     337        return $objQuery->select($col, $table, $where, array($deliv_id)); 
    335338    } 
    336339} 
Note: See TracChangeset for help on using the changeset viewer.