package user import ( "go_dreamfactory/comm" "go_dreamfactory/pb" "google.golang.org/protobuf/proto" ) func (this *apiComp) AddResCheck(session comm.IUserSession, req *pb.UserAddResReq) (code pb.ErrorCode) { if req.ResType == "" || req.Count <= 0 { code = pb.ErrorCode_ReqParameterError } return } func (this *apiComp) AddRes(session comm.IUserSession, req *pb.UserAddResReq) (code pb.ErrorCode, data proto.Message) { rsp := &pb.UserAddResResp{} defer func() { if err := session.SendMsg(string(this.module.GetType()), UserSubTypeAddRes, rsp); err != nil { code = pb.ErrorCode_SystemError return } }() user := this.module.modelUser.getUser(session.GetUserId()) if user == nil { code = pb.ErrorCode_UserSessionNobeing return } count := req.Count switch req.ResType { case comm.ResGold: count += user.Gold case comm.ResExp: count += user.Exp } code = this.module.AddAttributeValue(session.GetUserId(), req.ResType, count) if code != pb.ErrorCode_Success { return } rsp.ResType = req.ResType rsp.Count = count return }