source: branches/beta/html/admin/order/index.php @ 14902

Revision 14902, 13.2 KB checked in by adati, 16 years ago (diff)

[マージ:dev(r14780-14781)]受注日、変更日で検索できるように変更

Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7require_once("../require.php");
8require_once("./index_csv.php");
9
10class LC_Page {
11    function LC_Page() {
12        $this->tpl_mainpage = 'order/index.tpl';
13        $this->tpl_subnavi = 'order/subnavi.tpl';
14        $this->tpl_mainno = 'order';       
15        $this->tpl_subno = 'index';
16        $this->tpl_pager = DATA_PATH . 'Smarty/templates/admin/pager.tpl';
17        $this->tpl_subtitle = '¼õÃí´ÉÍý';
18        global $arrORDERSTATUS;
19        $this->arrORDERSTATUS = $arrORDERSTATUS;
20        global $arrORDERSTATUS_COLOR;
21        $this->arrORDERSTATUS_COLOR = $arrORDERSTATUS_COLOR;
22        global $arrSex;
23        $this->arrSex = $arrSex;
24        global $arrPageMax;
25        $this->arrPageMax = $arrPageMax;
26    }
27}
28
29$conn = new SC_DBConn();
30$objPage = new LC_Page();
31$objView = new SC_AdminView();
32$objSess = new SC_Session();
33// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹
34$objFormParam = new SC_FormParam();
35// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½
36lfInitParam();
37$objFormParam->setParam($_POST);
38
39$objFormParam->splitParamCheckBoxes('search_order_sex');
40$objFormParam->splitParamCheckBoxes('search_payment_id');
41
42// ¸¡º÷¥ï¡¼¥É¤Î°ú¤­·Ñ¤®
43foreach ($_POST as $key => $val) {
44    if (ereg("^search_", $key)) {
45        switch($key) {
46            case 'search_order_sex':
47            case 'search_payment_id':
48                $objPage->arrHidden[$key] = sfMergeParamCheckBoxes($val);
49                break;
50            default:
51                $objPage->arrHidden[$key] = $val;
52                break;
53        }       
54    }
55}
56
57// ¥Ú¡¼¥¸Á÷¤êÍÑ
58$objPage->arrHidden['search_pageno'] = $_POST['search_pageno'];
59
60// ǧ¾Ú²ÄÈݤÎȽÄê
61sfIsSuccess($objSess);
62
63if($_POST['mode'] == 'delete') {
64    if(sfIsInt($_POST['order_id'])) {
65        $objQuery = new SC_Query();
66        $where = "order_id = ?";
67        $sqlval['del_flg'] = '1';
68        $objQuery->update("dtb_order", $sqlval, $where, array($_POST['order_id']));
69    }   
70}
71
72switch($_POST['mode']) {
73case 'delete':
74case 'csv':
75case 'delete_all':
76case 'search':
77    // ÆþÎÏÃͤÎÊÑ´¹
78    $objFormParam->convParam();
79    $objPage->arrErr = lfCheckError($arrRet);
80    $arrRet = $objFormParam->getHashArray();
81    // ÆþÎϤʤ·
82    if (count($objPage->arrErr) == 0) {
83        $where = "del_flg = 0";
84        foreach ($arrRet as $key => $val) {
85            if($val == "") {
86                continue;
87            }
88            $val = sfManualEscape($val);
89           
90            switch ($key) {
91                case 'search_order_name':
92                    if(DB_TYPE == "pgsql"){
93                        $where .= " AND order_name01||order_name02 ILIKE ?";
94                    }elseif(DB_TYPE == "mysql"){
95                        $where .= " AND concat(order_name01,order_name02) ILIKE ?";
96                    }
97                    $nonsp_val = ereg_replace("[ ¡¡]+","",$val);
98                    $arrval[] = "%$nonsp_val%";
99                    break;
100                case 'search_order_kana':
101                    if(DB_TYPE == "pgsql"){
102                        $where .= " AND order_kana01||order_kana02 ILIKE ?";
103                    }elseif(DB_TYPE == "mysql"){
104                        $where .= " AND concat(order_kana01,order_kana02) ILIKE ?";
105                    }
106                    $nonsp_val = ereg_replace("[ ¡¡]+","",$val);
107                    $arrval[] = "%$nonsp_val%";
108                    break;
109                case 'search_order_id1':
110                    $where .= " AND order_id >= ?";
111                    $arrval[] = $val;
112                    break;
113                case 'search_order_id2':
114                    $where .= " AND order_id <= ?";
115                    $arrval[] = $val;
116                    break;
117                case 'search_order_sex':
118                    $tmp_where = "";
119                    foreach($val as $element) {
120                        if($element != "") {
121                            if($tmp_where == "") {
122                                $tmp_where .= " AND (order_sex = ?";
123                            } else {
124                                $tmp_where .= " OR order_sex = ?";
125                            }
126                            $arrval[] = $element;
127                        }
128                    }
129                   
130                    if($tmp_where != "") {
131                        $tmp_where .= ")";
132                        $where .= " $tmp_where ";
133                    }                   
134                    break;
135                case 'search_order_tel':
136                    if(DB_TYPE == "pgsql"){
137                        $where .= " AND (order_tel01||order_tel02||order_tel03) ILIKE ?";
138                    }elseif(DB_TYPE == "mysql"){
139                        $where .= " AND concat(order_tel01,order_tel02,order_tel03) ILIKE ?";
140                    }
141                    $nonmark_val = ereg_replace("[()-]+","",$val);
142                    $arrval[] = "$nonmark_val%";
143                    break;
144                case 'search_order_email':
145                    $where .= " AND order_email ILIKE ?";
146                    $arrval[] = "%$val%";
147                    break;
148                case 'search_payment_id':
149                    $tmp_where = "";
150                    foreach($val as $element) {
151                        if($element != "") {
152                            if($tmp_where == "") {
153                                $tmp_where .= " AND (payment_id = ?";
154                            } else {
155                                $tmp_where .= " OR payment_id = ?";
156                            }
157                            $arrval[] = $element;
158                        }
159                    }
160                   
161                    if($tmp_where != "") {
162                        $tmp_where .= ")";
163                        $where .= " $tmp_where ";
164                    }
165                    break;
166                case 'search_total1':
167                    $where .= " AND total >= ?";
168                    $arrval[] = $val;
169                    break;
170                case 'search_total2':
171                    $where .= " AND total <= ?";
172                    $arrval[] = $val;
173                    break;
174                case 'search_startyear_c':
175                    $date = sfGetTimestamp($_POST['search_startyear_c'], $_POST['search_startmonth_c'], $_POST['search_startday_c']);
176                    $where.= " AND create_date >= ?";
177                    $arrval[] = $date;
178                    break;
179                case 'search_endyear_c':
180                    $date = sfGetTimestamp($_POST['search_endyear_c'], $_POST['search_endmonth_c'], $_POST['search_endday_c'], true);
181                    $where.= " AND create_date <= ?";
182                    $arrval[] = $date;
183                    break;
184                case 'search_startyear_u':
185                    $date = sfGetTimestamp($_POST['search_startyear_u'], $_POST['search_startmonth_u'], $_POST['search_startday_u']);
186                    $where.= " AND update_date >= ?";
187                    $arrval[] = $date;
188                    break;
189                case 'search_endyear_u':
190                    $date = sfGetTimestamp($_POST['search_endyear_u'], $_POST['search_endmonth_u'], $_POST['search_endday_u'], true);
191                    $where.= " AND update_date <= ?";
192                    $arrval[] = $date;
193                    break;
194                case 'search_sbirthyear':
195                    $date = sfGetTimestamp($_POST['search_sbirthyear'], $_POST['search_sbirthmonth'], $_POST['search_sbirthday']);
196                    $where.= " AND order_birth >= ?";
197                    $arrval[] = $date;
198                    break;
199                case 'search_ebirthyear':
200                    $date = sfGetTimestamp($_POST['search_ebirthyear'], $_POST['search_ebirthmonth'], $_POST['search_ebirthday'], true);
201                    $where.= " AND order_birth <= ?";
202                    $arrval[] = $date;
203                    break;
204                case 'search_order_status':
205                    $where.= " AND status = ?";
206                    $arrval[] = $val;
207                    break;
208                default:
209                    break;
210            }
211        }
212       
213        $order = "update_date DESC";
214       
215        switch($_POST['mode']) {
216        case 'csv':
217            // ¥ª¥×¥·¥ç¥ó¤Î»ØÄê
218            $option = "ORDER BY $order";
219           
220            // CSV½ÐÎÏ¥¿¥¤¥È¥ë¹Ô¤ÎºîÀ®
221            $arrCsvOutput = sfSwapArray(sfgetCsvOutput(3, " WHERE csv_id = 3 AND status = 1"));
222           
223            if (count($arrCsvOutput) <= 0) break;
224           
225            $arrCsvOutputCols = $arrCsvOutput['col'];
226            $arrCsvOutputTitle = $arrCsvOutput['disp_name'];
227            $head = sfGetCSVList($arrCsvOutputTitle);
228            $data = lfGetCSV("dtb_order", $where, $option, $arrval, $arrCsvOutputCols);
229           
230            // CSV¤òÁ÷¿®¤¹¤ë¡£
231            sfCSVDownload($head.$data);
232            exit;
233            break;
234        case 'delete_all':
235            // ¸¡º÷·ë²Ì¤ò¤¹¤Ù¤Æºï½ü
236            $sqlval['del_flg'] = 1;
237            $objQuery = new SC_Query();
238            $objQuery->update("dtb_order", $sqlval, $where, $arrval);
239            break;
240        default:
241            // ÆÉ¤ß¹þ¤àÎó¤È¥Æ¡¼¥Ö¥ë¤Î»ØÄê
242            $col = "*";
243            $from = "dtb_order";
244           
245            $objQuery = new SC_Query();
246            // ¹Ô¿ô¤Î¼èÆÀ
247            $linemax = $objQuery->count($from, $where, $arrval);
248            $objPage->tpl_linemax = $linemax;               // ²¿·ï¤¬³ºÅö¤·¤Þ¤·¤¿¡£É½¼¨ÍÑ
249           
250            // ¥Ú¡¼¥¸Á÷¤ê¤Î½èÍý
251            if(is_numeric($_POST['search_page_max'])) {
252                $page_max = $_POST['search_page_max'];
253            } else {
254                $page_max = SEARCH_PMAX;
255            }
256           
257            // ¥Ú¡¼¥¸Á÷¤ê¤Î¼èÆÀ
258            $objNavi = new SC_PageNavi($_POST['search_pageno'], $linemax, $page_max, "fnNaviSearchPage", NAVI_PMAX);
259            $startno = $objNavi->start_row;
260            $objPage->arrPagenavi = $objNavi->arrPagenavi;
261       
262            // ¼èÆÀÈϰϤλØÄê(³«»Ï¹ÔÈֹ桢¹Ô¿ô¤Î¥»¥Ã¥È)
263            $objQuery->setlimitoffset($page_max, $startno);
264            // ɽ¼¨½ç½ø
265            $objQuery->setorder($order);
266            // ¸¡º÷·ë²Ì¤Î¼èÆÀ
267            $objPage->arrResults = $objQuery->select($col, $from, $where, $arrval);
268        }
269    }
270    break;
271   
272default:
273    break;
274}
275$objDate = new SC_Date();
276// ÅÐÏ¿¡¦¹¹¿·Æü¸¡º÷ÍÑ
277$objDate->setStartYear(RELEASE_YEAR);
278$objDate->setEndYear(DATE("Y"));
279$objPage->arrRegistYear = $objDate->getYear();
280// À¸Ç¯·îÆü¸¡º÷ÍÑ
281$objDate->setStartYear(BIRTH_YEAR);
282$objDate->setEndYear(DATE("Y"));
283$objPage->arrBirthYear = $objDate->getYear();
284// ·îÆü¤ÎÀßÄê
285$objPage->arrMonth = $objDate->getMonth();
286$objPage->arrDay = $objDate->getDay();
287
288// ÆþÎÏÃͤμèÆÀ
289$objPage->arrForm = $objFormParam->getFormParamList();
290// »Ùʧ¤¤ÊýË¡¤Î¼èÆÀ
291$arrRet = sfGetPayment();
292$objPage->arrPayment = sfArrKeyValue($arrRet, 'payment_id', 'payment_method');
293
294$objView->assignobj($objPage);
295$objView->display(MAIN_FRAME);
296
297//-----------------------------------------------------------------------------------------------------------------------------------
298/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
299function lfInitParam() {
300    global $objFormParam;
301    $objFormParam->addParam("¼õÃíÈÖ¹æ1", "search_order_id1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
302    $objFormParam->addParam("¼õÃíÈÖ¹æ2", "search_order_id2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
303    $objFormParam->addParam("Âбþ¾õ¶·", "search_order_status", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
304    $objFormParam->addParam("¸ÜµÒ̾", "search_order_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
305    $objFormParam->addParam("¸ÜµÒ̾(¥«¥Ê)", "search_order_kana", STEXT_LEN, "KVCa", array("KANA_CHECK","MAX_LENGTH_CHECK"));
306    $objFormParam->addParam("À­ÊÌ", "search_order_sex", INT_LEN, "n", array("MAX_LENGTH_CHECK"));
307    $objFormParam->addParam("ǯÎð1", "search_age1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
308    $objFormParam->addParam("ǯÎð2", "search_age2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
309    $objFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "search_order_email", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
310    $objFormParam->addParam("TEL", "search_order_tel", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
311    $objFormParam->addParam("»Ùʧ¤¤ÊýË¡", "search_payment_id", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
312    $objFormParam->addParam("¹ØÆþ¶â³Û1", "search_total1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
313    $objFormParam->addParam("¹ØÆþ¶â³Û2", "search_total2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
314    $objFormParam->addParam("ɽ¼¨·ï¿ô", "search_page_max", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
315    $objFormParam->addParam("¼õÃíÆü", "search_startyear_c", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
316    $objFormParam->addParam("¼õÃíÆü", "search_startmonth_c", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
317    $objFormParam->addParam("¼õÃíÆü", "search_startday_c", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
318    $objFormParam->addParam("¼õÃíÆü", "search_endyear_c", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
319    $objFormParam->addParam("¼õÃíÆü", "search_endmonth_c", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
320    $objFormParam->addParam("¼õÃíÆü", "search_endday_c", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
321    $objFormParam->addParam("Êѹ¹Æü", "search_startyear_u", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
322    $objFormParam->addParam("Êѹ¹Æü", "search_startmonth_u", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
323    $objFormParam->addParam("Êѹ¹Æü", "search_startday_u", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
324    $objFormParam->addParam("Êѹ¹Æü", "search_endyear_u", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
325    $objFormParam->addParam("Êѹ¹Æü", "search_endmonth_u", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
326    $objFormParam->addParam("Êѹ¹Æü", "search_endday_u", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
327    $objFormParam->addParam("³«»ÏÆü", "search_sbirthyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
328    $objFormParam->addParam("³«»ÏÆü", "search_sbirthmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
329    $objFormParam->addParam("³«»ÏÆü", "search_sbirthday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
330    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
331    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
332    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
333}
334
335/* ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯ */
336function lfCheckError() {
337    global $objFormParam;
338    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£
339    $arrRet =  $objFormParam->getHashArray();
340    $objErr = new SC_CheckError($arrRet);
341    $objErr->arrErr = $objFormParam->checkError();
342   
343    // ÆÃ¼ì¹àÌÜ¥Á¥§¥Ã¥¯
344    $objErr->doFunc(array("¼õÃíÈÖ¹æ1", "¼õÃíÈÖ¹æ2", "search_order_id1", "search_order_id2"), array("GREATER_CHECK"));
345    $objErr->doFunc(array("ǯÎð1", "ǯÎð2", "search_age1", "search_age2"), array("GREATER_CHECK"));
346    $objErr->doFunc(array("¹ØÆþ¶â³Û1", "¹ØÆþ¶â³Û2", "search_total1", "search_total2"), array("GREATER_CHECK"));
347    $objErr->doFunc(array("³«»ÏÆü", "search_startyear", "search_startmonth", "search_startday"), array("CHECK_DATE"));
348    $objErr->doFunc(array("½ªÎ»Æü", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_DATE"));
349    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_startyear", "search_startmonth", "search_startday", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_SET_TERM"));
350   
351    $objErr->doFunc(array("³«»ÏÆü", "search_sbirthyear", "search_sbirthmonth", "search_sbirthday"), array("CHECK_DATE"));
352    $objErr->doFunc(array("½ªÎ»Æü", "search_ebirthyear", "search_ebirthmonth", "search_ebirthday"), array("CHECK_DATE"));
353    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_sbirthyear", "search_sbirthmonth", "search_sbirthday", "search_ebirthyear", "search_ebirthmonth", "search_ebirthday"), array("CHECK_SET_TERM"));
354
355    return $objErr->arrErr;
356}
357
358
359?>
Note: See TracBrowser for help on using the repository browser.