From c9e50ef86456ab3886271b183f387d3fbffa6e3a Mon Sep 17 00:00:00 2001 From: Leufolium Date: Tue, 2 Jul 2024 16:29:08 +0800 Subject: [PATCH 1/3] by Robin at 20240702 --- app/mix/service/apiservice_business_validation.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/mix/service/apiservice_business_validation.go b/app/mix/service/apiservice_business_validation.go index afa74e5a..4a0d38f5 100644 --- a/app/mix/service/apiservice_business_validation.go +++ b/app/mix/service/apiservice_business_validation.go @@ -536,6 +536,9 @@ func (s *Service) ApiCreateMomentBusinessValidate(ctx *gin.Context, req *momentp ec = errcode.ErrCodeMomentSrvOk resultList := businessvalidator.NewAuthBusinessValidator(ctx, req). + QueryAccount(_DefaultAccount.OpListByMid). + EnsureAccountExist(). + EnsureIsThisRole(consts.Streamer). EnsureMediaIsSuccessfullyUploaded(req.Moment.MediaComp). EnsureSuchAccountPunishmentNotExist(req.GetBaseRequest().Mid, consts.AccountPunishment_BlockFromCreatingMoment, _DefaultAccountPunishment.OpListByMidAndType). QueryMomentCreateTimes(_DefaultMomentCreateTimes.OpGetAndUpdate, req.GetBaseRequest().Mid). @@ -556,6 +559,9 @@ func (s *Service) ApiUpdateMomentBusinessValidate(ctx *gin.Context, req *momentp ec = errcode.ErrCodeMomentSrvOk resultList := businessvalidator.NewAuthBusinessValidator(ctx, req). + QueryAccount(_DefaultAccount.OpListByMid). + EnsureAccountExist(). + EnsureIsThisRole(consts.Streamer). EnsureMediaIsSuccessfullyUploaded(req.Moment.MediaComp). Validate(). Collect() -- 2.41.0 From faa900a4cd2f91da0b613635405c704f6f7aeebd Mon Sep 17 00:00:00 2001 From: Leufolium Date: Tue, 2 Jul 2024 18:40:00 +0800 Subject: [PATCH 2/3] by Robin at 20240702 --- api/errcode/errcode.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/api/errcode/errcode.go b/api/errcode/errcode.go index 443116e6..53cd00c8 100644 --- a/api/errcode/errcode.go +++ b/api/errcode/errcode.go @@ -71,8 +71,9 @@ var ErrCodeMsgMap = map[ErrCode]string{ ErrCodeVasAlipayUniTransferFail: "支付宝提现失败", ErrCodeVasOverTodayWithdrawCnt: "今日提现次数到达上限", - ErrCodeMomentSrvFail: "动态服务错误", - ErrCodeMomentNotExist: "动态不存在", + ErrCodeMomentSrvFail: "动态服务错误", + ErrCodeMomentNotExist: "动态不存在", + ErrCodeMomentNotAStreamer: "当前账号无发帖权限", // ErrCodeMomentBlockedFromCreatingMoment: "功能封禁中,截止时间:%s", // ErrCodeMomentBlockedFromCreatingMomentPermanently: "该功能已被永久封禁", @@ -314,9 +315,10 @@ const ( ErrCodeVasOverRefundLimit ErrCode = -7023 // 退款次数达上限 // Moment: 8xxx - ErrCodeMomentSrvOk ErrCode = ErrCodeOk - ErrCodeMomentSrvFail ErrCode = -8001 // 动态服务错误 - ErrCodeMomentNotExist ErrCode = -8002 // 动态不存在 + ErrCodeMomentSrvOk ErrCode = ErrCodeOk + ErrCodeMomentSrvFail ErrCode = -8001 // 动态服务错误 + ErrCodeMomentNotExist ErrCode = -8002 // 动态不存在 + ErrCodeMomentNotAStreamer ErrCode = -8003 // 普通用户禁止发帖 // ErrCodeMomentBlockedFromCreatingMoment ErrCode = -8003 // 动态创建已被封禁 // ErrCodeMomentBlockedFromCreatingMomentPermanently ErrCode = -8004 // 动态创建已被永久封禁 -- 2.41.0 From c022b0246ae2f4a35a3373b78a93f1991c7072d2 Mon Sep 17 00:00:00 2001 From: Leufolium Date: Tue, 2 Jul 2024 18:42:32 +0800 Subject: [PATCH 3/3] 1 --- app/mix/service/apiservice.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/mix/service/apiservice.go b/app/mix/service/apiservice.go index e0918a02..83820e75 100644 --- a/app/mix/service/apiservice.go +++ b/app/mix/service/apiservice.go @@ -1695,6 +1695,10 @@ func (s *Service) ApiCreateMoment(ctx *gin.Context, req *momentproto.ApiCreateRe req.Moment.Mid = goproto.Int64(req.BaseRequest.Mid) var accountpunishment *dbstruct.AccountPunishment if ec, accountpunishment = s.ApiCreateMomentBusinessValidate(ctx, req); ec != errcode.ErrCodeMomentSrvOk { + if ec == errcode.ErrCodeRolePrivilegesNotEnough { + ec = errcode.ErrCodeMomentNotAStreamer + return + } if ec == errcode.ErrCodeAccountPunishmentExist { if accountpunishment.IsPermanent() { ec = errcode.ErrCodeFunctionBlockedPermanently -- 2.41.0