```
feat(pet): 优化宠物仓库和背包功能的数据库操作 - 使用copier.CopyWithOption替代直接赋值,确保深拷贝操作 - 移除冗余的model导入,简化代码结构 - 重构PetReleaseToWarehouse和PetRetrieveFromWarehouse方法, 直接调用UPdateFree方法更新宠物状态 - 优化TogglePetBagWarehouse方法中的宠物数据更新逻辑 - 添加
This commit is contained in:
@@ -37,17 +37,23 @@ func (s *PetService) PetCount(flag int) int {
|
||||
return ret
|
||||
|
||||
}
|
||||
func (s *PetService) UPdateFree(ctime uint32, free uint32) {
|
||||
|
||||
func (s *PetService) PetInfo_One_exec(cachetime uint32, t func(*model.PetEX)) {
|
||||
cool.DBM(s.Model).Where("player_id", s.userid).Where("catch_time", ctime).Data(
|
||||
|
||||
m := cool.DBM(s.Model).Where("player_id", s.userid).Where("catch_time", cachetime)
|
||||
"free", free,
|
||||
).Update()
|
||||
|
||||
}
|
||||
func (s *PetService) UPdate(t model.PetInfo) {
|
||||
|
||||
m := cool.DBM(s.Model).Where("player_id", s.userid).Where("catch_time", t.CatchTime)
|
||||
var tt model.PetEX
|
||||
m.Scan(&tt)
|
||||
if tt.CatchTime == 0 {
|
||||
return
|
||||
}
|
||||
tt.Data.CatchTime = tt.CatchTime
|
||||
t(&tt)
|
||||
tt.Data = t
|
||||
_, err := m.OnConflict("catch_time").Update(tt)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
|
||||
Reference in New Issue
Block a user