source: branches/feature-module-update/html/admin/total/index_sub.php @ 15078

Revision 15078, 4.1 KB checked in by nanasess, 17 years ago (diff)

r15064 から svn cp
とりあえず暫定コミット.

  • UTF-8 に変更
  • slib.php, glib.php のクラス化
  • LC_Page の抽象化(一部)
Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7function lfGetPDFColum($page, $type, $key = "") {
8   
9    $arrSUBNAME['day'] = "日別";
10    $arrSUBNAME['month'] = "月別";
11    $arrSUBNAME['year'] = "年別";
12    $arrSUBNAME['hour'] = "時間別";
13    $arrSUBNAME['wday'] = "曜日別";
14    $arrSUBNAME['all'] = "全体";
15    $arrSUBNAME['member'] = "会員";
16    $arrSUBNAME['nonmember'] = "非会員";
17           
18    switch($page) {
19    // 商品別集計
20    case 'products':
21        $title = "商品別集計(" . $arrSUBNAME[$type] . ")";
22        $arrColSize = array(
23            60,
24            120,
25            220,
26            80,
27            80,
28            80,
29        );
30        $arrAlign = array(
31            'right',
32            'center',
33            'right',
34            'right',
35            'right',
36            'right',
37        );
38        break;
39    // 職業別集計
40    case 'job':
41        $title = "職業別集計(" . $arrSUBNAME[$type] . ")";
42        $arrColSize = array(
43            100,
44            100,
45            100,
46            100,
47        );
48        $arrAlign = array(
49            'right',
50            'right',
51            'right',
52            'right',
53        );
54        break;
55    // 会員別集計
56    case 'member':
57        $title = "会員別集計(" . $arrSUBNAME[$type] . ")";
58        $arrColSize = array(
59            100,
60            100,
61            100,
62            100,
63        );
64        $arrAlign = array(
65            'right',
66            'right',
67            'right',
68            'right',
69        );
70        break;
71    // 年代別集計
72    case 'age':
73        $title = "年代別集計(" . $arrSUBNAME[$type] . ")";
74        $arrColSize = array(
75            80,
76            100,
77            100,
78            100,
79        );
80        $arrAlign = array(
81            'right',
82            'right',
83            'right',
84            'right',
85        );
86        break;
87    // 期間別集計
88    default:
89        $title = "期間別集計(" . $arrSUBNAME[$type] . ")";
90        $arrColSize = array(
91            60,
92            60,
93            50,
94            50,
95            80,
96            80,
97            80,
98            80,
99            80,
100            80,
101        );
102        $arrAlign = array(
103            'right',
104            'right',
105            'right',
106            'right',
107            'right',
108            'right',
109            'right',
110            'right',
111            'right',
112            'right',
113        );
114        break;
115    }
116   
117    list($arrTitleCol, $arrDataCol) = lfGetCSVColum($page, $key);
118       
119    return array($arrTitleCol, $arrDataCol, $arrColSize, $arrAlign, $title);
120}
121
122
123function lfGetCSVColum($page, $key = "") {
124    switch($page) {
125    // 商品別集計
126    case 'products':
127        $arrTitleCol = array(
128            '商品番号',
129            '商品名',
130            '購入件数',
131            '点数',
132            '単価',
133            '金額'           
134        );
135        $arrDataCol = array(
136            'product_code',
137            'product_name',
138            'order_count',
139            'products_count',
140            'price',
141            'total',
142        );
143        break;
144    // 職業別集計
145    case 'job':
146        $arrTitleCol = array(
147            '職業',
148            '購入件数',
149            '購入合計',
150            '購入平均',
151        );
152        $arrDataCol = array(
153            'job_name',
154            'order_count',
155            'total',
156            'total_average',
157        );
158        break;
159    // 会員別集計
160    case 'member':
161        $arrTitleCol = array(
162            '会員',
163            '購入件数',
164            '購入合計',
165            '購入平均',
166        );
167        $arrDataCol = array(
168            'member_name',
169            'order_count',
170            'total',
171            'total_average',
172        );
173        break;
174    // 年代別集計
175    case 'age':
176        $arrTitleCol = array(
177            '年齢',
178            '購入件数',
179            '購入合計',
180            '購入平均',
181        );
182        $arrDataCol = array(
183            'age_name',
184            'order_count',
185            'total',
186            'total_average',
187        );
188        break;
189    // 期間別集計
190    default:
191        $arrTitleCol = array(
192            '期間',
193            '購入件数',
194            '男性',
195            '女性',
196            '男性(会員)',
197            '男性(非会員)',
198            '女性(会員)',
199            '女性(非会員)',
200            '購入合計',
201            '購入平均',     
202        );
203        $arrDataCol = array(
204            $key,
205            'total_order',
206            'men',
207            'women',
208            'men_member',
209            'men_nonmember',
210            'women_member',
211            'women_nonmember',
212            'total',
213            'total_average'
214        );
215        break;
216    }
217   
218    return array($arrTitleCol, $arrDataCol);
219}
220
221// 必要なカラムのみ抽出する(CSVデータで取得する)
222function lfGetDataColCSV($arrData, $arrDataCol) {
223    $max = count($arrData);
224    for($i = 0; $i < $max; $i++) {
225        foreach($arrDataCol as $val) {     
226            $arrRet[$i][$val] = $arrData[$i][$val];
227        }
228        $csv_data.= sfGetCSVList($arrRet[$i]);
229    }
230    return $csv_data;
231}
232
233// 必要なカラムのみ抽出する(PDFデータで取得する)
234function lfGetDataColPDF($arrData, $arrDataCol, $len) {
235    $max = count($arrData);
236    for($i = 0; $i < $max; $i++) {
237        foreach($arrDataCol as $val) {     
238            $arrRet[$i][$val] = sfCutString($arrData[$i][$val], $len);
239        }
240        $csv_data.= sfGetPDFList($arrRet[$i]);
241    }
242    return $csv_data;
243}
244
245
246?>
Note: See TracBrowser for help on using the repository browser.