source: branches/beta/html/admin/order/status.php @ 16974

Revision 16974, 4.4 KB checked in by satou, 15 years ago (diff)

#140 【管理画面→受注管理→ステータス管理】サブナビのクリックでステータス変更してしまう不具合を改修。

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
10//¥¹¥Æ¡¼¥¿¥¹´ÉÍý-°ì³ç°ÜÆ°µ¡Ç½
11
12class LC_Page {
13    function LC_Page() {
14        $this->tpl_mainpage = 'order/status.tpl';
15        $this->tpl_subnavi = 'order/subnavi.tpl';
16        $this->tpl_mainno = 'order';
17        $this->tpl_subno = 'status';
18        global $arrORDERSTATUS;
19        global $arrORDERSTATUS_COLOR;
20        $this->arrORDERSTATUS = $arrORDERSTATUS;
21        $this->arrORDERSTATUS_COLOR = $arrORDERSTATUS_COLOR;
22       
23    }
24}
25
26$objPage = new LC_Page();
27$objView = new SC_AdminView();
28$objSess = new SC_Session();
29$objQuery = new SC_Query();
30
31// ǧ¾Ú²ÄÈݤÎȽÄê
32$objSess = new SC_Session();
33sfIsSuccess($objSess);
34
35//¥¹¥Æ¡¼¥¿¥¹¾ðÊó¡Ê²¾Äê¡Ë
36$objPage->arrForm = $_POST;
37
38//»ÙʧÊýË¡¤Î¼èÆÀ
39$objPage->arrPayment = sfGetIDValueList("dtb_payment", "payment_id", "payment_method");
40
41switch ($_POST['mode']){
42//¥¹¥Æ¡¼¥¿¥¹°ÜÆ°
43case 'move':
44    switch($_POST['change_status']){
45    //¿·µ¬¼õÉÕ
46    case ORDER_NEW:
47        lfStatusMove(ORDER_NEW, $_POST['move']);
48        break;
49    //Æþ¶âÂÔ¤Á
50    case ORDER_PAY_WAIT:
51        lfStatusMove(ORDER_PAY_WAIT, $_POST['move']);
52        break;
53    //¥­¥ã¥ó¥»¥ë
54    case ORDER_CANCEL:
55        lfStatusMove(ORDER_CANCEL, $_POST['move']);
56        break;
57    //¼è¤ê´ó¤»Ãæ
58    case ORDER_BACK_ORDER:
59        lfStatusMove(ORDER_BACK_ORDER, $_POST['move']);
60        break;
61    //ȯÁ÷ºÑ¤ß
62    case ORDER_DELIV:
63        lfStatusMove(ORDER_DELIV, $_POST['move']);
64        break;
65    //Æþ¶âºÑ¤ß
66    case ORDER_PRE_END:
67        lfStatusMove(ORDER_PRE_END, $_POST['move']);
68        break;
69    //ºï½ü
70    case 'delete':
71        lfStatusMove("delete", $_POST['move']);
72        break;
73    default:
74        break;
75    }
76    break;
77
78//¥µ¥Ö¥Ê¥Ó¸¡º÷
79case 'search':
80    break;
81
82//¥Ç¥Õ¥©¥ë¥È¤Ç¿·µ¬¼õÉÕ°ìÍ÷ɽ¼¨
83default:
84    $_POST['status'] = ORDER_NEW;
85    break;
86}
87
88//¸¡º÷·ë²Ì¤Îɽ¼¨
89lfStatusDisp($_POST['status'], $_POST['search_pageno']);
90$objPage->SelectedStatus = $_POST['status'];
91
92$objView->assignobj($objPage);
93$objView->display(MAIN_FRAME);
94
95//-----------------------------------------------------------------------------------------------------------------------------------
96
97//¥¹¥Æ¡¼¥¿¥¹°ìÍ÷¤Îɽ¼¨
98function lfStatusDisp($status, $pageno){
99    global $objPage;
100    global $objQuery;
101   
102    $select ="*";
103    $from = "dtb_order";
104    $where="del_flg=0 AND status=?";
105    $order = "order_id DESC";
106   
107    $linemax = $objQuery->count("dtb_order", "del_flg = 0 AND status=?", array($status));
108    $objPage->tpl_linemax = $linemax;
109   
110    // ¥Ú¡¼¥¸Á÷¤ê¤Î½èÍý
111    $page_max = ORDER_STATUS_MAX;
112   
113    // ¥Ú¡¼¥¸Á÷¤ê¤Î¼èÆÀ
114    $objNavi = new SC_PageNavi($pageno, $linemax, $page_max, "fnNaviSearchOnlyPage", NAVI_PMAX);
115    $objPage->tpl_strnavi = $objNavi->strnavi;      // ɽ¼¨Ê¸»úÎó
116    $startno = $objNavi->start_row;
117   
118    $objPage->tpl_pageno = $pageno;
119   
120    // ¼èÆÀÈϰϤλØÄê(³«»Ï¹ÔÈֹ桢¹Ô¿ô¤Î¥»¥Ã¥È)
121    $objQuery->setlimitoffset($page_max, $startno);
122   
123    //ɽ¼¨½ç½ø
124    $objQuery->setorder($order);
125   
126    //¸¡º÷·ë²Ì¤Î¼èÆÀ
127    $objPage->arrStatus = $objQuery->select($select, $from, $where, array($status));
128   
129    return $objPage;
130}
131
132//¥¹¥Æ¡¼¥¿¥¹¾ðÊó¤Î¹¹¿·¡Êºï½ü¡Ë
133function lfStatusMove($status_id, $arrMove){
134    global $objQuery;
135    global $objPage;
136    global $arrORDERSTATUS;
137   
138    $table = 'dtb_order';
139    $where = 'order_id = ?';
140    $arrUpdate = array('update_date' => 'NOW()');
141   
142    $delflg  = '1'; // ºï½ü¥Õ¥é¥°
143    $message = '';  // ¥¹¥Æ¡¼¥¿¥¹Êѹ¹¸å¤Ë¥Ý¥Ã¥×¥¢¥Ã¥×¤¹¤ë¥á¥Ã¥»¡¼¥¸¤ÎÆâÍÆ
144   
145    if ( $status_id == 'delete' ) {
146        $arrUpdate['del_flg'] = $delflg;
147        $message = 'ºï½ü';
148    }
149    // ¥¹¥Æ¡¼¥¿¥¹¤¬È¯Á÷ºÑ¤ß¤Î»þ¤ÏȯÁ÷Æü¤ò¹¹¿·
150    elseif ( $status_id == ORDER_DELIV ) {
151        $arrUpdate['status'] = $status_id;
152        $arrUpdate['commit_date'] = 'NOW()';
153        $message = $arrORDERSTATUS[$status_id] . '¤Ø°ÜÆ°';
154    }
155    else {
156        $arrUpdate['status'] = $status_id;
157        $message = $arrORDERSTATUS[$status_id] . '¤Ø°ÜÆ°';
158    }
159   
160    if ( isset($arrMove) ){
161        foreach ( $arrMove as $val ){
162            if ( $val != "" ) {
163                $objQuery->update($table, $arrUpdate, $where, array($val));
164            }
165           
166        }
167    }
168   
169    $objPage->tpl_onload = "window.alert('ÁªÂò¹àÌܤò" . $message . "¤·¤Þ¤·¤¿¡£');";
170}
171
172?>
Note: See TracBrowser for help on using the repository browser.