bugfix
This commit is contained in:
@@ -19,8 +19,9 @@ func NewAIRecommendHandler() *AIRecommendHandler {
|
||||
return &AIRecommendHandler{svc: service.NewAIRecommendService()}
|
||||
}
|
||||
|
||||
// Create 发起 AI 穿搭推荐。
|
||||
func (h *AIRecommendHandler) Create(c *gin.Context) {
|
||||
// Submit 提交 AI 穿搭推荐任务(异步)。
|
||||
// 立即返回 task_id,不等待大模型;生成在前端断开后仍会继续,结果通过 Status 轮询获取。
|
||||
func (h *AIRecommendHandler) Submit(c *gin.Context) {
|
||||
response := app.NewResponse(c)
|
||||
userID, ok := middleware.GetUserID(c.Request.Context())
|
||||
if !ok {
|
||||
@@ -32,7 +33,28 @@ func (h *AIRecommendHandler) Create(c *gin.Context) {
|
||||
response.ToErrorResponse(errcode.InvalidParams.WithDetails(err.Error()))
|
||||
return
|
||||
}
|
||||
out, e := h.svc.Create(c.Request.Context(), userID, &request)
|
||||
out, e := h.svc.Submit(c.Request.Context(), userID, &request)
|
||||
if e != nil {
|
||||
response.ToErrorResponse(e)
|
||||
return
|
||||
}
|
||||
response.ToResponse(out)
|
||||
}
|
||||
|
||||
// Status 查询 AI 穿搭推荐任务的状态与结果。
|
||||
func (h *AIRecommendHandler) Status(c *gin.Context) {
|
||||
response := app.NewResponse(c)
|
||||
userID, ok := middleware.GetUserID(c.Request.Context())
|
||||
if !ok {
|
||||
response.ToErrorResponse(errcode.Unauthorized)
|
||||
return
|
||||
}
|
||||
var request dto.AIRecommendStatusRequest
|
||||
if err := c.ShouldBindQuery(&request); err != nil {
|
||||
response.ToErrorResponse(errcode.InvalidParams.WithDetails(err.Error()))
|
||||
return
|
||||
}
|
||||
out, e := h.svc.Status(c.Request.Context(), userID, &request)
|
||||
if e != nil {
|
||||
response.ToErrorResponse(e)
|
||||
return
|
||||
|
||||
@@ -134,8 +134,9 @@ func NewRouter() *gin.Engine {
|
||||
// 广告激励额度
|
||||
auth.POST("/ad-reward/grant", adRewardHandler.Grant)
|
||||
|
||||
// AI 推荐
|
||||
auth.POST("/ai-recommend", aiHandler.Create)
|
||||
// AI 推荐(异步:提交任务后轮询结果,避免长耗时请求被超时中断)
|
||||
auth.POST("/ai-recommend", aiHandler.Submit)
|
||||
auth.GET("/ai-recommend/status", aiHandler.Status)
|
||||
auth.POST("/ai-recommend/save", aiHandler.Save)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user