ConfigController.class.php
5.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<?php
/**
* ConfigController.class.php
* 【运营管理】应用相关配置读取
* @author Deepseath
* @version $Id$
*/
namespace Apicp\Controller\Recommender;
use Common\Common\Setting;
use Common\Common\TaskHelper;
use Common\Service\CommonRecommenderService;
use Common\Model\CommonRecommenderModel;
class ConfigController extends AbstractController
{
protected $_require_login = false;
/**
* 日常任务配置是否开启:是
*/
const DAILYTASK_IS_OPEN_TRUE = 2;
/**
* 获取应用配置信息
*
* @desc 【管理后台】获取应用配置信息
*
* @param string app:false 读取指定应用模块配置信息,为空则返回全部应用配置信息
*
* @return <pre>array(
* 'News' =>
* array (
* 'open' => 1, // 应用模块是否启用。1=启用;2=未启用
* 'name' => '新闻', // 应用模块标准名称
* 'iconApi' => '', // 首页 icon 获取接口 url
* 'bannerApi' =>
* array (
* 'selectorTitle' => '选择新闻', // 首页条幅接口相关:选择器显示的名称
* 'categoryUrl' => '', // 首页条幅接口相关:分类获取接口 url
* 'searchUrl' => '', // 首页条幅接口相关:文章搜索接口 url
* 'listUrl' => '', // 首页条幅接口相关:文章列表接口 url
* 'searchTitle' => '搜索新闻标题', // 首页条幅接口相关:文章搜索默认显示 placeholder 文字
* ),
* ),
* 'Course' =>
* array (
* 'open' => 1, // 应用模块是否启用。1=启用;2=未启用
* 'name' => '课程',// 应用模块标准名称
* 'iconApi' => '', // 首页 icon 获取接口 url
* 'bannerApi' =>
* array (
* 'selectorTitle' => '选择课程', // 首页条幅接口相关:选择器显示的名称
* 'categoryUrl' => '', // 首页条幅接口相关:分类获取接口 url
* 'searchUrl' => '', // 首页条幅接口相关:文章搜索接口 url
* 'listUrl' => '', // 首页条幅接口相关:文章列表接口 url
* 'searchTitle' => '搜索课程标题', // 首页条幅接口相关:文章搜索默认显示 placeholder 文字
* ),
* ),
* 'Exam' =>
* array (
* 'open' => 1, // 应用模块是否启用。1=启用;2=未启用
* 'name' => '考试',// 应用模块标准名称
* 'iconApi' => '', // 首页 icon 获取接口 url
* 'bannerApi' =>
* array (
* 'selectorTitle' => '选择试题', // 首页条幅接口相关:选择器显示的名称
* 'categoryUrl' => '', // 首页条幅接口相关:分类获取接口 url
* 'searchUrl' => '', // 首页条幅接口相关:文章搜索接口 url
* 'listUrl' => '', // 首页条幅接口相关:文章列表接口 url
* 'searchTitle' => '搜索试卷名称', // 首页条幅接口相关:文章搜索默认显示 placeholder 文字
* ),
* ),
* )</pre>
*/
public function Index()
{
// 请求指定的应用信息
$app = I('app', null);
// 定义合法的应用标识名(目录名)
$appList = [
'News',
'Course',
'Exam'
];
// 获取缓存
// $set = &Setting::instance();
// $config = $set->get('Common.appConfig');
// todo 2018-5-4 14:52:49 tangxingguo 目前标准产品栏目都相同,企业栏目都使用配置文件数据,后续按需求处理
$config = \Common\Sql\DefaultData::installData();
// 更名
foreach ($config as $key => &$item) {
// 满足展示需求更名为同事圈
if ($key == 'Workmate') {
$item['name'] = '同事圈';
continue;
}
$name = $item['name'];
switch ($name) {
case '活动中心':
$item['name'] = '员圈活动';
break;
case '调研中心':
$item['name'] = '培训调研';
break;
default:
continue;
}
}
if (!in_array($app, $appList)) {
$app = null;
}
$this->_result = $app === null ?
// 获取全部应用信息
$config :
// 获取指定应用信息
$config[$app];
// 获取是否开启任务签到
$task_helper = &TaskHelper::instance();
$sign = $task_helper->get_task_sign([
'app' => 'sign',
'is_open' => self::DAILYTASK_IS_OPEN_TRUE,
]);
$recommenderService = new CommonRecommenderService();
// 未开启任务签到
if (!$sign) {
// 隐藏栏目列表中的签到
$recommenderService->update_by_conds(
['app_dir' => 'Sign'],
['hide' => CommonRecommenderModel::HIDE_YES]
);
unset($this->_result['Sign']);
} else {
// 开启任务签到
$recommenderService->update_by_conds(
['app_dir' => 'Sign'],
['hide' => CommonRecommenderModel::HIDE_NO]
);
}
return $this->_result;
}
}