fix(xhs): task/report 与 task/cancel 返回 JSON 响应

避免 Agent 客户端解析空 body 报「非 JSON 响应」导致任务上报失败。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
zzh 2026-07-01 11:58:48 +08:00
parent 607e09433b
commit f7be966adc
2 changed files with 9 additions and 2 deletions

View File

@ -136,6 +136,11 @@ public class XhsTaskReportInput
public string? ErrorMessage { get; set; }
}
public class XhsTaskReportOutput
{
public bool Ok { get; set; } = true;
}
public class XhsTaskListInput : XhsPageInput
{
public string? Status { get; set; }

View File

@ -43,7 +43,7 @@ public class XhsTaskService : ApplicationService
}
[HttpPost("/xhs/task/report")]
public async Task ReportAsync(XhsTaskReportInput input)
public async Task<XhsTaskReportOutput> ReportAsync(XhsTaskReportInput input)
{
var customerId = await OmsSessionHelper.ResolveXhsCustomerIdAsync(CustomerRepository, CurrentUser);
var task = await TaskRepository.FirstOrDefaultAsync(x => x.Id == input.TaskId);
@ -80,6 +80,7 @@ public class XhsTaskService : ApplicationService
await TaskRepository.UpdateAsync(task);
await SyncPublishRecordAsync(task, status, input);
await SyncAnalysisSessionAsync(task, status, input);
return new XhsTaskReportOutput();
}
[HttpPost("/xhs/task/list")]
@ -104,7 +105,7 @@ public class XhsTaskService : ApplicationService
}
[HttpPost("/xhs/task/cancel")]
public async Task CancelAsync(XhsTaskCancelInput input)
public async Task<XhsTaskReportOutput> CancelAsync(XhsTaskCancelInput input)
{
var customerId = await OmsSessionHelper.ResolveXhsCustomerIdAsync(CustomerRepository, CurrentUser);
var task = await TaskRepository.FirstOrDefaultAsync(x => x.Id == input.TaskId);
@ -121,6 +122,7 @@ public class XhsTaskService : ApplicationService
task.Status = XhsTaskStatusCodes.Cancelled;
task.FinishedAt = DateTime.Now;
await TaskRepository.UpdateAsync(task);
return new XhsTaskReportOutput();
}
private async Task SyncAnalysisSessionAsync(XhsTask task, string status, XhsTaskReportInput input)