source: temp/trunk/html/admin/home.php @ 5108

Revision 5108, 5.2 KB checked in by kakinaka, 20 years ago (diff)

blank

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<?php
2
3require_once("./require.php");
4
5class LC_Page {
6    var $arrSession;
7    function LC_Page() {
8        $this->tpl_mainpage = 'home.tpl';
9    }
10}
11
12$conn = new SC_DBConn();
13$objPage = new LC_Page();
14$objView = new SC_AdminView();
15$objSess = new SC_Session();
16
17// ǧ¾Ú²ÄÈݤÎȽÄê
18sfIsSuccess($objSess);
19
20// ¸½ºß¤Î²ñ°÷¿ô
21$objPage->customer_cnt = lfGetCustomerCnt($conn);
22
23// ºòÆü¤ÎÇä¾å¹â
24$objPage->order_yesterday_amount = lfGetOrderYesterday($conn, "SUM");
25
26// ºòÆü¤ÎÇä¾å·ï¿ô
27$objPage->order_yesterday_cnt = lfGetOrderYesterday($conn, "COUNT");
28
29// º£·î¤ÎÇä¾å¹â
30$objPage->order_month_amount = lfGetOrderMonth($conn, "SUM");
31
32// º£·î¤ÎÇä¾å·ï¿ô
33$objPage->order_month_cnt = lfGetOrderMonth($conn, "COUNT");
34
35// ¸ÜµÒ¤ÎÎ߷ץݥ¤¥ó¥È
36$objPage->customer_point = lfGetTotalCustomerPoint();
37
38//ºòÆü¤Î¥ì¥Ó¥å¡¼½ñ¤­¹þ¤ß¿ô
39$objPage->review_yesterday_cnt = lfGetReviewYesterday($conn);
40
41//¥ì¥Ó¥å¡¼½ñ¤­¹þ¤ßÈóɽ¼¨¿ô
42$objPage->review_nondisp_cnt = lfGetReviewNonDisp($conn);
43
44// ÉÊÀڤ쾦ÉÊ
45$objPage->arrSoldout = lfGetSoldOut();
46
47// ¿·µ¬¼õÉÕ°ìÍ÷
48$arrNewOrder = lfGetNewOrder();
49
50foreach ($arrNewOrder as $key => $val){
51    $arrNewOrder[$key]['create_date'] = str_replace("-", "/", substr($val['create_date'], 0,19));
52   
53}
54$objPage->arrNewOrder = $arrNewOrder;
55
56// ¤ªÃΤ餻°ìÍ÷¤Î¼èÆÀ
57$objPage->arrInfo = lfGetInfo();
58
59$objView->assignobj($objPage);
60$objView->display(MAIN_FRAME);
61//---------------------------------------------------------
62
63// ²ñ°÷¿ô
64function lfGetCustomerCnt($conn){
65   
66    $sql = "SELECT COUNT(customer_id) FROM dtb_customer WHERE del_flg = 0 AND status = 2";
67    $return = $conn->getOne($sql);
68    return $return;
69}
70
71// ºòÆü¤ÎÇä¾å¹â¡¦Çä¾å·ï¿ô
72function lfGetOrderYesterday($conn, $method){
73    if ( $method == 'SUM' or $method == 'COUNT'){
74        // postgresql ¤È mysql ¤È¤ÇSQL¤ò¤ï¤±¤ë
75        if (DB_TYPE == "pgsql") {
76            $sql = "SELECT ".$method."(total) FROM dtb_order
77                     WHERE del_flg = 0 AND to_char(create_date,'YYYY/MM/DD') = to_char(now() - interval '1 days','YYYY/MM/DD')";
78        }else if (DB_TYPE == "mysql") {
79            $sql = "SELECT ".$method."(total) FROM dtb_order
80                     WHERE del_flg = 0 AND cast(substring(create_date,1, 10) as date) = DATE_ADD(current_date, interval -1 day)";
81        }
82        $return = $conn->getOne($sql);
83    }
84    return $return;
85}
86
87function lfGetOrderMonth($conn, $method){
88
89    $month = date("Y/m", mktime());
90   
91    if ( $method == 'SUM' or $method == 'COUNT'){
92    // postgresql ¤È mysql ¤È¤ÇSQL¤ò¤ï¤±¤ë
93    if (DB_TYPE == "pgsql") {
94        $sql = "SELECT ".$method."(total) FROM dtb_order
95                 WHERE del_flg = 0 AND to_char(create_date,'YYYY/MM') = ?
96                 AND to_char(create_date,'YYYY/MM/DD') <> to_char(now(),'YYYY/MM/DD')";
97    }else if (DB_TYPE == "mysql") {
98        $sql = "SELECT ".$method."(total) FROM dtb_order
99                 WHERE del_flg = 0 AND cast(substring(create_date,1,7) as date) = ?
100                 AND cast(substring(create_date,1, 10) as date) <> cast(substring(now(),1, 10) as date)";
101    }
102        $return = $conn->getOne($sql, array($month));
103    }
104    return $return;
105}
106
107function lfGetTotalCustomerPoint() {
108    $objQuery = new SC_Query();
109    $col = "SUM(point)";
110    $where = "del_flg = 0";
111    $from = "dtb_customer";
112    $ret = $objQuery->get($from, $col, $where);
113    return $ret;   
114}
115
116function lfGetReviewYesterday($conn){
117    // postgresql ¤È mysql ¤È¤ÇSQL¤ò¤ï¤±¤ë
118    if (DB_TYPE == "pgsql") {
119        $sql = "SELECT COUNT(*) FROM dtb_review
120                 WHERE del_flg=0 AND to_char(create_date, 'YYYY/MM/DD') = to_char(now() - interval '1 days','YYYY/MM/DD')
121                 AND to_char(create_date,'YYYY/MM/DD') != to_char(now(),'YYYY/MM/DD')";
122    }else if (DB_TYPE == "mysql") {
123        $sql = "SELECT COUNT(*) FROM dtb_review
124                 WHERE del_flg = 0 AND cast(substring(create_date,1, 10) as date) = DATE_ADD(current_date, interval -1 day)
125                 AND cast(substring(create_date,1, 10) as date) != cast(substring(now(),1, 10) as date)";
126    }
127    $return = $conn->getOne($sql);
128    return $return;
129}
130
131function lfGetReviewNonDisp($conn){
132    $sql = "SELECT COUNT(*) FROM dtb_review WHERE del_flg=0 AND status=2";
133    $return = $conn->getOne($sql);
134    return $return;
135}
136
137// ÉÊÀڤ쾦ÉÊÈÖ¹æ¤Î¼èÆÀ
138function lfGetSoldOut() {
139    $objQuery = new SC_Query();
140    $where = "product_id IN (SELECT product_id FROM dtb_products_class WHERE stock_unlimited IS NULL AND stock <= 0)";
141    $arrRet = $objQuery->select("product_id, name", "dtb_products", $where);
142    return $arrRet;
143}
144
145// ¿·µ¬¼õÉÕ°ìÍ÷
146function lfGetNewOrder() {
147    $objQuery = new SC_Query();
148    $col = "ord.order_id, customer_id, ord.order_name01 AS name01, ord.order_name02 AS name02, ord.total, ";
149    $col.= "(SELECT det.product_name FROM dtb_order_detail AS det WHERE ord.order_id = det.order_id LIMIT 1) AS product_name, ";
150    $col.= "(SELECT pay.payment_method FROM dtb_payment AS pay WHERE ord.payment_id = pay.payment_id) AS payment_method, ";
151    $col.= "create_date AS create_date";
152    $from = "dtb_order AS ord";
153    $where = "del_flg = 0";
154    $objQuery->setoption("ORDER BY create_date DESC LIMIT 10 OFFSET 0");
155    $arrRet = $objQuery->select($col, $from, $where);
156    return $arrRet;
157}
158
159// ¤ªÃΤ餻¼èÆÀ
160function lfGetInfo() {
161    // ¹¹¿·¾ðÊó¤òºÇ¿·¤Ë¤¹¤ë
162    $objQuery = new SC_Query();
163    $path = UPDATE_HTTP . "info.txt";
164    $fp = @fopen($path, "rb");
165   
166    $arrRet = array();
167    if(!$fp) {
168        sfErrorHeader(">> " . $path . "¤Î¼èÆÀ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£");
169    } else {
170        while (!feof($fp)) {
171            $arrRet[] = $arrCSV = fgetcsv($fp, UPDATE_CSV_LINE_MAX);
172        }
173        fclose($fp);
174    }
175   
176    return $arrRet;
177}
178
179
180
181?>
Note: See TracBrowser for help on using the repository browser.