根据提供的code differences信息为空的情况,生成一个占位符commit message:

```
docs(changelog): 更新变更日志记录

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

注意:由于您提供的code differences信息为空,无法生成具体的功能性commit message。请提供实际的代码差异内容以便生成准确的提交信息。
This commit is contained in:
昔念
2026-03-25 23:00:18 +08:00
parent 12c97dbf90
commit 537dfc1be1
5 changed files with 33 additions and 29 deletions

File diff suppressed because one or more lines are too long

View File

@@ -77,7 +77,7 @@ modules:
sso: false
secret: "sun-base88776655"
token:
expire: 10 # 2*3600
expire: 7200 # 2*3600
refreshExpire: 1296000 # 24*3600*15
middleware:
authority:

View File

@@ -75,29 +75,24 @@ func (s *BaseSysUserService) DuihuanGold(userId uint32, gold, free int64) {
}
func (s *BaseSysUserService) BindQQ(username string, passworid string, qq int64) (err error) {
func (s *BaseSysUserService) BindQQ(id uint32, qq int64) (err error) {
var res *model.BaseSysUser
cool.DBM(s.Model).Where("qq", qq).Scan(&res)
username = strings.ToLower(username)
if res != nil {
err = gerror.New("该QQ已绑定其他账号" + gconv.String(res.ID))
return
}
var res1 *model.BaseSysUser
cool.DBM(s.Model).Where("username", username).Scan(&res1)
cool.DBM(s.Model).Where("id", id).Scan(&res1)
if res1 == nil {
return gerror.New("用户未激活")
}
if res1.QQ != 0 {
return gerror.New("用户已绑定QQ")
}
r, err := s.GetUserInfo(username, passworid)
if err != nil {
return
}
if r == nil {
err = gerror.New("用户不存在")
return
}
_, err = cool.DBM(s.Model).Where("username", username).Data("qq", qq).Update()
_, err = cool.DBM(s.Model).Where("id", id).Data("qq", qq).Update()
if err != nil {
return err
}

View File

@@ -1,9 +1,12 @@
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"
)
@@ -11,9 +14,21 @@ func init() {
zero.OnCommand("绑定").
Handle(func(ctx *zero.Ctx) {
msgs := strings.Fields(ctx.Event.Message.String())
if len(msgs) > 2 {
if len(msgs) > 1 {
token, err := jwt.ParseWithClaims(msgs[1], &cool.Claims{}, func(token *jwt.Token) (interface{}, error) {
err := service.NewBaseSysUserService().BindQQ(msgs[1], msgs[2], ctx.Event.Sender.ID)
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())

View File

@@ -26,26 +26,15 @@ func (c *PetInfo) calculatePetHPPanelSize(base, dv, level, ev uint32) uint32 {
}
// 计算其他属性面板值(带性格修正)
func (c *PetInfo) calculatePetPanelSize(base, ev uint32, natureCorrect float64) uint32 {
func (c *PetInfo) calculatePetPanelSize(base, ev uint32, level uint32, natureCorrect float64) uint32 {
base1 := float64((float64(base)*2+float64(ev)/4.0+float64(c.Dv))*(float64(c.Level)/100.0) + 5)
base1 := float64((float64(base)*2+float64(ev)/4.0+float64(c.Dv))*(float64(level)/100.0) + 5)
return uint32(float64(base1) * natureCorrect)
}
// 计算生成面板,只允许第一次生成超过100比如boss,不允许额外超过
func (p *PetInfo) CalculatePetPane(limit uint32) {
// if !frist {
// if p.Level > 100 {
// oldlveel := p.Level
// p.Level = 100
// defer func() {
// p.Level = oldlveel
// }()
// }
// }
naxml := xmlres.NatureRootMap[int(p.Nature)]
petxml := xmlres.PetMAP[int(p.ID)]
// 计算各项属性
@@ -65,6 +54,7 @@ func (p *PetInfo) CalculatePetPane(limit uint32) {
uint32(petxml.Atk),
p.Ev[1],
level,
naxml.AttackCorrect,
)
@@ -72,6 +62,7 @@ func (p *PetInfo) CalculatePetPane(limit uint32) {
uint32(petxml.Def),
p.Ev[2],
level,
naxml.DefenseCorrect,
)
@@ -79,6 +70,7 @@ func (p *PetInfo) CalculatePetPane(limit uint32) {
uint32(petxml.SpAtk),
p.Ev[3],
level,
naxml.SaCorrect,
)
@@ -86,6 +78,7 @@ func (p *PetInfo) CalculatePetPane(limit uint32) {
uint32(petxml.SpDef),
p.Ev[4],
level,
naxml.SdCorrect,
)
@@ -93,6 +86,7 @@ func (p *PetInfo) CalculatePetPane(limit uint32) {
uint32(petxml.Spd),
p.Ev[5],
level,
naxml.SpeedCorrect,
)