package questionnaire import ( "go_dreamfactory/comm" "go_dreamfactory/pb" cfg "go_dreamfactory/sys/configure/structs" ) // 参数校验 func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.QuestionnaireInfoReq) (errdata *pb.ErrorData) { return } // /设置战斗阵型 func (this *apiComp) Info(session comm.IUserSession, req *pb.QuestionnaireInfoReq) (errdata *pb.ErrorData) { var ( info *pb.DBQuestionnaire conf *cfg.GameAskAllData asks []*cfg.GameAskLibraryData ok bool err error ) if errdata = this.InfoCheck(session, req); errdata != nil { return } if info, err = this.module.modelQuestionnaire.getUserQuestionnaire(session.GetUserId()); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), Message: err.Error(), } return } if _, ok = info.Group[req.Group]; !ok { if conf, err = this.module.configure.getAskAllData(req.Group); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ConfigNoFound, Title: pb.ErrorCode_ConfigNoFound.ToString(), Message: err.Error(), } return } if asks, err = this.module.configure.getGameAskLibraryData(conf.ExaminationGroup, conf.Examinationnum); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ConfigNoFound, Title: pb.ErrorCode_ConfigNoFound.ToString(), Message: err.Error(), } return } info.Group[req.Group] = &pb.DBQuestionGroup{ Group: req.Group, Questions: make([]int32, len(asks)), Answer: make([]int32, len(asks)), } for i, v := range asks { info.Group[req.Group].Questions[i] = v.Id info.Group[req.Group].Answer[i] = 0 } if err = this.module.modelQuestionnaire.updateUserQuestionnaire(session.GetUserId(), info); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), Message: err.Error(), } return } } session.SendMsg(string(this.module.GetType()), "info", &pb.QuestionnaireInfoResp{Info: info.Group[req.Group], Group: req.Group}) return }