Ignore:
Timestamp:
2013/02/19 19:24:42 (11 years ago)
Author:
pineray
Message:

#2152 pageクラスからdtb_kiyakuテーブルを直接指定している箇所をなくす

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Kiyaku.php

    r22567 r22570  
    7272    { 
    7373 
    74         $objDb = new SC_Helper_DB_Ex(); 
     74        $objKiyaku = new SC_Helper_Kiyaku_Ex(); 
    7575 
    7676        $mode = $this->getMode(); 
     
    8787            case 'confirm': 
    8888                // エラーチェック 
    89                 $this->arrErr = $this->lfCheckError($objFormParam); 
     89                $this->arrErr = $this->lfCheckError($objFormParam, $objKiyaku); 
    9090                if (!SC_Utils_Ex::isBlank($this->arrErr['kiyaku_id'])) { 
    9191                    trigger_error('', E_USER_ERROR); 
     
    9393                } 
    9494 
    95                 // POST値の引き継ぎ 
    96                 $arrParam = $objFormParam->getHashArray(); 
    9795                if (SC_Utils_Ex::isBlank($this->arrErr)) { 
    98                     if (SC_Utils_Ex::isBlank($kiyaku_id)) { 
    99                         $res_kiyaku_id = $this->lfInsertClass($arrParam, $_SESSION['member_id']);    // 新規作成 
    100                     } else { 
    101                         $res_kiyaku_id = $this->lfUpdateClass($arrParam, $kiyaku_id);    // 既存編集 
    102                     } 
    103  
     96                    // POST値の引き継ぎ 
     97                    $arrParam = $objFormParam->getHashArray(); 
     98                    // 登録実行 
     99                    $res_kiyaku_id = $this->doRegist($kiyaku_id, $arrParam, $objKiyaku); 
    104100                    if ($res_kiyaku_id !== FALSE) { 
    105101                        // 完了メッセージ 
     
    114110            // 削除 
    115111            case 'delete': 
    116                 $objDb->sfDeleteRankRecord('dtb_kiyaku', 'kiyaku_id', $kiyaku_id, '', true); 
     112                $objKiyaku->delete($kiyaku_id); 
    117113                break; 
    118114 
     
    120116            case 'pre_edit': 
    121117                // 編集項目を取得する。 
    122                 $arrKiyakuData = $this->lfGetKiyakuDataByKiyakuID($kiyaku_id); 
    123                 $objFormParam->setParam($arrKiyakuData[0]); 
     118                $arrKiyakuData = $objKiyaku->get($kiyaku_id); 
     119                $objFormParam->setParam($arrKiyakuData); 
    124120 
    125121                // 編集中の規約IDを渡す 
     
    128124 
    129125            case 'down': 
    130                 $objDb->sfRankDown('dtb_kiyaku', 'kiyaku_id', $kiyaku_id); 
     126                $objKiyaku->rankDown($kiyaku_id); 
    131127 
    132128                // 再表示 
     
    135131 
    136132            case 'up': 
    137                 $objDb->sfRankUp('dtb_kiyaku', 'kiyaku_id', $kiyaku_id); 
     133                $objKiyaku->rankUp($kiyaku_id); 
    138134 
    139135                // 再表示 
     
    148144 
    149145        // 規約一覧を取得 
    150         $this->arrKiyaku = $this->lfGetKiyakuList(); 
     146        $this->arrKiyaku = $objKiyaku->getList(); 
    151147} 
    152148 
     
    161157    } 
    162158 
    163     /* DBへの挿入 */ 
    164     function lfInsertClass($arrData, $member_id) 
    165     { 
    166         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    167         // INSERTする値を作成する。 
    168         $sqlval = array(); 
    169         $sqlval['kiyaku_title'] = $arrData['kiyaku_title']; 
    170         $sqlval['kiyaku_text'] = $arrData['kiyaku_text']; 
    171         $sqlval['creator_id'] = $member_id; 
    172         $sqlval['rank'] = $objQuery->max('rank', 'dtb_kiyaku') + 1; 
    173         $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; 
    174         $sqlval['create_date'] = 'CURRENT_TIMESTAMP'; 
    175         // INSERTの実行 
    176         $sqlval['kiyaku_id'] = $objQuery->nextVal('dtb_kiyaku_kiyaku_id'); 
    177         $ret = $objQuery->insert('dtb_kiyaku', $sqlval); 
    178         return ($ret) ? $sqlval['kiyaku_id'] : FALSE; 
    179     } 
    180  
    181     function lfGetKiyakuDataByKiyakuID($kiyaku_id) 
    182     { 
    183         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    184  
    185         $where = 'kiyaku_id = ?'; 
    186         return $objQuery->select('kiyaku_text, kiyaku_title', 'dtb_kiyaku', $where, array($kiyaku_id)); 
    187     } 
    188  
    189     function lfGetKiyakuList() 
    190     { 
    191         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    192  
    193         $where = 'del_flg <> 1'; 
    194         $objQuery->setOrder('rank DESC'); 
    195         return $objQuery->select('kiyaku_title, kiyaku_text, kiyaku_id', 'dtb_kiyaku', $where); 
    196     } 
    197  
    198     /* DBへの更新 */ 
    199     function lfUpdateClass($arrData, $kiyaku_id) 
    200     { 
    201         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    202         // UPDATEする値を作成する。 
    203         $sqlval['kiyaku_title'] = $arrData['kiyaku_title']; 
    204         $sqlval['kiyaku_text'] = $arrData['kiyaku_text']; 
    205         $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; 
    206         $where = 'kiyaku_id = ?'; 
    207         // UPDATEの実行 
    208         $ret = $objQuery->update('dtb_kiyaku', $sqlval, $where, array($kiyaku_id)); 
    209         return ($ret) ? $kiyaku_id : FALSE; 
     159    /** 
     160     * 登録処理を実行. 
     161     *  
     162     * @param integer $kiyaku_id 
     163     * @param array $sqlval 
     164     * @param object $objKiyaku 
     165     * @return multiple 
     166     */ 
     167    function doRegist($kiyaku_id, $sqlval, SC_Helper_Kiyaku_Ex &$objKiyaku) 
     168    { 
     169        $sqlval['kiyaku_id'] = $kiyaku_id; 
     170        $sqlval['creator_id'] = $_SESSION['member_id']; 
     171        return $objKiyaku->save($sqlval); 
    210172    } 
    211173 
     
    232194     * 
    233195     * @param string $mode 
     196     * @param object $objKiyaku 
    234197     * @return array 
    235198     */ 
    236     function lfCheckError($objFormParam) 
     199    function lfCheckError($objFormParam, SC_Helper_Kiyaku_Ex &$objKiyaku) 
    237200    { 
    238201        $arrErr = $objFormParam->checkError(); 
    239202        $arrForm = $objFormParam->getHashArray(); 
    240         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    241          
    242         $where  = 'del_flg = 0 AND kiyaku_title = ?'; 
    243         $arrVal = array($arrForm['kiyaku_title']); 
    244          
    245         if(!SC_Utils_Ex::isBlank($arrForm['kiyaku_id'])) { 
    246             $where   .= ' AND kiyaku_id <> ?'; 
    247             $arrVal[] = $arrForm['kiyaku_id']; 
    248         } 
    249          
    250         $arrRet = $objQuery->select('kiyaku_id, kiyaku_title', 'dtb_kiyaku', $where, $arrVal); 
    251  
     203 
     204        $isTitleExist = $objKiyaku->isTitleExist($arrForm['kiyaku_title'], $arrForm['kiyaku_id']); 
    252205        // 編集中のレコード以外に同じ名称が存在する場合 
    253         if (!SC_Utils_Ex::isBlank($arrRet)) { 
     206        if ($isTitleExist) { 
    254207            $arrErr['name'] = '※ 既に同じ内容の登録が存在します。<br />'; 
    255208        } 
Note: See TracChangeset for help on using the changeset viewer.