package user import ( "go_dreamfactory/comm" "go_dreamfactory/pb" ) func (this *apiComp) AddResCheck(session comm.IUserSession, req *pb.UserAddResReq) (result map[string]interface{}, code comm.ErrorCode) { result = make(map[string]interface{}) user := this.module.modelUser.getUser(session.GetUserId()) if user == nil { code = comm.ErrorCode{Code: pb.ErrorCode_UserSessionNobeing} return } result["user"] = user return } func (this *apiComp) AddRes(session comm.IUserSession, result map[string]interface{}, req *pb.UserAddResReq) (code pb.ErrorCode) { rsp := &pb.UserAddResResp{} defer func() { if err := session.SendMsg(string(this.module.GetType()), UserSubTypeAddRes, rsp); err != nil { code = pb.ErrorCode_SystemError return } }() if u, ok := result["user"]; ok { user := u.(*pb.DBUser) 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 }