From 2c12e6ae26815405b8f9e472f1e3c51dbdecff86 Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Thu, 1 Dec 2022 12:00:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BB=BB=E5=8A=A1=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=E5=88=9D=E5=A7=8B=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/rtask/updateHandle.go | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/modules/rtask/updateHandle.go b/modules/rtask/updateHandle.go index 25a69679c..52b91c527 100644 --- a/modules/rtask/updateHandle.go +++ b/modules/rtask/updateHandle.go @@ -10,6 +10,7 @@ import ( cfg "go_dreamfactory/sys/configure/structs" "github.com/pkg/errors" + "go.mongodb.org/mongo-driver/bson/primitive" "go.mongodb.org/mongo-driver/mongo" ) @@ -20,9 +21,14 @@ func (this *ModelRtaskRecord) overrideUpdate(uid string, cfg *cfg.GameRdtaskCond return err } - record := &pb.DBRtaskRecord{} + record := &pb.DBRtaskRecord{Uid: uid} if err := this.Get(uid, record); err != nil { - if err != mongo.ErrNoDocuments { + if err == mongo.ErrNoDocuments { + record.Id = primitive.NewObjectID().Hex() + if err := this.Add(uid, record); err != nil { + return errors.Wrapf(err, "创建玩家任务记录 err: %v rtype[%v]", uid, cfg.Id) + } + } else { return errors.Wrapf(err, "获取玩家任务记录 err: %v rtype[%v]", uid, cfg.Id) } } @@ -67,7 +73,12 @@ func (this *ModelRtaskRecord) addUpdate(uid string, cfg *cfg.GameRdtaskCondiData record := &pb.DBRtaskRecord{Uid: uid} err = this.Get(uid, record) if err != nil { - if err != mongo.ErrNoDocuments { + if err == mongo.ErrNoDocuments { + record.Id = primitive.NewObjectID().Hex() + if err := this.Add(uid, record); err != nil { + return errors.Wrapf(err, "创建玩家任务记录 err: %v rtype[%v]", uid, cfg.Id) + } + } else { return errors.Wrapf(err, "获取玩家任务记录 err: %v rtype[%v]", uid, cfg.Id) } }