You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
2.4 KiB
68 lines
2.4 KiB
<?php
|
|
namespace app\admin\model;
|
|
use think\Model;
|
|
use think\Db;
|
|
class Admin extends Model
|
|
{
|
|
protected $pk = 'admin_id';
|
|
public function login($data,$code){
|
|
$wxuserid = 0;
|
|
|
|
if($code=='open'){
|
|
if(!$this->check($data['vercode'])){
|
|
return ['code' => 0, 'msg' => '验证码错误'];
|
|
}
|
|
}
|
|
$user=Db::name('admin')->where('username',$data['username'])->find();
|
|
if(!$user){
|
|
$user=Db::name('admin')->where('tel',$data['username'])->find();
|
|
}
|
|
if($user) {
|
|
if(!$user['wxid'] && $data['wxid']){
|
|
$update = ["wxid"=>$data['wxid'],"openid"=>$data['openid']];
|
|
Db::name('admin')->where('admin_id',$user['admin_id'])->update($update);
|
|
}
|
|
if ($user['is_open']==1 && $user['pwd'] == md5($data['password'])){
|
|
session('username', $user['username']);
|
|
session('aid', $user['admin_id']);
|
|
session('gid', $user['group_id']);
|
|
$avatar = $user['avatar'] == '' ? '/static/admin/images/0.jpg' : $user['avatar'];
|
|
session('avatar', $avatar);
|
|
return ['code' => 1, 'msg' => '登录成功!']; //信息正确
|
|
}else{
|
|
return ['code' => 0, 'msg' => '用户名或者密码错误,重新输入!']; //密码错误
|
|
}
|
|
}else{
|
|
return ['code' => 0, 'msg' => '用户不存在!']; //用户不存在
|
|
}
|
|
}
|
|
public function getInfo($admin_id){
|
|
$info = Db::name('admin')->field('pwd',true)->find($admin_id);
|
|
return $info;
|
|
}
|
|
|
|
public function saveWxUserInfo($wxInfo){
|
|
|
|
$user= Db::name('admin_wxinfo')->where('openid',$wxInfo['openid'])->find();
|
|
if($user){
|
|
return $user['id'];
|
|
}
|
|
$data = [
|
|
'openid' => $wxInfo['openid'],
|
|
'nickname' => $wxInfo['nickname'],
|
|
'sex' => $wxInfo['sex'],
|
|
'province' => $wxInfo['province'],
|
|
'city' => $wxInfo['city'],
|
|
'country' => $wxInfo['country'],
|
|
'unionid' => $wxInfo['unionid'],
|
|
'headimgurl' => $wxInfo['headimgurl'],
|
|
'add_time' => $wxInfo['add_time'],
|
|
];
|
|
return Db::name('admin_wxinfo')->insert($data,0,1);
|
|
}
|
|
public function check($code){
|
|
return captcha_check($code);
|
|
}
|
|
|
|
}
|
|
|
|
|