Index: /branches/version-2_12-dev/data/class/helper/SC_Helper_Payment.php
===================================================================
--- /branches/version-2_12-dev/data/class/helper/SC_Helper_Payment.php	(revision 22076)
+++ /branches/version-2_12-dev/data/class/helper/SC_Helper_Payment.php	(revision 22078)
@@ -32,4 +32,91 @@
 {
     /**
+     * 支払方法の情報を取得.
+     * 
+     * @param integer $payment_id 支払方法ID
+     * @return array
+     */
+    public function get($payment_id) {
+        $objQuery =& SC_Query_Ex::getSingletonInstance();
+        $where = 'payment_id = ?';
+        $arrRet = $objQuery->select('*', 'dtb_payment', $where, array($payment_id));
+        return $arrRet[0];
+    }
+
+    /**
+     * 支払方法一覧の取得.
+     *
+     * @return array
+     */
+    public function getList() {
+        $objQuery =& SC_Query_Ex::getSingletonInstance();
+        $col = 'payment_id, payment_method, charge, rule_max, upper_rule, note, fix, charge_flg';
+        $where = 'del_flg = 0';
+        $table = 'dtb_payment';
+        $objQuery->setOrder('rank DESC');
+        $arrRet = $objQuery->select($col, $table, $where);
+        return $arrRet;
+    }
+
+    /**
+     * 支払方法の登録.
+     * 
+     * @param array $sqlval
+     * @return void
+     */
+    public function save($sqlval) {
+        $payment_id = $sqlval['payment_id'];
+
+        $objQuery =& SC_Query_Ex::getSingletonInstance();
+        // 新規登録
+        if ($payment_id == '') {
+            // INSERTの実行
+            $sqlval['rank'] = $objQuery->max('rank', 'dtb_payment') + 1;
+            $sqlval['create_date'] = 'CURRENT_TIMESTAMP';
+            $sqlval['payment_id'] = $objQuery->nextVal('dtb_payment_payment_id');
+            $objQuery->insert('dtb_payment', $sqlval);
+        // 既存編集
+        } else {
+            unset($sqlval['creator_id']);
+            $where = 'payment_id = ?';
+            $objQuery->update('dtb_payment', $sqlval, $where, array($payment_id));
+        }
+    }
+
+    /**
+     * 支払方法の削除.
+     * 
+     * @param integer $payment_id 支払方法ID
+     * @return void
+     */
+    public function delete($payment_id) {
+        $objDb = new SC_Helper_DB_Ex();
+        // ランク付きレコードの削除
+        $objDb->sfDeleteRankRecord('dtb_payment', 'payment_id', $payment_id);
+    }
+
+    /**
+     * 支払方法の表示順をひとつ上げる.
+     * 
+     * @param integer $payment_id 支払方法ID
+     * @return void
+     */
+    public function rankUp($payment_id) {
+        $objDb = new SC_Helper_DB_Ex();
+        $objDb->sfRankUp('dtb_payment', 'payment_id', $payment_id);
+    }
+
+    /**
+     * 支払方法の表示順をひとつ下げる.
+     * 
+     * @param integer $payment_id 支払方法ID
+     * @return void
+     */
+    public function rankDown($payment_id) {
+        $objDb = new SC_Helper_DB_Ex();
+        $objDb->sfRankDown('dtb_payment', 'payment_id', $payment_id);
+    }
+
+    /**
      * 決済モジュールを使用するかどうか.
      *
Index: /branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Payment.php
===================================================================
--- /branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Payment.php	(revision 21867)
+++ /branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Payment.php	(revision 22078)
@@ -68,15 +68,13 @@
     function action() {
 
-        $objDb = new SC_Helper_DB_Ex();
-
-        $mode = $this->getMode();
+        $objPayment = new SC_Helper_Payment_Ex();
 
         if (!empty($_POST)) {
             $objFormParam = new SC_FormParam_Ex();
-            $objFormParam->addParam('配送業者ID', 'payment_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK'));
+            $objFormParam->addParam('支払方法ID', 'payment_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK'));
             $objFormParam->setParam($_POST);
             $objFormParam->convParam();
 
-            $arrErr = $objFormParam->checkError();
+            $this->arrErr = $objFormParam->checkError();
             if (!empty($this->arrErr['payment_id'])) {
                 trigger_error('', E_USER_ERROR);
@@ -89,5 +87,5 @@
             case 'delete':
                 // ランク付きレコードの削除
-                $objDb->sfDeleteRankRecord('dtb_payment', 'payment_id', $post['payment_id']);
+                $objPayment->delete($post['payment_id']);
 
                 // 再表示
@@ -95,5 +93,5 @@
                 break;
             case 'up':
-                $objDb->sfRankUp('dtb_payment', 'payment_id', $post['payment_id']);
+                $objPayment->rankUp($post['payment_id']);
 
                 // 再表示
@@ -101,5 +99,5 @@
                 break;
             case 'down':
-                $objDb->sfRankDown('dtb_payment', 'payment_id', $post['payment_id']);
+                $objPayment->rankDown($post['payment_id']);
 
                 // 再表示
@@ -107,6 +105,5 @@
                 break;
         }
-        $this->arrDelivList = $objDb->sfGetIDValueList('dtb_deliv', 'deliv_id', 'service_name');
-        $this->arrPaymentListFree = $this->lfGetPaymentList();
+        $this->arrPaymentListFree = $objPayment->getList();
 
     }
@@ -120,16 +117,3 @@
         parent::destroy();
     }
-
-    /**
-     * 支払方法一覧の取得.
-     */
-    function lfGetPaymentList() {
-        $objQuery =& SC_Query_Ex::getSingletonInstance();
-        $col = 'payment_id, payment_method, charge, rule_max, upper_rule, note, fix, charge_flg';
-        $where = 'del_flg = 0';
-        $table = 'dtb_payment';
-        $objQuery->setOrder('rank DESC');
-        $arrRet = $objQuery->select($col, $table, $where);
-        return $arrRet;
-    }
 }
Index: /branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_PaymentInput.php
===================================================================
--- /branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_PaymentInput.php	(revision 21894)
+++ /branches/version-2_12-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_PaymentInput.php	(revision 22078)
@@ -73,4 +73,5 @@
     function action() {
 
+        $objPayment = new SC_Helper_Payment_Ex();
         $objFormParam = new SC_FormParam_Ex();
         $mode = $this->getMode();
@@ -89,8 +90,8 @@
                 $objFormParam->convParam();
                 $post = $objFormParam->getHashArray();
-                $this->arrErr = $this->lfCheckError($post, $objFormParam);
+                $this->arrErr = $this->lfCheckError($post, $objFormParam, $objPayment);
                 $this->charge_flg = $post['charge_flg'];
                 if (count($this->arrErr) == 0) {
-                    $this->lfRegistData($post['payment_id'], $_SESSION['member_id'], $objFormParam);
+                    $this->lfRegistData($objFormParam, $objPayment, $_SESSION['member_id'], $post['payment_id']);
                     $this->objUpFile->moveTempFile();
                     $this->tpl_onload = "location.href = './payment.php'; return;";
@@ -127,5 +128,5 @@
                 $post = $objFormParam->getHashArray();
                 if (count($this->arrErr) == 0) {
-                    $arrRet = $this->lfGetData($post['payment_id']);
+                    $arrRet = $objPayment->get($post['payment_id']);
 
                     $objFormParam->addParam('支払方法', 'payment_method', STEXT_LEN, 'KVa', array('EXIST_CHECK', 'MAX_LENGTH_CHECK'));
@@ -210,20 +211,11 @@
     }
 
-    /* DBからデータを読み込む */
-    function lfGetData($payment_id) {
-        $objQuery =& SC_Query_Ex::getSingletonInstance();
-        $where = 'payment_id = ?';
-        $arrRet = $objQuery->select('*', 'dtb_payment', $where, array($payment_id));
-        return $arrRet[0];
-    }
-
     /* DBへデータを登録する */
-    function lfRegistData($payment_id = '', $member_id, &$objFormParam) {
-
-        $objQuery =& SC_Query_Ex::getSingletonInstance();
-        $sqlval = $objFormParam->getHashArray();
-        $arrRet = $this->objUpFile->getDBFileList(); // ファイル名の取得
-        $sqlval = array_merge($sqlval, $arrRet);
+    function lfRegistData(&$objFormParam, SC_Helper_Payment_Ex $objPayment, $member_id, $payment_id = '') {
+
+        $sqlval = array_merge($objFormParam->getHashArray(), $this->objUpFile->getDBFileList());
         $sqlval['update_date'] = 'CURRENT_TIMESTAMP';
+        $sqlval['payment_id'] = $payment_id;
+        $sqlval['creator_id'] = $member_id;
 
         if ($sqlval['fix'] != '1') {
@@ -231,17 +223,5 @@
         }
 
-        // 新規登録
-        if ($payment_id == '') {
-            // INSERTの実行
-            $sqlval['creator_id'] = $member_id;
-            $sqlval['rank'] = $objQuery->max('rank', 'dtb_payment') + 1;
-            $sqlval['create_date'] = 'CURRENT_TIMESTAMP';
-            $sqlval['payment_id'] = $objQuery->nextVal('dtb_payment_payment_id');
-            $objQuery->insert('dtb_payment', $sqlval);
-        // 既存編集
-        } else {
-            $where = 'payment_id = ?';
-            $objQuery->update('dtb_payment', $sqlval, $where, array($payment_id));
-        }
+        $objPayment->save($sqlval);
     }
 
@@ -249,8 +229,8 @@
 
     /* 入力内容のチェック */
-    function lfCheckError($post, $objFormParam) {
+    function lfCheckError($post, $objFormParam, SC_Helper_Payment_Ex $objPayment) {
 
         // DBのデータを取得
-        $arrPaymentData = $this->lfGetData($post['payment_id']);
+        $arrPaymentData = $objPayment->get($post['payment_id']);
 
         // 手数料を設定できない場合には、手数料を0にする
