SiteController.php
3.17 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
<?php
namespace app\wx\controllers;
use Yii;
use domain\smart\models\User as UserModel;
use common\helpers\WxHelper;
use common\models\SysSetting;
use stdClass;
/**
* Site-控制器
* Class SiteController
* @package app\wx\controllers
*/
class SiteController extends BaseController
{
public $layout = 'site';
/**
* @param yii\base\Action $action
* @return bool
* @throws yii\web\BadRequestHttpException
*/
public function beforeAction($action)
{
$view = Yii::$app->view;
$view->params['site']= $this->site;
$this->handleMallAccessCtrl();
return parent::beforeAction($action);
}
/**
* @return string
* @return string HTML
*/
public function actionIndex()
{
//获取当前用户的模型model
$userId = $this->getUserId();
$engineer = new stdClass();
/**
* 构造user的共用信息
*/
$engineer = $this->buildUserResult($userId);
return $this->render('index',
[
'engineer' => $engineer,
]
);
}
private function buildUserResult($userId)
{
$query = UserModel::find()
->select(['user.id', 'user.headimgurl','user.nickname'])
->where(['user.id' => $userId]);
$query->asArray();
$engineerArray = $query->one();
if(empty($engineerArray)){
return false;
}
$engineer = new stdClass();
$engineer->id = (int)$engineerArray['id'];
$engineer->headimgurl = $engineerArray['headimgurl'];
$engineer->nickname = $engineerArray['nickname'];
return $engineer;
}
/*
* 错误页面
*/
public function actionError()
{
$this->layout = '/error';
$exception = Yii::$app->errorHandler->exception;
if ($exception && isset($exception->statusCode)) {
$code = $exception->statusCode;
}
// $viewTpl = 'error/' . $code . '.php';
$viewTpl = 'error/404.php';
return $this->render($viewTpl);
}
/** 封号提示
* @return string
*/
public function actionBlock()
{
$this->layout = '/error';
$viewTpl = 'error/block.php';
$service_phone = SysSetting::getServicePhone();
return $this->render($viewTpl,['service_phone'=>$service_phone]);
}
/** 关注提示
* @return string
*/
public function actionSubscribe()
{
$this->layout = '/error';
$viewTpl = 'error/subscribe.php';
$service_phone = SysSetting::getServicePhone();
return $this->render($viewTpl,['service_phone'=>$service_phone]);
}
/**
* 未授权提示
*/
public function actionNoOauth()
{
$this->layout = '/error';
$viewTpl = 'error/block.php';
$id = $this->request->get('id');
$service_phone = SysSetting::getServicePhone();
$errorMsg = '当前没有权限查看该内容';
if ($id == 1) {
$errorMsg = '请进行认证以后再来查看该页面';
}
return $this->render($viewTpl,['service_phone'=>$service_phone, 'errorMsg' => $errorMsg]);
}
}