From b079b597c3f038f83df8b5933921d795c17733aa Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 13 Jan 2026 11:24:50 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=20=E5=A2=9E=E5=8A=A0=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E7=AB=9E=E5=93=81=E6=8A=A5=E5=91=8A=E4=BD=99=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/service/cast/report.go | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/pkg/service/cast/report.go b/pkg/service/cast/report.go index 50d805e..ad900ac 100644 --- a/pkg/service/cast/report.go +++ b/pkg/service/cast/report.go @@ -2,10 +2,12 @@ package cast import ( "context" + "errors" "fmt" "fonchain-fiee/api/bundle" "fonchain-fiee/api/cast" "fonchain-fiee/pkg/cache" + "fonchain-fiee/pkg/e" modelCast "fonchain-fiee/pkg/model/cast" "fonchain-fiee/pkg/service" "fonchain-fiee/pkg/utils" @@ -26,6 +28,15 @@ func CreateCompetitiveReport(ctx *gin.Context) { return } newCtx := NewCtxWithUserInfo(ctx) + artistID, _ := strconv.ParseUint(req.ArtistID, 10, 64) + if _, err = CheckUserBundleBalance(int32(artistID), modelCast.BalanceTypeCompetitiveValue); err != nil { + if err != nil && err.Error() == e.ErrorBalanceInsufficient { + service.Error(ctx, errors.New("该艺人竞品报告可用次数为0")) + return + } + service.Error(ctx, err) + return + } resp, err := service.CastProvider.CreateCompetitiveReport(newCtx, req) if err != nil { service.Error(ctx, err) @@ -428,12 +439,12 @@ func autoConfirmReport(ctx context.Context, reportUuid string) (err error) { var addBalanceReq bundle.AddBundleBalanceReq addBalanceReq.UserId = int32(userID) - // 检查数据分析余量 - if balanceInfoRes.DataAnalysisExtendConsumptionNumber >= balanceInfoRes.DataAnalysisExtendNumber { + // 检查竞品报告余量 + if balanceInfoRes.CompetitiveExtendConsumptionNumber >= balanceInfoRes.CompetitiveExtendNumber { confirmRemark = "数据分析余量不足" isFailed = true } - addBalanceReq.DataAnalysisConsumptionNumber = 1 + addBalanceReq.CompetitiveConsumptionNumber = 1 zap.L().Info("autoConfirmReport AddBundleBalanceReq", zap.Any("addBalanceReq", &addBalanceReq)) resp, err := service.BundleProvider.AddBundleBalance(context.Background(), &addBalanceReq)