工会修改兼容以前数据

This commit is contained in:
2025-12-06 00:16:17 +08:00
parent eb15a69649
commit 7aa07a0486
2 changed files with 70 additions and 34 deletions

View File

@@ -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();
$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' => $res,
'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',$request['id'])->find();
$guildadmin = db::name('vs_guild_admin')->where('guild_id',$guild['id'])->order('id','asc')->find();
if(empty($guildadmin)){
//创建后台登录账号
$data = [
'guild_id' => $res,
'guild_id' => $guild['id'],
'username' => $request['guild_user_mobile'],
'password' => $request['password'],
'nickname' => $request['guild_name']."管理员",
];
model('guildadmin/Admin')->createAdmin($data);
$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, "修改成功");
} else {
db::rollback();
return V(0, "修改失败");
}
} catch (\Exception $e) {
db::rollback();
return V(0, $e->getMessage());

View File

@@ -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];
}
}
}