package dto // 发起AI推荐 type AIRecommendCreateRequest struct { SceneType int8 `json:"scene_type" binding:"required,oneof=1 2"` // 场景类型 1=每日推荐 2=个性化场景 Scene string `json:"scene"` // 用户自定义场景描述 } // AIRecommendSubmitResponse 提交 AI 推荐任务响应。 // 接口不等待大模型,立即返回 task_id;前端拿到后轮询 AIRecommendStatusRequest 对应的接口获取结果。 type AIRecommendSubmitResponse struct { TaskID string `json:"task_id"` // 任务ID,用于轮询结果 Status int8 `json:"status"` // 任务状态 1=生成中 2=成功 3=失败 } // AIRecommendStatusRequest 查询 AI 推荐任务状态 type AIRecommendStatusRequest struct { TaskID string `form:"task_id" binding:"required"` // 任务ID } // AIRecommendStatusResponse 任务状态响应 type AIRecommendStatusResponse struct { TaskID string `json:"task_id"` Status int8 `json:"status"` // 1=生成中 2=成功 3=失败 Result *AIRecommendCreateResponse `json:"result,omitempty"` // status=2 时返回推荐结果 ErrorCode int `json:"error_code,omitempty"` // status=3 时返回业务错误码 ErrorMsg string `json:"error_msg,omitempty"` // status=3 时返回失败原因 } // AI推荐结果 type AIRecommendCreateResponse struct { OutfitUUID string `json:"outfit_uuid"` // 穿搭UUID OutfitName string `json:"outfit_name"` // 穿搭名称 OutfitDesc string `json:"outfit_desc"` // 穿搭描述 Scene string `json:"scene"` // 适合场景 Source int8 `json:"source"` // 来源 1=用户创建 2=AI推荐 Status int8 `json:"status"` // 状态 1=正常 2=封禁 3=待用户保存 OutfitItem []OutfitItem `json:"outfit_item"` } // AI推荐穿搭的衣物UUID type OutfitItem struct { ClothesUUID string `json:"clothes_uuid"` // 衣物UUID } // 保存AI推荐穿搭到我的搭配 type AIRecommendSaveRequest struct { OutfitUUID string `json:"outfit_uuid" binding:"required"` // 穿搭UUID }