source: branches/dev/html/admin/order/index.php @ 17

Revision 17, 11.7 KB checked in by uehara, 17 years ago (diff)
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                    $where .= " AND order_name01||order_name02 ILIKE ?";
93                    $nonsp_val = ereg_replace("[ ¡¡]+","",$val);
94                    $arrval[] = "%$nonsp_val%";
95                    break;
96                case 'search_order_kana':
97                    $where .= " AND order_kana01||order_kana02 ILIKE ?";
98                    $nonsp_val = ereg_replace("[ ¡¡]+","",$val);
99                    $arrval[] = "%$nonsp_val%";
100                    break;
101                case 'search_order_id1':
102                    $where .= " AND order_id >= ?";
103                    $arrval[] = $val;
104                    break;
105                case 'search_order_id2':
106                    $where .= " AND order_id <= ?";
107                    $arrval[] = $val;
108                    break;
109                case 'search_order_sex':
110                    $tmp_where = "";
111                    foreach($val as $element) {
112                        if($element != "") {
113                            if($tmp_where == "") {
114                                $tmp_where .= " AND (order_sex = ?";
115                            } else {
116                                $tmp_where .= " OR order_sex = ?";
117                            }
118                            $arrval[] = $element;
119                        }
120                    }
121                   
122                    if($tmp_where != "") {
123                        $tmp_where .= ")";
124                        $where .= " $tmp_where ";
125                    }                   
126                    break;
127                case 'search_order_tel':
128                    $where .= " AND (order_tel01||order_tel02||order_tel03) ILIKE ?";
129                    $nonmark_val = ereg_replace("[()-]+","",$val);
130                    $arrval[] = "$nonmark_val%";
131                    break;
132                case 'search_order_email':
133                    $where .= " AND order_email ILIKE ?";
134                    $arrval[] = "%$val%";
135                    break;
136                case 'search_payment_id':
137                    $tmp_where = "";
138                    foreach($val as $element) {
139                        if($element != "") {
140                            if($tmp_where == "") {
141                                $tmp_where .= " AND (payment_id = ?";
142                            } else {
143                                $tmp_where .= " OR payment_id = ?";
144                            }
145                            $arrval[] = $element;
146                        }
147                    }
148                   
149                    if($tmp_where != "") {
150                        $tmp_where .= ")";
151                        $where .= " $tmp_where ";
152                    }
153                    break;
154                case 'search_total1':
155                    $where .= " AND total >= ?";
156                    $arrval[] = $val;
157                    break;
158                case 'search_total2':
159                    $where .= " AND total <= ?";
160                    $arrval[] = $val;
161                    break;
162                case 'search_startyear':
163                    $date = sfGetTimestamp($_POST['search_startyear'], $_POST['search_startmonth'], $_POST['search_startday']);
164                    $where.= " AND update_date >= ?";
165                    $arrval[] = $date;
166                    break;
167                case 'search_endyear':
168                    $date = sfGetTimestamp($_POST['search_endyear'], $_POST['search_endmonth'], $_POST['search_endday'], true);
169                    $where.= " AND update_date <= ?";
170                    $arrval[] = $date;
171                    break;
172                case 'search_sbirthyear':
173                    $date = sfGetTimestamp($_POST['search_sbirthyear'], $_POST['search_sbirthmonth'], $_POST['search_sbirthday']);
174                    $where.= " AND order_birth >= ?";
175                    $arrval[] = $date;
176                    break;
177                case 'search_ebirthyear':
178                    $date = sfGetTimestamp($_POST['search_ebirthyear'], $_POST['search_ebirthmonth'], $_POST['search_ebirthday'], true);
179                    $where.= " AND order_birth <= ?";
180                    $arrval[] = $date;
181                    break;
182                case 'search_order_status':
183                    $where.= " AND status = ?";
184                    $arrval[] = $val;
185                    break;
186                default:
187                    break;
188            }
189        }
190       
191        $order = "update_date DESC";
192       
193        switch($_POST['mode']) {
194        case 'csv':
195            // ¥ª¥×¥·¥ç¥ó¤Î»ØÄê
196            $option = "ORDER BY $order";
197           
198            // CSV½ÐÎÏ¥¿¥¤¥È¥ë¹Ô¤ÎºîÀ®
199            $arrCsvOutput = sfSwapArray(sfgetCsvOutput(3, " WHERE csv_id = 3 AND status = 1"));
200           
201            if (count($arrCsvOutput) <= 0) break;
202           
203            $arrCsvOutputCols = $arrCsvOutput['col'];
204            $arrCsvOutputTitle = $arrCsvOutput['disp_name'];
205            $head = sfGetCSVList($arrCsvOutputTitle);
206            $data = lfGetCSV("dtb_order", $where, $option, $arrval, $arrCsvOutputCols);
207           
208            // CSV¤òÁ÷¿®¤¹¤ë¡£
209            sfCSVDownload($head.$data);
210            exit;
211            break;
212        case 'delete_all':
213            // ¸¡º÷·ë²Ì¤ò¤¹¤Ù¤Æºï½ü
214            $sqlval['del_flg'] = 1;
215            $objQuery = new SC_Query();
216            $objQuery->update("dtb_order", $sqlval, $where, $arrval);
217            break;
218        default:
219            // Æɤ߹þ¤àÎó¤È¥Æ¡¼¥Ö¥ë¤Î»ØÄê
220            $col = "*";
221            $from = "dtb_order";
222           
223            $objQuery = new SC_Query();
224            // ¹Ô¿ô¤Î¼èÆÀ
225            $linemax = $objQuery->count($from, $where, $arrval);
226            $objPage->tpl_linemax = $linemax;               // ²¿·ï¤¬³ºÅö¤·¤Þ¤·¤¿¡£É½¼¨ÍÑ
227           
228            // ¥Ú¡¼¥¸Á÷¤ê¤Î½èÍý
229            if(is_numeric($_POST['search_page_max'])) {
230                $page_max = $_POST['search_page_max'];
231            } else {
232                $page_max = SEARCH_PMAX;
233            }
234           
235            // ¥Ú¡¼¥¸Á÷¤ê¤Î¼èÆÀ
236            $objNavi = new SC_PageNavi($_POST['search_pageno'], $linemax, $page_max, "fnNaviSearchPage", NAVI_PMAX);
237            $startno = $objNavi->start_row;
238            $objPage->arrPagenavi = $objNavi->arrPagenavi;     
239           
240            // ¼èÆÀÈϰϤλØÄê(³«»Ï¹ÔÈֹ桢¹Ô¿ô¤Î¥»¥Ã¥È)
241            $objQuery->setlimitoffset($page_max, $startno);
242            // ɽ¼¨½ç½ø
243            $objQuery->setorder($order);
244            // ¸¡º÷·ë²Ì¤Î¼èÆÀ
245            $objPage->arrResults = $objQuery->select($col, $from, $where, $arrval);
246        }
247    }
248    break;
249   
250default:
251    break;
252}
253
254$objDate = new SC_Date();
255// ÅÐÏ¿¡¦¹¹¿·Æü¸¡º÷ÍÑ
256$objDate->setStartYear(RELEASE_YEAR);
257$objDate->setEndYear(DATE("Y"));
258$objPage->arrRegistYear = $objDate->getYear();
259// À¸Ç¯·îÆü¸¡º÷ÍÑ
260$objDate->setStartYear(BIRTH_YEAR);
261$objDate->setEndYear(DATE("Y"));
262$objPage->arrBirthYear = $objDate->getYear();
263// ·îÆü¤ÎÀßÄê
264$objPage->arrMonth = $objDate->getMonth();
265$objPage->arrDay = $objDate->getDay();
266
267// ÆþÎÏÃͤμèÆÀ
268$objPage->arrForm = $objFormParam->getFormParamList();
269// »Ùʧ¤¤ÊýË¡¤Î¼èÆÀ
270$arrRet = sfGetPayment();
271$objPage->arrPayment = sfArrKeyValue($arrRet, 'payment_id', 'payment_method');
272
273$objView->assignobj($objPage);
274$objView->display(MAIN_FRAME);
275
276//-----------------------------------------------------------------------------------------------------------------------------------
277/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
278function lfInitParam() {
279    global $objFormParam;
280    $objFormParam->addParam("¼õÃíÈÖ¹æ1", "search_order_id1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
281    $objFormParam->addParam("¼õÃíÈÖ¹æ2", "search_order_id2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
282    $objFormParam->addParam("Âбþ¾õ¶·", "search_order_status", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
283    $objFormParam->addParam("¸ÜµÒ̾", "search_order_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
284    $objFormParam->addParam("¸ÜµÒ̾(¥«¥Ê)", "search_order_kana", STEXT_LEN, "KVCa", array("KANA_CHECK","MAX_LENGTH_CHECK"));
285    $objFormParam->addParam("À­ÊÌ", "search_order_sex", INT_LEN, "n", array("MAX_LENGTH_CHECK"));
286    $objFormParam->addParam("ǯÎð1", "search_age1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
287    $objFormParam->addParam("ǯÎð2", "search_age2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
288    $objFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "search_order_email", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
289    $objFormParam->addParam("TEL", "search_order_tel", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
290    $objFormParam->addParam("»Ùʧ¤¤ÊýË¡", "search_payment_id", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
291    $objFormParam->addParam("¹ØÆþ¶â³Û1", "search_total1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
292    $objFormParam->addParam("¹ØÆþ¶â³Û2", "search_total2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
293    $objFormParam->addParam("ɽ¼¨·ï¿ô", "search_page_max", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
294    $objFormParam->addParam("³«»ÏÆü", "search_startyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
295    $objFormParam->addParam("³«»ÏÆü", "search_startmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
296    $objFormParam->addParam("³«»ÏÆü", "search_startday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
297    $objFormParam->addParam("½ªÎ»Æü", "search_endyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
298    $objFormParam->addParam("½ªÎ»Æü", "search_endmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
299    $objFormParam->addParam("½ªÎ»Æü", "search_endday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
300    $objFormParam->addParam("³«»ÏÆü", "search_sbirthyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
301    $objFormParam->addParam("³«»ÏÆü", "search_sbirthmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
302    $objFormParam->addParam("³«»ÏÆü", "search_sbirthday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
303    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
304    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
305    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
306}
307
308/* ÆþÎÏÆâÍƤΥÁ¥§¥Ã¥¯ */
309function lfCheckError() {
310    global $objFormParam;
311    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£
312    $arrRet =  $objFormParam->getHashArray();
313    $objErr = new SC_CheckError($arrRet);
314    $objErr->arrErr = $objFormParam->checkError();
315   
316    // Æüì¹àÌÜ¥Á¥§¥Ã¥¯
317    $objErr->doFunc(array("¼õÃíÈÖ¹æ1", "¼õÃíÈÖ¹æ2", "search_order_id1", "search_order_id2"), array("GREATER_CHECK"));
318    $objErr->doFunc(array("ǯÎð1", "ǯÎð2", "search_age1", "search_age2"), array("GREATER_CHECK"));
319    $objErr->doFunc(array("¹ØÆþ¶â³Û1", "¹ØÆþ¶â³Û2", "search_total1", "search_total2"), array("GREATER_CHECK"));
320    $objErr->doFunc(array("³«»ÏÆü", "search_startyear", "search_startmonth", "search_startday"), array("CHECK_DATE"));
321    $objErr->doFunc(array("½ªÎ»Æü", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_DATE"));
322    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_startyear", "search_startmonth", "search_startday", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_SET_TERM"));
323   
324    $objErr->doFunc(array("³«»ÏÆü", "search_sbirthyear", "search_sbirthmonth", "search_sbirthday"), array("CHECK_DATE"));
325    $objErr->doFunc(array("½ªÎ»Æü", "search_ebirthyear", "search_ebirthmonth", "search_ebirthday"), array("CHECK_DATE"));
326    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_sbirthyear", "search_sbirthmonth", "search_sbirthday", "search_ebirthyear", "search_ebirthmonth", "search_ebirthday"), array("CHECK_SET_TERM"));
327
328    return $objErr->arrErr;
329}
330
331
332?>
Note: See TracBrowser for help on using the repository browser.