```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful

feat(service): 宠物添加功能增加销售计数参数并优化价格更新逻辑

- 修改PetAdd方法签名,增加salecount参数用于追踪宠物销售次数
- 在多个控制器中统一调用PetAdd方法时传入0作为初始销售次数
- 临时禁用寒流枪活动中的宠物发放功能
- 优化UPdatePrice方法,添加错误处理和价格范围验证逻辑
- 调整宠物购买逻辑,使用免费金币系统并计算递增购买
This commit is contained in:
昔念
2026-03-11 12:19:13 +08:00
parent 46bc05ab29
commit a29a8ddec2
17 changed files with 95 additions and 35 deletions

View File

@@ -9,7 +9,6 @@ import (
"blazing/modules/base/model"
"github.com/alpacahq/alpacadecimal"
"github.com/gogf/gf/v2/container/garray"
"github.com/gogf/gf/v2/container/gset"
"github.com/gogf/gf/v2/crypto/gmd5"
@@ -52,6 +51,20 @@ func (s *BaseSysUserService) SetdepartmentId(userId, departmentId uint32) (res *
return
}
func (s *BaseSysUserService) DuihuanFreeGold(userId uint32, free int64) {
m := cool.DBM(s.Model).Where("id", userId)
m.Data(g.Map{
"goldbean": gdb.Raw("goldbean-" + gconv.String(free)),
"free_gold": gdb.Raw("free_gold+" + gconv.String(free)),
}).Update()
}
func (s *BaseSysUserService) UpdateFreeGold(userId uint32, gold int64) {
m := cool.DBM(s.Model).Where("id", userId)
m.Increment("free_gold", gold)
}
// 单位是分
func (s *BaseSysUserService) UpdateGold(userId uint32, gold int64) {
@@ -67,10 +80,16 @@ func (s *BaseSysUserService) UpdateGold(userId uint32, gold int64) {
func (s *BaseSysUserService) GetGold(userId uint) (res int64) {
var res1 model.BaseSysUser
m := cool.DBM(s.Model)
m.Where("id", userId).FieldsEx("password").Scan(&res1)
m.Where("id", userId).Fields("goldbean").Scan(&res1)
r1 := alpacadecimal.NewFromInt(res1.GoldBean)
return r1.IntPart()
return res1.GoldBean
}
func (s *BaseSysUserService) GetFreeGold(userId uint) (res int64) {
var res1 model.BaseSysUser
m := cool.DBM(s.Model)
m.Where("id", userId).Fields("free_gold").Scan(&res1)
return res1.GoldBean
}
func (s *BaseSysUserService) GetEamil(userId string) (res *model.BaseSysUser) {
m := cool.DBM(s.Model)