Files
bl/modules/player/controller/robot/bindqq.go
昔念 537dfc1be1 根据提供的code differences信息为空的情况,生成一个占位符commit message:
```
docs(changelog): 更新变更日志记录

由于未提供具体的代码差异信息,此提交用于占位和记录变更日志的更新。
```

注意:由于您提供的code differences信息为空,无法生成具体的功能性commit message。请提供实际的代码差异内容以便生成准确的提交信息。
2026-03-25 23:00:18 +08:00

44 lines
1.0 KiB
Go

package robot
import (
"blazing/cool"
"blazing/modules/base/config"
"blazing/modules/base/service"
"strings"
"github.com/golang-jwt/jwt/v4"
zero "github.com/wdvxdr1123/ZeroBot"
)
func init() {
zero.OnCommand("绑定").
Handle(func(ctx *zero.Ctx) {
msgs := strings.Fields(ctx.Event.Message.String())
if len(msgs) > 1 {
token, err := jwt.ParseWithClaims(msgs[1], &cool.Claims{}, func(token *jwt.Token) (interface{}, error) {
return []byte(config.Config.Jwt.Secret), nil
})
if err != nil {
ctx.SendPrivateMessage(ctx.Event.Sender.ID, err.Error())
return
}
if !token.Valid {
ctx.SendPrivateMessage(ctx.Event.Sender.ID, "无效的token")
return
}
admin := token.Claims.(*cool.Claims)
err = service.NewBaseSysUserService().BindQQ(uint32(admin.UserId), ctx.Event.Sender.ID)
if err != nil {
ctx.SendPrivateMessage(ctx.Event.Sender.ID, err.Error())
} else {
ctx.SendPrivateMessage(ctx.Event.Sender.ID, "绑定成功")
}
}
})
}