修复任务条件初始问题

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"
"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)
}
}