Index: /branches/version-2_12-dev/data/class/pages/admin/total/LC_Page_Admin_Total.php
===================================================================
--- /branches/version-2_12-dev/data/class/pages/admin/total/LC_Page_Admin_Total.php	(revision 22093)
+++ /branches/version-2_12-dev/data/class/pages/admin/total/LC_Page_Admin_Total.php	(revision 22138)
@@ -113,6 +113,5 @@
         // パラメーター情報の初期化
         $this->lfInitParam($objFormParam);
-        $objFormParam->setParam($_POST);
-        $objFormParam->setParam($_GET);
+        $objFormParam->setParam($_REQUEST);
 
         // 検索ワードの引き継ぎ
@@ -136,4 +135,5 @@
 
                     $this->tpl_page_type = 'total/page_'. $page .'.tpl';
+                    // FIXME 可読性が低いので call_user_func_array を使わない (またはメソッド名を1つの定数値とする) 実装に。
                     list($this->arrResults, $this->tpl_image) = call_user_func_array(array($this, 'lfGetOrder'.$page),
                                                                                      array($type, $sdate, $edate));
@@ -207,13 +207,13 @@
 
         // 月度集計
-        $objFormParam->addParam('月度', 'search_startyear_m', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startyear_m']);
-        $objFormParam->addParam('月度', 'search_startmonth_m', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startmonth_m']);
+        $objFormParam->addParam('月度(年)', 'search_startyear_m', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startyear_m']);
+        $objFormParam->addParam('月度(月)', 'search_startmonth_m', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startmonth_m']);
         // 期間集計
-        $objFormParam->addParam('開始日', 'search_startyear', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startyear']);
-        $objFormParam->addParam('開始日', 'search_startmonth', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startmonth']);
-        $objFormParam->addParam('開始日', 'search_startday', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startday']);
-        $objFormParam->addParam('終了日', 'search_endyear', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endyear']);
-        $objFormParam->addParam('終了日', 'search_endmonth', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endmonth']);
-        $objFormParam->addParam('終了日', 'search_endday', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endday']);
+        $objFormParam->addParam('期間(開始日)', 'search_startyear', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startyear']);
+        $objFormParam->addParam('期間(開始日)', 'search_startmonth', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startmonth']);
+        $objFormParam->addParam('期間(開始日)', 'search_startday', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startday']);
+        $objFormParam->addParam('期間(終了日)', 'search_endyear', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endyear']);
+        $objFormParam->addParam('期間(終了日)', 'search_endmonth', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endmonth']);
+        $objFormParam->addParam('期間(終了日)', 'search_endday', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endday']);
 
         // hiddenデータの取得用
@@ -221,5 +221,5 @@
         $objFormParam->addParam('', 'type');
         $objFormParam->addParam('', 'mode');
-        $objFormParam->addParam('', 'form');
+        $objFormParam->addParam('', 'search_form');
     }
 
@@ -228,19 +228,23 @@
 
         $objFormParam->convParam();
-        $objErr         = new SC_CheckError_Ex();
+        $objErr         = new SC_CheckError_Ex($objFormParam->getHashArray());
         $objErr->arrErr = $objFormParam->checkError();
 
         // 特殊項目チェック
-        if ($objFormParam->getValue('form') == 1) {
-            $objErr->doFunc(array('月度', 'search_startyear_m'), array('ONE_EXIST_CHECK'));
-        }
-
-        if ($objFormParam->getValue('form') == 2) {
-            $objErr->doFunc(array('期間', 'search_startyear', 'search_startmonth', 'search_startday', 'search_endyear', 'search_endmonth', 'search_endday'), array('FULL_EXIST_CHECK'));
-        }
-        $objErr->doFunc(array('月度', 'search_startyear_m', 'search_startmonth_m'), array('ALL_EXIST_CHECK'));
-        $objErr->doFunc(array('開始日', 'search_startyear', 'search_startmonth', 'search_startday'), array('CHECK_DATE'));
-        $objErr->doFunc(array('終了日', 'search_endyear', 'search_endmonth', 'search_endday'), array('CHECK_DATE'));
-        $objErr->doFunc(array('開始日', '終了日', 'search_startyear', 'search_startmonth', 'search_startday', 'search_endyear', 'search_endmonth', 'search_endday'), array('CHECK_SET_TERM'));
+
+        // 月度集計
+        if ($objFormParam->getValue('search_form') == 1) {
+            $objErr->doFunc(array('月度', 'search_startyear_m', 'search_startmonth_m'), array('FULL_EXIST_CHECK'));
+        }
+
+        // 期間集計
+        if ($objFormParam->getValue('search_form') == 2) {
+            $objErr->doFunc(array('期間(開始日)', 'search_startyear', 'search_startmonth', 'search_startday'), array('FULL_EXIST_CHECK'));
+            $objErr->doFunc(array('期間(終了日)', 'search_endyear', 'search_endmonth', 'search_endday'), array('FULL_EXIST_CHECK'));
+            $objErr->doFunc(array('期間(開始日)', 'search_startyear', 'search_startmonth', 'search_startday'), array('CHECK_DATE'));
+            $objErr->doFunc(array('期間(終了日)', 'search_endyear', 'search_endmonth', 'search_endday'), array('CHECK_DATE'));
+            $objErr->doFunc(array('期間(開始日)', '期間(終了日)', 'search_startyear', 'search_startmonth', 'search_startday', 'search_endyear', 'search_endmonth', 'search_endday'), array('CHECK_SET_TERM'));
+        }
+
         return $objErr->arrErr;
     }
@@ -272,32 +276,16 @@
     /* フォームで入力された日付を適切な形にする */
     function lfSetStartEndDate(&$objFormParam) {
-
         $arrRet = $objFormParam->getHashArray();
-        $out_flg = 0;
-
-        foreach ($arrRet as $key => $val) {
-            if ($val == '') {
-                continue;
-            }
-            switch ($key) {
-                case 'search_startyear':
-                    $sdate = $objFormParam->getValue('search_startyear') . '/' . $objFormParam->getValue('search_startmonth') . '/' . $objFormParam->getValue('search_startday');
-                    break;
-                case 'search_endyear':
-                    $edate = $objFormParam->getValue('search_endyear') . '/' . $objFormParam->getValue('search_endmonth') . '/' . $objFormParam->getValue('search_endday');
-                    break;
-                case 'search_startyear_m':
-                    list($sdate, $edate) = SC_Utils_Ex::sfTermMonth($objFormParam->getValue('search_startyear_m'),
-                                                                    $objFormParam->getValue('search_startmonth_m'),
-                                                                    CLOSE_DAY);
-                    $out_flg = 1;
-                    break;
-                default:
-                    break;
-            }
-            // 月度集計の場合に、集計期間が本日日付で上書きされてしまうのを回避するため
-            if (($objFormParam->getValue('form') == 1) && ($out_flg == 1)) {
-                break;
-            }
+
+        // 月度集計
+        if ($arrRet['search_form'] == 1) {
+            list($sdate, $edate) = SC_Utils_Ex::sfTermMonth($arrRet['search_startyear_m'],
+                                                            $arrRet['search_startmonth_m'],
+                                                            CLOSE_DAY);
+        }
+        // 期間集計
+        elseif ($arrRet['search_form'] == 2) {
+            $sdate = $arrRet['search_startyear'] . '/' . $arrRet['search_startmonth'] . '/' . $arrRet['search_startday'];
+            $edate = $arrRet['search_endyear'] . '/' . $arrRet['search_endmonth'] . '/' . $arrRet['search_endday'];
         }
 
Index: /branches/version-2_12-dev/data/Smarty/templates/admin/total/index.tpl
===================================================================
--- /branches/version-2_12-dev/data/Smarty/templates/admin/total/index.tpl	(revision 22003)
+++ /branches/version-2_12-dev/data/Smarty/templates/admin/total/index.tpl	(revision 22138)
@@ -32,5 +32,5 @@
                     <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" />
                     <input type="hidden" name="mode" value="search" />
-                    <input type="hidden" name="form" value="1" />
+                    <input type="hidden" name="search_form" value="1" />
                     <input type="hidden" name="page" value="<!--{$arrForm.page.value|h}-->" />
                     <input type="hidden" name="type" value="<!--{$smarty.post.type|h}-->" />
@@ -55,5 +55,5 @@
                     <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" />
                     <input type="hidden" name="mode" value="search" />
-                    <input type="hidden" name="form" value="2" />
+                    <input type="hidden" name="search_form" value="2" />
                     <input type="hidden" name="page" value="<!--{$arrForm.page.value|h}-->" />
                     <input type="hidden" name="type" value="<!--{$smarty.post.type|h}-->" />
@@ -99,5 +99,4 @@
         <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" />
         <input type="hidden" name="mode" value="search" />
-        <input type="hidden" name="form" value="<!--{$arrForm.form.value|h}-->" />
         <input type="hidden" name="type" value="<!--{$arrForm.type.value|h}-->" />
         <input type="hidden" name="page" value="<!--{$arrForm.page.value|h}-->" />
@@ -117,5 +116,5 @@
                 <div id="graph-image">
                     <!--{* <img src="<!--{$tpl_image}-->?<!--{$cashtime}-->" alt="グラフ"> *}-->
-                    <img src="?draw_image=true&amp;type=<!--{$smarty.post.type|h}-->&amp;mode=search&amp;page=<!--{$smarty.post.page|h}-->&amp;search_startyear_m=<!--{$smarty.post.search_startyear_m|h}-->&amp;search_startmonth_m=<!--{$smarty.post.search_startmonth_m|h}-->&amp;search_startyear=<!--{$smarty.post.search_startyear|h}-->&amp;search_startmonth=<!--{$smarty.post.search_startmonth|h}-->&amp;search_startday=<!--{$smarty.post.search_startday|h}-->&amp;search_endyear=<!--{$smarty.post.search_endyear|h}-->&amp;search_endmonth=<!--{$smarty.post.search_endmonth|h}-->&amp;search_endday=<!--{$smarty.post.search_endday|h}-->" alt="グラフ" />
+                    <img src="?draw_image=true&amp;type=<!--{$smarty.post.type|h}-->&amp;mode=search&amp;search_form=<!--{$smarty.post.search_form|h}-->&amp;page=<!--{$smarty.post.page|h}-->&amp;search_startyear_m=<!--{$smarty.post.search_startyear_m|h}-->&amp;search_startmonth_m=<!--{$smarty.post.search_startmonth_m|h}-->&amp;search_startyear=<!--{$smarty.post.search_startyear|h}-->&amp;search_startmonth=<!--{$smarty.post.search_startmonth|h}-->&amp;search_startday=<!--{$smarty.post.search_startday|h}-->&amp;search_endyear=<!--{$smarty.post.search_endyear|h}-->&amp;search_endmonth=<!--{$smarty.post.search_endmonth|h}-->&amp;search_endday=<!--{$smarty.post.search_endday|h}-->" alt="グラフ" />
                 </div>
                 <!--{/if}-->
