/** * Finds user by [[username]] * * @return User|null */ public function getUser() { if ($this->_user === false) { $this->_user = \common\models\UserAdmin::findByUsername($this->username); } return $this->_user; }
public function privilege($flush = false, $userId = '') { $userId = $userId ?: \Yii::$app->user->id; $appid = \Yii::$app->id; $cacheName = 'privi' . $appid . $userId; $module = \Yii::$app->controller->module->id; $cache = \Yii::$app->cache; if ($cache->get($cacheName) && !$flush) { return $cache->get($cacheName); } else { if ($module == 'app-backend' || $appid == 'app-api' && $module == 'backend') { $privilege = \common\models\UserAdmin::getUserPrivilege($userId); } else { $privilege = \common\models\User::getUserPrivilege(); } $cache->set($cacheName, $privilege, 3600); return $privilege; } }
/** * 密码修改 * @return type */ public function actionModifypwd() { $request = \Yii::$app->request; $pwd = $request->get('pwd', 0); $newpwd = $request->get('newpwd', 0); $repwd = $request->get('repwd', 0); $uid = $request->get('usercode', 0); if (!($uid = EasyHelpers::pidDecrypt($uid)) && !is_numeric($uid)) { return ['code' => 4, 'msg' => '用户不存在', 'data' => []]; } if (!UserAdmin::checkPwd($uid, $pwd)) { return ['code' => 2, 'msg' => '旧密码输入错误', 'data' => []]; } if ($newpwd != $repwd) { return ['code' => 3, 'msg' => '两次密码不一致', 'data' => []]; } if (UserAdmin::changePwd($uid, $newpwd)) { return ['code' => 0, 'msg' => '密码修改成功', 'data' => []]; } else { return ['code' => 5, 'msg' => '密码修改失败', 'data' => []]; } }
/** * 管理员组成员 */ public function actionGroupuser() { $view = \Yii::$app->view; $view->params['moduleName'] = '管理员分组'; $request = \Yii::$app->request; $groupId = $request->_get('groupId', ''); $search = $request->_get('search', ''); $where = 1; if (preg_match('/^1[0-9]{10}$/', $search)) { $where .= ' AND userMobile LIKE \'%' . $search . '%\''; } else { $where .= ' AND username LIKE \'%' . $search . '%\''; } $userModel = UserAdmin::find()->where($where); $pageSize = \Yii::$app->params['pageSize']; $total = $userModel->count(); $pagination = new Pagination(['defaultPageSize' => $pageSize, 'totalCount' => $total]); $data = $userModel->asArray()->offset($pagination->offset)->limit($pagination->limit)->all(); $groupuser = UserGroupAdmin::find()->where('groupId=' . $groupId)->asArray()->All(); foreach ($data as &$user) { foreach ($groupuser as $group) { if ($user['id'] == $group['userId']) { $user['inGroup'] = 1; } } } $token = Token::getToken(); $userId = \Yii::$app->user->id; $savegroupuserIdentity = EasyHelpers::dataEncrypt('savegroupuser,' . $userId); return $this->render('groupuser', ['data' => $data, 'search' => $search, 'groupId' => $groupId, 'token' => $token, 'pagination' => $pagination, 'savegroupuserIdentity' => $savegroupuserIdentity]); }
/** * add or update user_admin * @param int $id * @param string $username * @return bool */ public static function saveUser($id, $username) { $key = \Yii::$app->params['backend_key']; if ($id) { $user = static::findOne($id); if ($user) { $user->username = $username; $user->password = EasyHelpers::encrypty($username, $key); return $user->save(); } } $user = new UserAdmin(); $user->username = $username; $user->password = EasyHelpers::encrypty($username, $key); return $user->save(); }