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

Revision 14676, 12.1 KB checked in by adati, 17 years ago (diff)

1.4.0a-betaのマージ

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':
175                    $date = sfGetTimestamp($_POST['search_startyear'], $_POST['search_startmonth'], $_POST['search_startday']);
176                    $where.= " AND update_date >= ?";
177                    $arrval[] = $date;
178                    break;
179                case 'search_endyear':
180                    $date = sfGetTimestamp($_POST['search_endyear'], $_POST['search_endmonth'], $_POST['search_endday'], true);
181                    $where.= " AND update_date <= ?";
182                    $arrval[] = $date;
183                    break;
184                case 'search_sbirthyear':
185                    $date = sfGetTimestamp($_POST['search_sbirthyear'], $_POST['search_sbirthmonth'], $_POST['search_sbirthday']);
186                    $where.= " AND order_birth >= ?";
187                    $arrval[] = $date;
188                    break;
189                case 'search_ebirthyear':
190                    $date = sfGetTimestamp($_POST['search_ebirthyear'], $_POST['search_ebirthmonth'], $_POST['search_ebirthday'], true);
191                    $where.= " AND order_birth <= ?";
192                    $arrval[] = $date;
193                    break;
194                case 'search_order_status':
195                    $where.= " AND status = ?";
196                    $arrval[] = $val;
197                    break;
198                default:
199                    break;
200            }
201        }
202       
203        $order = "update_date DESC";
204       
205        switch($_POST['mode']) {
206        case 'csv':
207            // ¥ª¥×¥·¥ç¥ó¤Î»ØÄê
208            $option = "ORDER BY $order";
209           
210            // CSV½ÐÎÏ¥¿¥¤¥È¥ë¹Ô¤ÎºîÀ®
211            $arrCsvOutput = sfSwapArray(sfgetCsvOutput(3, " WHERE csv_id = 3 AND status = 1"));
212           
213            if (count($arrCsvOutput) <= 0) break;
214           
215            $arrCsvOutputCols = $arrCsvOutput['col'];
216            $arrCsvOutputTitle = $arrCsvOutput['disp_name'];
217            $head = sfGetCSVList($arrCsvOutputTitle);
218            $data = lfGetCSV("dtb_order", $where, $option, $arrval, $arrCsvOutputCols);
219           
220            // CSV¤òÁ÷¿®¤¹¤ë¡£
221            sfCSVDownload($head.$data);
222            exit;
223            break;
224        case 'delete_all':
225            // ¸¡º÷·ë²Ì¤ò¤¹¤Ù¤Æºï½ü
226            $sqlval['del_flg'] = 1;
227            $objQuery = new SC_Query();
228            $objQuery->update("dtb_order", $sqlval, $where, $arrval);
229            break;
230        default:
231            // Æɤ߹þ¤àÎó¤È¥Æ¡¼¥Ö¥ë¤Î»ØÄê
232            $col = "*";
233            $from = "dtb_order";
234           
235            $objQuery = new SC_Query();
236            // ¹Ô¿ô¤Î¼èÆÀ
237            $linemax = $objQuery->count($from, $where, $arrval);
238            $objPage->tpl_linemax = $linemax;               // ²¿·ï¤¬³ºÅö¤·¤Þ¤·¤¿¡£É½¼¨ÍÑ
239           
240            // ¥Ú¡¼¥¸Á÷¤ê¤Î½èÍý
241            if(is_numeric($_POST['search_page_max'])) {
242                $page_max = $_POST['search_page_max'];
243            } else {
244                $page_max = SEARCH_PMAX;
245            }
246           
247            // ¥Ú¡¼¥¸Á÷¤ê¤Î¼èÆÀ
248            $objNavi = new SC_PageNavi($_POST['search_pageno'], $linemax, $page_max, "fnNaviSearchPage", NAVI_PMAX);
249            $startno = $objNavi->start_row;
250            $objPage->arrPagenavi = $objNavi->arrPagenavi;
251       
252            // ¼èÆÀÈϰϤλØÄê(³«»Ï¹ÔÈֹ桢¹Ô¿ô¤Î¥»¥Ã¥È)
253            $objQuery->setlimitoffset($page_max, $startno);
254            // ɽ¼¨½ç½ø
255            $objQuery->setorder($order);
256            // ¸¡º÷·ë²Ì¤Î¼èÆÀ
257            $objPage->arrResults = $objQuery->select($col, $from, $where, $arrval);
258        }
259    }
260    break;
261   
262default:
263    break;
264}
265$objDate = new SC_Date();
266// ÅÐÏ¿¡¦¹¹¿·Æü¸¡º÷ÍÑ
267$objDate->setStartYear(RELEASE_YEAR);
268$objDate->setEndYear(DATE("Y"));
269$objPage->arrRegistYear = $objDate->getYear();
270// À¸Ç¯·îÆü¸¡º÷ÍÑ
271$objDate->setStartYear(BIRTH_YEAR);
272$objDate->setEndYear(DATE("Y"));
273$objPage->arrBirthYear = $objDate->getYear();
274// ·îÆü¤ÎÀßÄê
275$objPage->arrMonth = $objDate->getMonth();
276$objPage->arrDay = $objDate->getDay();
277
278// ÆþÎÏÃͤμèÆÀ
279$objPage->arrForm = $objFormParam->getFormParamList();
280// »Ùʧ¤¤ÊýË¡¤Î¼èÆÀ
281$arrRet = sfGetPayment();
282$objPage->arrPayment = sfArrKeyValue($arrRet, 'payment_id', 'payment_method');
283
284$objView->assignobj($objPage);
285$objView->display(MAIN_FRAME);
286
287//-----------------------------------------------------------------------------------------------------------------------------------
288/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
289function lfInitParam() {
290    global $objFormParam;
291    $objFormParam->addParam("¼õÃíÈÖ¹æ1", "search_order_id1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
292    $objFormParam->addParam("¼õÃíÈÖ¹æ2", "search_order_id2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
293    $objFormParam->addParam("Âбþ¾õ¶·", "search_order_status", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
294    $objFormParam->addParam("¸ÜµÒ̾", "search_order_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
295    $objFormParam->addParam("¸ÜµÒ̾(¥«¥Ê)", "search_order_kana", STEXT_LEN, "KVCa", array("KANA_CHECK","MAX_LENGTH_CHECK"));
296    $objFormParam->addParam("À­ÊÌ", "search_order_sex", INT_LEN, "n", array("MAX_LENGTH_CHECK"));
297    $objFormParam->addParam("ǯÎð1", "search_age1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
298    $objFormParam->addParam("ǯÎð2", "search_age2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
299    $objFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "search_order_email", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
300    $objFormParam->addParam("TEL", "search_order_tel", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK"));
301    $objFormParam->addParam("»Ùʧ¤¤ÊýË¡", "search_payment_id", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
302    $objFormParam->addParam("¹ØÆþ¶â³Û1", "search_total1", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
303    $objFormParam->addParam("¹ØÆþ¶â³Û2", "search_total2", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
304    $objFormParam->addParam("ɽ¼¨·ï¿ô", "search_page_max", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
305    $objFormParam->addParam("³«»ÏÆü", "search_startyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
306    $objFormParam->addParam("³«»ÏÆü", "search_startmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
307    $objFormParam->addParam("³«»ÏÆü", "search_startday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
308    $objFormParam->addParam("½ªÎ»Æü", "search_endyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
309    $objFormParam->addParam("½ªÎ»Æü", "search_endmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
310    $objFormParam->addParam("½ªÎ»Æü", "search_endday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
311    $objFormParam->addParam("³«»ÏÆü", "search_sbirthyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
312    $objFormParam->addParam("³«»ÏÆü", "search_sbirthmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
313    $objFormParam->addParam("³«»ÏÆü", "search_sbirthday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
314    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthyear", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
315    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthmonth", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
316    $objFormParam->addParam("½ªÎ»Æü", "search_ebirthday", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
317}
318
319/* ÆþÎÏÆâÍƤΥÁ¥§¥Ã¥¯ */
320function lfCheckError() {
321    global $objFormParam;
322    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£
323    $arrRet =  $objFormParam->getHashArray();
324    $objErr = new SC_CheckError($arrRet);
325    $objErr->arrErr = $objFormParam->checkError();
326   
327    // Æüì¹àÌÜ¥Á¥§¥Ã¥¯
328    $objErr->doFunc(array("¼õÃíÈÖ¹æ1", "¼õÃíÈÖ¹æ2", "search_order_id1", "search_order_id2"), array("GREATER_CHECK"));
329    $objErr->doFunc(array("ǯÎð1", "ǯÎð2", "search_age1", "search_age2"), array("GREATER_CHECK"));
330    $objErr->doFunc(array("¹ØÆþ¶â³Û1", "¹ØÆþ¶â³Û2", "search_total1", "search_total2"), array("GREATER_CHECK"));
331    $objErr->doFunc(array("³«»ÏÆü", "search_startyear", "search_startmonth", "search_startday"), array("CHECK_DATE"));
332    $objErr->doFunc(array("½ªÎ»Æü", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_DATE"));
333    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_startyear", "search_startmonth", "search_startday", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_SET_TERM"));
334   
335    $objErr->doFunc(array("³«»ÏÆü", "search_sbirthyear", "search_sbirthmonth", "search_sbirthday"), array("CHECK_DATE"));
336    $objErr->doFunc(array("½ªÎ»Æü", "search_ebirthyear", "search_ebirthmonth", "search_ebirthday"), array("CHECK_DATE"));
337    $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_sbirthyear", "search_sbirthmonth", "search_sbirthday", "search_ebirthyear", "search_ebirthmonth", "search_ebirthday"), array("CHECK_SET_TERM"));
338
339    return $objErr->arrErr;
340}
341
342
343?>
Note: See TracBrowser for help on using the repository browser.