Esempio n. 1
0
 /**
  * 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;
 }
Esempio n. 2
0
 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]);
 }
Esempio n. 5
0
 /**
  * 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();
 }