fix: don't record log if staff

This commit is contained in:
ericprd 2025-03-20 11:19:41 +08:00
parent d8f6968f64
commit 0c8133c802

View File

@ -34,40 +34,42 @@ func GetBySlug(
return return
} }
var specReq logsdomain.LogsSpec
specReq.ContentID = news.ID
userDetail, _ := utils.GetTokenDetail(r) userDetail, _ := utils.GetTokenDetail(r)
if userDetail.ID != "" { if userDetail.Role != "staff" {
specReq.UserID = &userDetail.ID var specReq logsdomain.LogsSpec
}
ip := r.RemoteAddr specReq.ContentID = news.ID
if forwarded := r.Header.Get("X-Forwarded-For"); forwarded != "" { if userDetail.ID != "" {
ip = strings.Split(forwarded, ",")[0] specReq.UserID = &userDetail.ID
} }
if ip != "" { ip := r.RemoteAddr
specReq.IP = &ip
}
if userAgent := r.UserAgent(); userAgent != "" { if forwarded := r.Header.Get("X-Forwarded-For"); forwarded != "" {
specReq.UserAgent = &userAgent ip = strings.Split(forwarded, ",")[0]
} }
if err := logSvc.CreateLogNews(specReq); err != nil { if ip != "" {
response.RespondJsonErrorWithCode( specReq.IP = &ip
ctx, }
w,
err, if userAgent := r.UserAgent(); userAgent != "" {
response.ErrBadRequest.Code, specReq.UserAgent = &userAgent
response.ErrBadRequest.HttpCode, }
err.Error(),
) if err := logSvc.CreateLogNews(specReq); err != nil {
return response.RespondJsonErrorWithCode(
ctx,
w,
err,
response.ErrBadRequest.Code,
response.ErrBadRequest.HttpCode,
err.Error(),
)
return
}
} }
response.RespondJsonSuccess(ctx, w, news) response.RespondJsonSuccess(ctx, w, news)