修复任务条件初始问题

This commit is contained in:
wh_zcy 2022-12-01 12:00:08 +08:00
parent e7c1747751
commit 2c12e6ae26

View File

@ -10,6 +10,7 @@ import (
cfg "go_dreamfactory/sys/configure/structs" cfg "go_dreamfactory/sys/configure/structs"
"github.com/pkg/errors" "github.com/pkg/errors"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo"
) )
@ -20,9 +21,14 @@ func (this *ModelRtaskRecord) overrideUpdate(uid string, cfg *cfg.GameRdtaskCond
return err return err
} }
record := &pb.DBRtaskRecord{} record := &pb.DBRtaskRecord{Uid: uid}
if err := this.Get(uid, record); err != nil { 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) 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} record := &pb.DBRtaskRecord{Uid: uid}
err = this.Get(uid, record) err = this.Get(uid, record)
if err != nil { 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) return errors.Wrapf(err, "获取玩家任务记录 err: %v rtype[%v]", uid, cfg.Id)
} }
} }