| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- <?php
- // +----------------------------------------------------------------------
- // |
- // +----------------------------------------------------------------------
- // |
- // +----------------------------------------------------------------------
- // |
- // +----------------------------------------------------------------------
- // |
- // +----------------------------------------------------------------------
- // +----------------------------------------------------------------------
- // | 个人资料
- // +----------------------------------------------------------------------
- namespace app\admin\controller\general;
- use app\admin\model\Adminlog as AdminlogModel;
- use app\admin\model\AdminUser;
- use app\common\controller\Backend;
- use think\exception\ValidateException;
- use think\facade\Session;
- use think\facade\Validate;
- class Profile extends Backend
- {
- public function index()
- {
- if ($this->request->isAjax()) {
- $this->modelClass = new AdminlogModel;
- [$page, $limit, $where, $sort, $order] = $this->buildTableParames();
- $count = $this->modelClass
- ->where($where)
- ->where('admin_id', (int) $this->auth->id)
- ->order($sort, $order)
- ->count();
- $list = $this->modelClass
- ->where($where)
- ->where('admin_id', (int) $this->auth->id)
- ->order($sort, $order)
- ->page($page, $limit)
- ->select();
- $result = ["code" => 0, 'count' => $count, 'data' => $list];
- return json($result);
- }
- return $this->fetch();
- }
- //更新个人信息
- public function update()
- {
- if ($this->request->isPost()) {
- $this->token();
- $params = $this->request->param("row/a");
- $params['id'] = $this->auth->id;
- $rule = [
- 'email|邮箱' => 'require|email|unique:admin',
- 'mobile|手机' => 'mobile|unique:admin',
- ];
- try {
- $this->validate($params, $rule);
- } catch (ValidateException $e) {
- $this->error($e->getMessage());
- }
- if (isset($params['password']) && $params['password']) {
- if (!Validate::regex($params['password'], "/^[\S]{6,16}$/")) {
- $this->error('密码长度必须在6-16位之间,不能包含空格');
- }
- $data = encrypt_password($params['password']);
- $params['encrypt'] = $data['encrypt'];
- $params['password'] = $data['password'];
- } else {
- unset($params['password'], $params['encrypt']);
- }
- if ($params) {
- $admin = AdminUser::find($this->auth->id);
- $admin->save($params);
- //因为个人资料面板读取的Session显示,修改自己资料后同时更新Session
- Session::set("admin", $admin->toArray());
- Session::set("admin.safecode", $this->auth->getEncryptSafecode($admin));
- $this->success('修改成功!');
- }
- $this->error();
- }
- return;
- }
- }
|