package service import ( "blazing/cool" "blazing/modules/player/model" "context" "github.com/gogf/gf/v2/frame/g" ) type BargeService struct { BaseService } func NewBargeService(id uint32) *BargeService { return &BargeService{ BaseService: BaseService{userid: id, Service: &cool.Service{Model: model.NewPetBargeListInfo()}, }, } } func (s *BargeService) Update(petid uint32, isskill bool) { if cool.Config.ServerInfo.IsVip != 0 { cool.Logger.Info(context.TODO(), "测试服不消耗物品玩家数据", s.userid) return } if t, _ := s.PModel(s.Model).Where("pet_id", petid).Exist(); t { if isskill { s.PModel(s.Model).Where("pet_id", petid).Increment("killed_count", 1) } else { s.PModel(s.Model).Where("pet_id", petid).Increment("catched_count", 1) } } else { r := g.Map{ "player_id": s.userid, "pet_id": petid, } if isskill { r["killed_count"] = 1 } else { r["catched_count"] = 1 } s.PModel(s.Model).Data(r).Insert() } } func (s *BargeService) Get(start, end uint32) []model.PetBargeListInfo { var Barges []model.PetBargeListInfo s.PModel(s.Model).WhereBetween("pet_id", start, end).Scan(&Barges) return Barges }