Files
web_huakui_server/pub/common/recomapi/feedback.go
T
rootandClaude Opus 4.7 85c0071fd8 feat: 从黄果 NET hgdjnet-server 9bfbafe 导入 HKDJ 官网后端
来源:hgdjnet-server 9bfbafe10d417deea959bd53117bc88a10e60a83
项目身份 HKDJ / JHA-216,独立官网仓库,Jenkins 守卫键 hkdjnet
测试目录 /server/hkdj_net,App/Web API 30331/30332

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-10-16 11:20:04 +08:00

46 lines
1.3 KiB
Go

package recomapi
import (
"encoding/json"
"hkdj-web-server/pub/common/log"
"hkdj-web-server/pub/common/srvdef"
"hkdj-web-server/pub/common/utils"
"net/http"
"strconv"
"time"
)
// AddOneFeedback 添加一个推荐反馈
func AddOneFeedback(url string, key string,
userId int64, mediaId int64, fbType string, comment string) (
int64, *srvdef.SrvErr) {
feedBack := &FeedbackInfo{
UserId: strconv.FormatInt(userId, 10),
ItemId: strconv.FormatInt(mediaId, 10),
FeedbackType: fbType,
Comment: comment,
Timestamp: time.Now(),
}
return AddManyFeedbacks(url, key, FeedbackInfoList{feedBack})
}
func AddManyFeedbacks(url string, key string, feedbacks FeedbackInfoList) (
int64, *srvdef.SrvErr) {
reqUrl := url + "/api/feedback"
resp := &APIResult{}
reqBody, _ := json.Marshal(feedbacks)
header := map[string]string{"X-API-Key": key}
code, err := utils.POSTJsonWithJResp(resp, reqUrl, header, reqBody)
if err != nil {
log.Error("recomapi:AddManyFeedbacks POSTJsonWithJResp failed",
log.Any("reqUrl", reqUrl), log.E(err))
return 0, srvdef.New(srvdef.Err, "", "")
}
if code != http.StatusOK {
log.Error("recomapi:AddManyFeedbacks POSTJsonWithJResp code error.",
log.Any("reqUrl", reqUrl), log.Any("code", code))
return 0, srvdef.New(srvdef.Err, "", "")
}
return resp.RowAffected, nil
}