Files

64 lines
1.8 KiB
PHP
Raw Permalink Normal View History

2025-11-18 10:07:09 +08:00
<?php
namespace app\guildadmin\model;
use fast\Random;
use think\Model;
use think\Session;
use app\guildadmin\library\Auth;
class Admin extends Model
{
// 开启自动写入时间戳字段
protected $autoWriteTimestamp = 'int';
// 定义时间戳字段名
protected $table = 'fa_vs_guild_admin';
protected $createTime = 'createtime';
protected $updateTime = 'updatetime';
protected $hidden = [
'password',
'salt'
];
public static function init()
{
self::beforeWrite(function ($row) {
$changed = $row->getChangedData();
//如果修改了用户或或密码则需要重新登录
if (isset($changed['username']) || isset($changed['password']) || isset($changed['salt'])) {
$row->token = '';
}
});
}
//创建管理员(公会创建调用)
public function createAdmin($data){
$params['salt'] = Random::alnum();
$params['username'] = $data['username'];
$params['nickname'] = $data['nickname'];
$params['password'] = md5(md5($data['password']) . $params['salt']);
$params['guild_id'] = $data['guild_id'];
$result = $this->save($params);
if ($result === false) {
return V(0,"失败", []);
}
//创建角色组
$group_data = [
'guild_id' => $data['guild_id'],
'pid' => 1,
'name' => '超级管理员',
'rules' => '*',
'status' => 'normal'
];
$group = model('guildadmin/AuthGroup')->create($group_data);
if (!$group) {
return V(0,"失败", []);
}
$dataset = [];
$dataset[] = ['uid' => $this->id, 'group_id' => $group['id']];
model('guildadmin/AuthGroupAccess')->saveAll($dataset);
}
}