diff --git a/comm/imodule.go b/comm/imodule.go index d4e44aec6..2183856e8 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -221,6 +221,8 @@ type ( PsConvertExp(ps int32) (res *cfg.Gameatn) CleanUserConsumeMoney(session IUserSession) (err error) + // 增加隐藏分 + AddUserHidenum(session IUserSession, score int32) (err error) } //武器模块 IEquipment interface { diff --git a/modules/plunder/model_land.go b/modules/plunder/model_land.go index 21d57e3c3..523775b97 100644 --- a/modules/plunder/model_land.go +++ b/modules/plunder/model_land.go @@ -71,7 +71,7 @@ func (this *modelLand) createPlunderLandData(uid string) (land *pb.DBPlunderLand } uids = append(uids, uid) // 优先加入自己 uInfos = append(uInfos, comm.GetUserBaseInfo(user)) - cur, err := this.DB.Find(core.SqlTable(comm.TableUser), bson.M{"gold": bson.M{"$gte": limtSocre}, "name": bson.M{"$ne": ""}}, options.Find().SetSkip(int64(0)).SetLimit(int64(30))) + cur, err := this.DB.Find(core.SqlTable(comm.TableUser), bson.M{"plunder": bson.M{"$gte": limtSocre}, "name": bson.M{"$ne": ""}}, options.Find().SetSkip(int64(0)).SetLimit(int64(30))) for cur.Next(context.TODO()) { tmp := &pb.DBUser{} if err = cur.Decode(tmp); err == nil { diff --git a/modules/plunder/model_plunder.go b/modules/plunder/model_plunder.go index bbbbb732c..a2838c0f1 100644 --- a/modules/plunder/model_plunder.go +++ b/modules/plunder/model_plunder.go @@ -136,7 +136,7 @@ func (this *modelPlunder) queryPlunderInfos(uids []string, landid string) (data results = make([]*pb.DBPlunder, 0) mp = make(map[string]struct{}) - if _, err = this.Gets(uids, &results); err != nil { + if _, err = this.GetByUids(uids, &results); err != nil { this.module.Errorln(err) return } diff --git a/modules/user/model_user.go b/modules/user/model_user.go index 86012de06..566cc8865 100644 --- a/modules/user/model_user.go +++ b/modules/user/model_user.go @@ -45,6 +45,9 @@ func (this *ModelUser) Init(service core.IService, module core.IModule, comp cor this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ Keys: bsonx.Doc{{Key: "merchantmoney", Value: bsonx.Int32(1)}}, }) + this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ + Keys: bsonx.Doc{{Key: "plunder", Value: bsonx.Int32(1)}}, + }) return } @@ -420,3 +423,36 @@ func (this *ModelUser) CleanUserConsumeMoney(session comm.IUserSession) (err err } return } + +func (this *ModelUser) AddUserHidenum(uid string, score int32) (err error) { + var ( + user *pb.DBUser + ) + user = &pb.DBUser{} + + if this.module.IsCross() { + var model *db.DBModel + if model, err = this.module.GetDBModelByUid(uid, this.TableName); err != nil { + this.module.Errorln(err) + } else { + if err = model.Get(uid, user); err != nil { + this.module.Errorf("uid:%s err:%v", uid, err) + } + if err = model.Change(uid, map[string]interface{}{ + "plunder": user.Plunder + score, + }); err != nil { + this.module.Errorf("uid:%s err:%v", uid, err) + } + } + } else { + if err = this.Get(uid, user); err != nil { + this.module.Errorf("uid:%s err:%v", uid, err) + } + if err = this.Change(uid, map[string]interface{}{ + "plunder": user.Plunder + score, + }); err != nil { + this.module.Errorf("uid:%s err:%v", uid, err) + } + } + return +} diff --git a/modules/user/module.go b/modules/user/module.go index 08bf331b5..34620324a 100644 --- a/modules/user/module.go +++ b/modules/user/module.go @@ -1476,3 +1476,6 @@ func (this *User) PsConvertExp(ps int32) (res *cfg.Gameatn) { func (this *User) CleanUserConsumeMoney(session comm.IUserSession) (err error) { return this.modelUser.CleanUserConsumeMoney(session) } +func (this *User) AddUserHidenum(session comm.IUserSession, score int32) (err error) { + return this.modelUser.AddUserHidenum(session.GetUserId(), score) +}