From 7aa07a048687efc4449cb5864d1f7ff3771a5ac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E9=92=8A?= Date: Sat, 6 Dec 2025 00:16:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E4=BC=9A=E4=BF=AE=E6=94=B9=E5=85=BC?= =?UTF-8?q?=E5=AE=B9=E4=BB=A5=E5=89=8D=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/adminapi/controller/Guild.php | 76 +++++++++++++---------- application/guildadmin/model/Admin.php | 28 ++++++++- 2 files changed, 70 insertions(+), 34 deletions(-) diff --git a/application/adminapi/controller/Guild.php b/application/adminapi/controller/Guild.php index 4a0f24d..3d8862e 100644 --- a/application/adminapi/controller/Guild.php +++ b/application/adminapi/controller/Guild.php @@ -308,39 +308,51 @@ class Guild extends adminApi $data['intro'] = $request['guild_desc']; } $res = model('Guild')->edit(['id' => $request['id']], $data); - if ($res) { - //新功能 - //创建基础信息数据 - $guild_data = db::name('vs_guild_data')->where('guild_id',$request['id'])->find(); - if(empty($guild_data)){ - $user = db::name('user')->where('id',$guild['user_id'])->find(); - $boss_auth = db::name('user_auth')->where('mobile',$user['mobile'])->find(); - $data = [ - 'guild_id' => $res, - 'boss_mobile' => $request['guild_user_mobile'] ?? $user['mobile'], - 'boss_name' => $boss_auth['real_name']?? '', - 'createtime' => time(), - ]; - db::name('vs_guild_data')->insert($data); - } - $guildadmin = db::name('vs_guild_admin')->where('guild_id',$request['id'])->find(); - if(empty($guildadmin)){ - //创建后台登录账号 - $data = [ - 'guild_id' => $res, - 'username' => $request['guild_user_mobile'], - 'password' => $request['password'], - 'nickname' => $request['guild_name']."管理员", - ]; - model('guildadmin/Admin')->createAdmin($data); - } - db::commit(); - return V(1, "修改成功"); - } else { - db::rollback(); - return V(0, "修改失败"); + //新功能 + //创建基础信息数据 + $guild_data = db::name('vs_guild_data')->where('guild_id',$guild['id'])->find(); + if(empty($guild_data)){ + $user = db::name('user')->where('id',$guild['user_id'])->find(); + $boss_auth = db::name('user_auth')->where('mobile',$user['mobile'])->find(); + $data = [ + 'guild_id' => $guild['id'], + 'boss_mobile' => $request['guild_user_mobile'] ?? $user['mobile'], + 'boss_name' => $boss_auth['real_name']?? '', + 'createtime' => time(), + ]; + db::name('vs_guild_data')->insert($data); } - + $guildadmin = db::name('vs_guild_admin')->where('guild_id',$guild['id'])->order('id','asc')->find(); + if(empty($guildadmin)){ + //创建后台登录账号 + $data = [ + 'guild_id' => $guild['id'], + 'username' => $request['guild_user_mobile'], + 'password' => $request['password'], + 'nickname' => $request['guild_name']."管理员", + ]; + $res = model('guildadmin/Admin')->createAdmin($data); + if($res['code']==0){ + db::rollback(); + return V(0, $res['msg']); + } + }else{ + $up_data =[]; + if($request['guild_user_mobile'] != $guildadmin['username']){ + db::rollback(); + return V(0, "会长手机号填写错误"); + } + if($request['password'] != ""){ + $up_data['password'] = $request['password']; + } + $res = model('guildadmin/Admin')->edit($guildadmin['id'],$up_data); + if($res['code']==0){ + db::rollback(); + return V(0, $res['msg']); + } + } + db::commit(); + return V(1, "修改成功"); } catch (\Exception $e) { db::rollback(); return V(0, $e->getMessage()); diff --git a/application/guildadmin/model/Admin.php b/application/guildadmin/model/Admin.php index 46004f8..4043c6c 100644 --- a/application/guildadmin/model/Admin.php +++ b/application/guildadmin/model/Admin.php @@ -2,9 +2,11 @@ namespace app\guildadmin\model; use fast\Random; +use think\Db; use think\Model; use think\Session; use app\guildadmin\library\Auth; +use think\Validate; class Admin extends Model { @@ -41,7 +43,7 @@ class Admin extends Model $params['guild_id'] = $data['guild_id']; $result = $this->save($params); if ($result === false) { - return V(0,"失败", []); + return ['code'=>0,'msg'=>'失败', 'data' => null]; } //创建角色组 $group_data = [ @@ -53,11 +55,33 @@ class Admin extends Model ]; $group = model('guildadmin/AuthGroup')->create($group_data); if (!$group) { - return V(0,"失败", []); + return ['code'=>0,'msg'=>'失败', 'data' => null]; } $dataset = []; $dataset[] = ['uid' => $this->id, 'group_id' => $group['id']]; model('guildadmin/AuthGroupAccess')->saveAll($dataset); + return ['code'=>1,'msg'=>'成功', 'data' => null]; } + /** + * 编辑 + */ + public function edit($id,$data) + { + if ($data['password']) { + if (!Validate::is($data['password'], '\S{6,30}')) { + return ['code'=>1,'msg'=>'密码长度必须在6-30位之间,不能包含空格', 'data' => null]; + } + $data['salt'] = Random::alnum(); + $data['password'] = md5(md5($data['password']) . $data['salt']); + } else { + unset($data['password'], $data['salt']); + } + $result = db::name('vs_guild_admin')->where('id', $id)->update($data); + if($result){ + return ['code'=>1,'msg'=>'成功', 'data' => null]; + }else{ + return ['code'=>0,'msg'=>'失败', 'data' => null]; + } + } }