diff --git a/logic/controller/pet_info.go b/logic/controller/pet_info.go index 5d18887e..5e025441 100644 --- a/logic/controller/pet_info.go +++ b/logic/controller/pet_info.go @@ -132,8 +132,8 @@ func (h Controller) TogglePetBagWarehouse( if index < 0 || index >= len(player.Info.PetList) { return result, errorcode.ErrorCodes.ErrPokemonIDMismatch } - err := player.Service.Pet.UPdate(*pet) - if err != nil { + + if !player.Service.Pet.UPdate(*pet) { return result, errorcode.ErrorCodes.ErrSystemError } diff --git a/modules/player/service/pet.go b/modules/player/service/pet.go index 41fbecaa..487a77bf 100644 --- a/modules/player/service/pet.go +++ b/modules/player/service/pet.go @@ -171,20 +171,15 @@ RETURNING max_ts; }) } -func (s *PetService) UPdate(t model.PetInfo) error { +func (s *PetService) UPdate(t model.PetInfo) bool { - m := s.dbm(s.Model).Where("catch_time", t.CatchTime) - var tt *model.Pet - m.Scan(&tt) - if tt == nil { - return fmt.Errorf("没有此精灵") - } - tt.Data = t - _, err := m.OnConflict("catch_time").Update(tt) + _, err := s.dbm(s.Model).Where("catch_time", t.CatchTime).Data("data", t).Update() if err != nil { - return err + return false } - return nil + + return true + } func (s *PetService) PetInfo_One(cachetime uint32) *model.Pet {