go_dreamfactory/modules/arena/api_delreward.go
2022-10-27 14:19:34 +08:00

47 lines
1.2 KiB
Go

package arena
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) DelRewardCheck(session comm.IUserSession, req *pb.ArenaDelRewardReq) (code pb.ErrorCode) {
if req.Bid == "" {
code = pb.ErrorCode_ReqParameterError
}
return
}
///删除战斗记录
func (this *apiComp) DelReward(session comm.IUserSession, req *pb.ArenaDelRewardReq) (code pb.ErrorCode, data proto.Message) {
var (
info *pb.DBArenaUser
err error
)
if code = this.DelRewardCheck(session, req); code != pb.ErrorCode_Success {
return
}
if info, err = this.module.modelArena.queryPlayerInfo(session.GetUserId()); err != nil && err != mgo.MongodbNil {
code = pb.ErrorCode_DBError
return
}
if info.Record != nil {
for i, v := range info.Record {
if v.Bid == req.Bid {
info.Record = append(info.Record[0:i], info.Record[i+1:]...)
break
}
}
}
if err = this.module.modelArena.updateArenaUserInfo(info); err != nil {
code = pb.ErrorCode_DBError
return
}
session.SendMsg(string(this.module.GetType()), "delreward", &pb.ArenaDelRewardResp{Issucc: true, Bid: req.Bid})
return
}