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

Revision 4951, 5.0 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$objPage->arrNewOrder = lfGetNewOrder();
49
50// ¤ªÃΤ餻°ìÍ÷¤Î¼èÆÀ
51$objPage->arrInfo = lfGetInfo();
52
53$objView->assignobj($objPage);
54$objView->display(MAIN_FRAME);
55//---------------------------------------------------------
56
57// ²ñ°÷¿ô
58function lfGetCustomerCnt($conn){
59   
60    $sql = "SELECT COUNT(customer_id) FROM dtb_customer WHERE del_flg = 0 AND status = 2";
61    $return = $conn->getOne($sql);
62    return $return;
63}
64
65// ºòÆü¤ÎÇä¾å¹â¡¦Çä¾å·ï¿ô
66function lfGetOrderYesterday($conn, $method){
67    if ( $method == 'SUM' or $method == 'COUNT'){
68        // postgresql ¤È mysql ¤È¤ÇSQL¤ò¤ï¤±¤ë
69        if (DB_TYPE == "pgsql") {
70            $sql = "SELECT ".$method."(total) FROM dtb_order
71                     WHERE del_flg = 0 AND to_char(create_date,'YYYY/MM/DD') = to_char(now() - interval '1 days','YYYY/MM/DD')";
72        }else if (DB_TYPE == "mysql") {
73            $sql = "SELECT ".$method."(total) FROM dtb_order
74                     WHERE del_flg = 0 AND cast(substring(create_date,1, 10) as date) = DATE_ADD(current_date, interval -1 day)";
75        }
76        $return = $conn->getOne($sql);
77    }
78    return $return;
79}
80
81function lfGetOrderMonth($conn, $method){
82
83    $month = date("Y/m", mktime());
84   
85    if ( $method == 'SUM' or $method == 'COUNT'){
86    // postgresql ¤È mysql ¤È¤ÇSQL¤ò¤ï¤±¤ë
87    if (DB_TYPE == "pgsql") {
88        $sql = "SELECT ".$method."(total) FROM dtb_order
89                 WHERE del_flg = 0 AND to_char(create_date,'YYYY/MM') = ?
90                 AND to_char(create_date,'YYYY/MM/DD') <> to_char(now(),'YYYY/MM/DD')";
91    }else if (DB_TYPE == "mysql") {
92        $sql = "SELECT ".$method."(total) FROM dtb_order
93                 WHERE del_flg = 0 AND cast(substring(create_date,1,7) as date) = ?
94                 AND cast(substring(create_date,1, 10) as date) <> cast(substring(now(),1, 10) as date)";
95    }
96        $return = $conn->getOne($sql, array($month));
97    }
98    return $return;
99}
100
101function lfGetTotalCustomerPoint() {
102    $objQuery = new SC_Query();
103    $col = "SUM(point)";
104    $where = "del_flg = 0";
105    $from = "dtb_customer";
106    $ret = $objQuery->get($from, $col, $where);
107    return $ret;   
108}
109
110function lfGetReviewYesterday($conn){
111    // postgresql ¤È mysql ¤È¤ÇSQL¤ò¤ï¤±¤ë
112    if (DB_TYPE == "pgsql") {
113        $sql = "SELECT COUNT(*) FROM dtb_review
114                 WHERE del_flg=0 AND to_char(create_date, 'YYYY/MM/DD') = to_char(now() - interval '1 days','YYYY/MM/DD')
115                 AND to_char(create_date,'YYYY/MM/DD') != to_char(now(),'YYYY/MM/DD')";
116    }else if (DB_TYPE == "mysql") {
117        $sql = "SELECT COUNT(*) FROM dtb_review
118                 WHERE del_flg = 0 AND cast(substring(create_date,1, 10) as date) = DATE_ADD(current_date, interval -1 day)
119                 AND cast(substring(create_date,1, 10) as date) != cast(substring(now(),1, 10) as date)";
120    }
121    $return = $conn->getOne($sql);
122    return $return;
123}
124
125function lfGetReviewNonDisp($conn){
126    $sql = "SELECT COUNT(*) FROM dtb_review WHERE del_flg=0 AND status=2";
127    $return = $conn->getOne($sql);
128    return $return;
129}
130
131// ÉÊÀڤ쾦ÉÊÈÖ¹æ¤Î¼èÆÀ
132function lfGetSoldOut() {
133    $objQuery = new SC_Query();
134    $where = "product_id IN (SELECT product_id FROM dtb_products_class WHERE stock_unlimited IS NULL AND stock <= 0)";
135    $arrRet = $objQuery->select("product_id, name", "dtb_products", $where);
136    return $arrRet;
137}
138
139// ¿·µ¬¼õÉÕ°ìÍ÷
140function lfGetNewOrder() {
141    $objQuery = new SC_Query();
142    $col = "ord.order_id, customer_id, ord.order_name01 AS name01, ord.order_name02 AS name02, ord.total, ";
143    $col.= "(SELECT det.product_name FROM dtb_order_detail AS det WHERE ord.order_id = det.order_id LIMIT 1) AS product_name, ";
144    $col.= "(SELECT pay.payment_method FROM dtb_payment AS pay WHERE ord.payment_id = pay.payment_id) AS payment_method, ";
145    $col.= "create_date AS create_date";
146    $from = "dtb_order AS ord";
147    $where = "del_flg = 0";
148    $objQuery->setoption("ORDER BY create_date DESC LIMIT 10 OFFSET 0");
149    $arrRet = $objQuery->select($col, $from, $where);
150   
151    $objQuery->getlastquery();
152    return $arrRet;
153}
154
155// ¤ªÃΤ餻¼èÆÀ
156function lfGetInfo() {
157    // ¹¹¿·¾ðÊó¤òºÇ¿·¤Ë¤¹¤ë
158    $objQuery = new SC_Query();
159    $path = UPDATE_HTTP . "info.txt";
160    $fp = @fopen($path, "rb");
161   
162    $arrRet = array();
163    if(!$fp) {
164        sfErrorHeader(">> " . $path . "¤Î¼èÆÀ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£");
165    } else {
166        while (!feof($fp)) {
167            $arrRet[] = $arrCSV = fgetcsv($fp, UPDATE_CSV_LINE_MAX);
168        }
169        fclose($fp);
170    }
171   
172    return $arrRet;
173}
174
175
176
177?>
Note: See TracBrowser for help on using the repository browser.