From ae59f82e02eab36a1f5ef8271cd7c898b31c900a Mon Sep 17 00:00:00 2001 From: liwei <2211068034@qq.com> Date: Tue, 25 Jul 2023 10:08:34 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=97=AE=E7=AD=94=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/questionnaire/api_answer.go | 10 +++++++++- modules/questionnaire/modelQuestionnaire.go | 4 +++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/modules/questionnaire/api_answer.go b/modules/questionnaire/api_answer.go index 2570f8a31..e6f32566b 100644 --- a/modules/questionnaire/api_answer.go +++ b/modules/questionnaire/api_answer.go @@ -48,6 +48,7 @@ func (this *apiComp) Answer(session comm.IUserSession, req *pb.QuestionnaireAnsw } finish = true correct = make([]int32, 0) + asks = make([]*cfg.GameAskLibraryData, len(group.Questions)) for i, v := range group.Questions { if asks[i], err = this.module.configure.getGameAskLibraryDataById(v); err != nil { errdata = &pb.ErrorData{ @@ -96,7 +97,14 @@ func (this *apiComp) Answer(session comm.IUserSession, req *pb.QuestionnaireAnsw tasks = append(tasks, comm.GetBuriedParam(comm.Rtype204, 1)) go this.module.ModuleBuried.TriggerBuried(session.Clone(), tasks...) } - + 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()), "answer", &pb.QuestionnaireAnswerResp{Info: info.Group[req.Group], Group: req.Group, Award: award}) return } diff --git a/modules/questionnaire/modelQuestionnaire.go b/modules/questionnaire/modelQuestionnaire.go index 4fec8df9f..05dc7a63f 100644 --- a/modules/questionnaire/modelQuestionnaire.go +++ b/modules/questionnaire/modelQuestionnaire.go @@ -30,7 +30,9 @@ func (this *ModelQuestionnaire) Init(service core.IService, module core.IModule, // 获取用户全部的埋点数据 func (this *ModelQuestionnaire) getUserQuestionnaire(uid string) (results *pb.DBQuestionnaire, err error) { - results = &pb.DBQuestionnaire{} + results = &pb.DBQuestionnaire{ + Group: make(map[int32]*pb.DBQuestionGroup), + } if err = this.Get(uid, results); err != nil && err != mgo.MongodbNil { this.module.Errorln(err) return