From 7cc62b8b4fa66f4ff484cf86ac44ab18b934365a Mon Sep 17 00:00:00 2001 From: lianghuanjie Date: Fri, 17 Jan 2025 21:08:18 +0800 Subject: [PATCH] fix: game7 user not exist role bug --- internal/logic/carv/unlock_chapter_logic.go | 15 +++++++++------ internal/model/nh_game_report_model.go | 8 ++++++-- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/internal/logic/carv/unlock_chapter_logic.go b/internal/logic/carv/unlock_chapter_logic.go index 74ffebf..73f19c8 100644 --- a/internal/logic/carv/unlock_chapter_logic.go +++ b/internal/logic/carv/unlock_chapter_logic.go @@ -59,13 +59,16 @@ func (l *UnlockChapterLogic) UnlockChapter(req *types.UnlockChapterReq) *types.C gp, err := l.svcCtx.GameReportModel.FindMaxByEmail(l.ctx, req.Email) if err != nil { - l.Errorw("find game report error", logx.Field("err", err), logx.Field("email", req.Email)) - return &types.CarvResult{ - Error: &types.Error{ - Code: int(errs.ErrDatabaseOperate), - Message: "system error", - }, + if !errors.Is(err, model.ErrNotFound) { + l.Errorw("find game report error", logx.Field("err", err), logx.Field("email", req.Email)) + return &types.CarvResult{ + Error: &types.Error{ + Code: int(errs.ErrDatabaseOperate), + Message: "system error", + }, + } } + return &types.CarvResult{Result: &types.Result{IsValid: false}} } if gp.Chapter >= req.Chapter { diff --git a/internal/model/nh_game_report_model.go b/internal/model/nh_game_report_model.go index 35fbac6..0818489 100755 --- a/internal/model/nh_game_report_model.go +++ b/internal/model/nh_game_report_model.go @@ -48,10 +48,14 @@ GROUP BY ` var resp GameReport err := m.conn.QueryRowCtx(ctx, &resp, query, email) - if err != nil && !errors.Is(err, sqlx.ErrNotFound) { + switch { + case err == nil: + return &resp, nil + case errors.Is(err, sqlx.ErrNotFound): + return nil, ErrNotFound + default: return nil, err } - return &resp, nil } // NewNhGameReportModel returns a model for the database table.