AuthController.php 2.5 KB
<?php
/**
 * @author 河南鼎汉软件科技
 * @copyright Copyright (c) 2017 HNDH Software Technology Co., Ltd.
 * createtime: 2017/8/26 13:45
 */

namespace backend\controllers;


use backend\models\LoginForm;
use backend\models\SystemMenu;
use backend\models\SystemUser;
use yii\web\Response;
use yii\widgets\ActiveForm;
use common\models\ManagerLog;
class AuthController extends ControllerBase
{
    public function init()
    {
        $this->layout = 'main-login';
    }

    /**
     * 登录
     * @return string|\yii\web\Response
     */
    public function actionLogin()
    {
        if (!\Yii::$app->user->isGuest) {
            return $this->goHome();
        }
        $model = new LoginForm();
        if ($model->load(\Yii::$app->request->post()) && $model->login()) {
             // $manager=new ManagerLog(); 
             //     $manager->operate = "登录";
             //     $result = $manager->save();
            return $this->goBack();
        } else {
            return $this->render('login', ['model' => $model]);
        }
    }

    /**
     * 退出登陆
     * @return \yii\web\Response
     */
    public function actionLogout()
    {
        //插入日志
        \Yii::$app->cache->delete(SystemMenu::CACHE_KEY);
        \Yii::$app->user->logout();
         // $manager=new ManagerLog(); 
         // $manager->operate = "退出";
         // $result = $manager->save();
        return $this->goHome();
    }

    /**
     * 后台用户添加/修改
     * @return array|string|Response
     */
    public function actionUserEdit()
    {
        $request = \Yii::$app->request;
        $id = $request->get('id');
        $parent_title = '修改密码';
        $model = SystemUser::findIdentity($id);
        if ($model->load($request->post())) {
            $SystemUser = $request->post('SystemUser');
            if (is_array($SystemUser) && !empty($SystemUser['password_hash'])) {
                $model->setPassword($SystemUser['password_hash']);
            }
            if ($request->isAjax) {
                \Yii::$app->response->format = Response::FORMAT_JSON;
                return ActiveForm::validate($model);
            } else {
                return $model->save() ? $this->message('更新成功', 'referer', 'success') : $this->message('更新失败:' . current($model->getFirstErrors()), 'referer', 'error');
            }
        }
        return $this->renderAjax('/auth/user-edit', [
            'model' => $model,
            'parent_title' => $parent_title,
        ]);
    }

}