From ba29beb85f0498b2a1dc1d7b7431bea52e730a16 Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Fri, 18 Nov 2022 23:09:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=BB=E5=8A=A1=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/rtask/updateHandle.go | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/modules/rtask/updateHandle.go b/modules/rtask/updateHandle.go index daefae308..ec93731ef 100644 --- a/modules/rtask/updateHandle.go +++ b/modules/rtask/updateHandle.go @@ -20,11 +20,9 @@ func (this *ModelRtaskRecord) overrideUpdate(uid string, cfg *cfg.GameRdtaskCond } record := &pb.DBRtaskRecord{} - if err2 := this.Get(uid, record); err2 != nil { - if err2 != mongo.ErrNoDocuments { + if err := this.Get(uid, record); err != nil { + if err != mongo.ErrNoDocuments { return errors.Wrapf(err, "获取玩家任务记录 err: %v rtype[%v]", uid, cfg.Id) - } else { - err = err2 } } @@ -34,11 +32,15 @@ func (this *ModelRtaskRecord) overrideUpdate(uid string, cfg *cfg.GameRdtaskCond if v, ok := record.Vals[cfg.Id]; ok { m := hasUpdateData(paramLen, v, vals...) + v.Data = m if len(m) > 0 { update := map[string]interface{}{ - "vals": m, + "vals": v, } - err = this.Change(uid, update) + if err = this.Change(uid, update); err != nil { + return + } + } } else { data := &pb.RtaskData{ @@ -51,7 +53,9 @@ func (this *ModelRtaskRecord) overrideUpdate(uid string, cfg *cfg.GameRdtaskCond update := map[string]interface{}{ "vals": record.Vals, } - err = this.Change(uid, update) + if err = this.Change(uid, update); err != nil { + return + } } this.listenTask(uid, cfg.Id)