From f1223e471c2eb2126dd3f7b0160884b890abf4e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=94=E5=BF=B5?= <12574910+72wo@users.noreply.github.com> Date: Tue, 24 Mar 2026 12:18:30 +0800 Subject: [PATCH] =?UTF-8?q?```=20fix(base):=20=E4=BF=AE=E5=A4=8DQQ?= =?UTF-8?q?=E7=BB=91=E5=AE=9A=E5=8A=9F=E8=83=BD=E4=B8=AD=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=90=8D=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在BindQQ方法中,将数据库查询条件从"id"字段更正为"username"字段, 确保能够正确根据用户名查找和更新用户信息。 ``` --- modules/base/service/base_sys_user.go | 4 ++-- modules/player/controller/robot/bindqq.go | 26 +++++++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 modules/player/controller/robot/bindqq.go diff --git a/modules/base/service/base_sys_user.go b/modules/base/service/base_sys_user.go index 49424bb9..ce5770f3 100644 --- a/modules/base/service/base_sys_user.go +++ b/modules/base/service/base_sys_user.go @@ -84,7 +84,7 @@ func (s *BaseSysUserService) BindQQ(username string, passworid string, qq int64) return } var res1 *model.BaseSysUser - cool.DBM(s.Model).Where("id", username).Scan(&res1) + cool.DBM(s.Model).Where("username", username).Scan(&res1) if res1 == nil { return gerror.New("用户未激活") } @@ -97,7 +97,7 @@ func (s *BaseSysUserService) BindQQ(username string, passworid string, qq int64) err = gerror.New("用户不存在") return } - _, err = cool.DBM(s.Model).Where("id", username).Data("qq", qq).Update() + _, err = cool.DBM(s.Model).Where("username", username).Data("qq", qq).Update() if err != nil { return err } diff --git a/modules/player/controller/robot/bindqq.go b/modules/player/controller/robot/bindqq.go new file mode 100644 index 00000000..1f26934b --- /dev/null +++ b/modules/player/controller/robot/bindqq.go @@ -0,0 +1,26 @@ +package robot + +import ( + "blazing/modules/base/service" + "strings" + + zero "github.com/wdvxdr1123/ZeroBot" +) + +func init() { + zero.OnCommand("绑定"). + Handle(func(ctx *zero.Ctx) { + msgs := strings.Fields(ctx.Event.Message.String()) + if len(msgs) > 2 { + + err := service.NewBaseSysUserService().BindQQ(msgs[1], msgs[2], ctx.Event.Sender.ID) + if err != nil { + ctx.Send(err.Error()) + } else { + ctx.Send("绑定成功") + } + + } + + }) +}