|
@@ -40,46 +40,23 @@ class NewsaleModel |
|
@@ -40,46 +40,23 @@ class NewsaleModel |
40
|
{
|
40
|
{
|
41
|
$result = array();
|
41
|
$result = array();
|
42
|
|
42
|
|
43
|
- if (USE_CACHE) {
|
|
|
44
|
- // 先尝试获取一级缓存(master), 有数据则直接返回.
|
|
|
45
|
- $result = Cache::get(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_BOYS, 'master');
|
|
|
46
|
- if (!empty($result)) {
|
|
|
47
|
- return $result;
|
|
|
48
|
- }
|
|
|
49
|
- }
|
|
|
50
|
-
|
|
|
51
|
/* 根据频道调用接口 */
|
43
|
/* 根据频道调用接口 */
|
52
|
switch (intval($channel)) {
|
44
|
switch (intval($channel)) {
|
53
|
case 1: // 男生
|
45
|
case 1: // 男生
|
54
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_NEW_BOYS);
|
46
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_BOYS, self::CODE_TOP_NEW_BOYS);
|
|
|
47
|
+
|
55
|
break;
|
48
|
break;
|
56
|
case 2: // 女生
|
49
|
case 2: // 女生
|
57
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_NEW_GIRLS);
|
50
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_GIRLS, self::CODE_TOP_NEW_GIRLS);
|
58
|
break;
|
51
|
break;
|
59
|
case 3: // 潮童
|
52
|
case 3: // 潮童
|
60
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_NEW_KIDS);
|
53
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_KIDS, self::CODE_TOP_NEW_KIDS);
|
61
|
break;
|
54
|
break;
|
62
|
case 4: // 创意生活
|
55
|
case 4: // 创意生活
|
63
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_NEW_LIFESTYLE);
|
56
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_LIFESTYLE, self::CODE_TOP_NEW_LIFESTYLE);
|
64
|
break;
|
57
|
break;
|
65
|
}
|
58
|
}
|
66
|
|
59
|
|
67
|
- // 调用接口获取数据并封装
|
|
|
68
|
- if (isset($newsale['code']) && isset($newsale['data'][0]['data'][0])) {
|
|
|
69
|
- $result = Helpers::formatBanner($newsale['data'][0]['data'][0], 640, 240);
|
|
|
70
|
- }
|
|
|
71
|
-
|
|
|
72
|
- if (USE_CACHE) {
|
|
|
73
|
- // 接口调用异常时, 不害怕,从我们的二级缓存(slave)里再取数据.
|
|
|
74
|
- if (empty($result)) {
|
|
|
75
|
- $result = Cache::get(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_BOYS, 'slave');
|
|
|
76
|
- }
|
|
|
77
|
- // 接口调用正常,数据封装完成, 则设置一级(master)和二级(slave)数据缓存
|
|
|
78
|
- else {
|
|
|
79
|
- Cache::set(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_BOYS, $result);
|
|
|
80
|
- }
|
|
|
81
|
- }
|
|
|
82
|
-
|
|
|
83
|
return $result;
|
60
|
return $result;
|
84
|
}
|
61
|
}
|
85
|
|
62
|
|
|
@@ -92,46 +69,22 @@ class NewsaleModel |
|
@@ -92,46 +69,22 @@ class NewsaleModel |
92
|
{
|
69
|
{
|
93
|
$result = array();
|
70
|
$result = array();
|
94
|
|
71
|
|
95
|
- if (USE_CACHE) {
|
|
|
96
|
- // 先尝试获取一级缓存(master), 有数据则直接返回.
|
|
|
97
|
- $result = Cache::get(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT, 'master');
|
|
|
98
|
- if (!empty($result)) {
|
|
|
99
|
- return $result;
|
|
|
100
|
- }
|
|
|
101
|
- }
|
|
|
102
|
-
|
|
|
103
|
/* 根据频道调用接口 */
|
72
|
/* 根据频道调用接口 */
|
104
|
switch (intval($channel)) {
|
73
|
switch (intval($channel)) {
|
105
|
case 1: // 男生
|
74
|
case 1: // 男生
|
106
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_SALE_BOYS);
|
75
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT_BOYS, self::CODE_TOP_SALE_BOYS);
|
107
|
break;
|
76
|
break;
|
108
|
case 2: // 女生
|
77
|
case 2: // 女生
|
109
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_SALE_GIRLS);
|
78
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT_GIRLS, self::CODE_TOP_SALE_GIRLS);
|
110
|
break;
|
79
|
break;
|
111
|
case 3: // 潮童
|
80
|
case 3: // 潮童
|
112
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_SALE_KIDS);
|
81
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT_KIDS, self::CODE_TOP_SALE_KIDS);
|
113
|
break;
|
82
|
break;
|
114
|
case 4: // 创意生活
|
83
|
case 4: // 创意生活
|
115
|
- $newsale = NewsaleData::getNewsaleFocus(self::CODE_TOP_SALE_LIFESTYLE);
|
84
|
+ $result = self::cacheControl(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT_LIFESTYLE, self::CODE_TOP_SALE_LIFESTYLE);
|
116
|
break;
|
85
|
break;
|
117
|
}
|
86
|
}
|
118
|
|
87
|
|
119
|
- // 调用接口获取数据并封装
|
|
|
120
|
- if (isset($newsale['code']) && isset($newsale['data'][0]['data'][0])) {
|
|
|
121
|
- $result = Helpers::formatBanner($newsale['data'][0]['data'][0], 640, 240);
|
|
|
122
|
- }
|
|
|
123
|
-
|
|
|
124
|
- if (USE_CACHE) {
|
|
|
125
|
- // 接口调用异常时, 不害怕,从我们的二级缓存(slave)里再取数据.
|
|
|
126
|
- if (empty($result)) {
|
|
|
127
|
- $result = Cache::get(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT, 'slave');
|
|
|
128
|
- }
|
|
|
129
|
- // 接口调用正常,数据封装完成, 则设置一级(master)和二级(slave)数据缓存
|
|
|
130
|
- else {
|
|
|
131
|
- Cache::set(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_DISCOUNT, $result);
|
|
|
132
|
- }
|
|
|
133
|
- }
|
|
|
134
|
-
|
|
|
135
|
return $result;
|
88
|
return $result;
|
136
|
}
|
89
|
}
|
137
|
|
90
|
|
|
@@ -207,4 +160,41 @@ class NewsaleModel |
|
@@ -207,4 +160,41 @@ class NewsaleModel |
207
|
|
160
|
|
208
|
return $result;
|
161
|
return $result;
|
209
|
}
|
162
|
}
|
|
|
163
|
+
|
|
|
164
|
+
|
|
|
165
|
+ /**
|
|
|
166
|
+ * 顶部焦点图缓存控制
|
|
|
167
|
+ * @param const $cacheKey 缓存常量值
|
|
|
168
|
+ * @param const $codeKey 顶部焦点图位置码
|
|
|
169
|
+ * @return array 焦点图数据
|
|
|
170
|
+ */
|
|
|
171
|
+ private static function cacheControl($cacheKey, $codeKey)
|
|
|
172
|
+ {
|
|
|
173
|
+ if (USE_CACHE) {
|
|
|
174
|
+ // 先尝试获取一级缓存(master), 有数据则直接返回.
|
|
|
175
|
+ $result = Cache::get($cacheKey, 'master');
|
|
|
176
|
+ if (!empty($result)) {
|
|
|
177
|
+ return $result;
|
|
|
178
|
+ }
|
|
|
179
|
+ }
|
|
|
180
|
+ $newsale = NewsaleData::getNewsaleFocus($codeKey);
|
|
|
181
|
+
|
|
|
182
|
+ // 调用接口获取数据并封装
|
|
|
183
|
+ if (isset($newsale['code']) && isset($newsale['data'][0]['data'][0])) {
|
|
|
184
|
+ $result = Helpers::formatBanner($newsale['data'][0]['data'][0], 640, 240);
|
|
|
185
|
+ }
|
|
|
186
|
+
|
|
|
187
|
+ if (USE_CACHE) {
|
|
|
188
|
+ // 接口调用异常时, 不害怕,从我们的二级缓存(slave)里再取数据.
|
|
|
189
|
+ if (empty($result)) {
|
|
|
190
|
+ $result = Cache::get(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_BOYS, 'slave');
|
|
|
191
|
+ }
|
|
|
192
|
+ // 接口调用正常,数据封装完成, 则设置一级(master)和二级(slave)数据缓存
|
|
|
193
|
+ else {
|
|
|
194
|
+ Cache::set(CacheConfig::KEY_ACTION_PRODUCT_NEWSALE_INDEX_BOYS, $result);
|
|
|
195
|
+ }
|
|
|
196
|
+ }
|
|
|
197
|
+
|
|
|
198
|
+ return $result;
|
|
|
199
|
+ }
|
210
|
} |
200
|
} |