120 lines
2.7 KiB
C#
120 lines
2.7 KiB
C#
using System;
|
||
using Newtonsoft.Json;
|
||
|
||
namespace RevitHttpControl.Models
|
||
{
|
||
/// <summary>
|
||
/// 任务状态响应
|
||
/// </summary>
|
||
public class TaskStatusResponse
|
||
{
|
||
/// <summary>
|
||
/// 外部执行ID(用于批处理回调)
|
||
/// </summary>
|
||
public string ExecutionId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 任务ID
|
||
/// </summary>
|
||
public Guid TaskId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 任务状态
|
||
/// </summary>
|
||
public TaskStatus Status { get; set; }
|
||
|
||
/// <summary>
|
||
/// 任务结果(如果已完成)
|
||
/// </summary>
|
||
public object Result { get; set; }
|
||
|
||
/// <summary>
|
||
/// 错误消息(如果失败)
|
||
/// </summary>
|
||
public string ErrorMessage { get; set; }
|
||
|
||
/// <summary>
|
||
/// 创建时间
|
||
/// </summary>
|
||
public DateTime CreatedAt { get; set; }
|
||
|
||
/// <summary>
|
||
/// 完成时间
|
||
/// </summary>
|
||
public DateTime? CompletedAt { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 任务状态枚举
|
||
/// </summary>
|
||
public enum TaskStatus
|
||
{
|
||
/// <summary>
|
||
/// 等待中
|
||
/// </summary>
|
||
Pending,
|
||
|
||
/// <summary>
|
||
/// 运行中
|
||
/// </summary>
|
||
Running,
|
||
|
||
/// <summary>
|
||
/// 已完成
|
||
/// </summary>
|
||
Completed,
|
||
|
||
/// <summary>
|
||
/// 失败
|
||
/// </summary>
|
||
Failed,
|
||
|
||
/// <summary>
|
||
/// 已取消
|
||
/// </summary>
|
||
Cancelled
|
||
}
|
||
|
||
/// <summary>
|
||
/// 通用异步操作响应
|
||
/// </summary>
|
||
public class AsyncOperationResponse
|
||
{
|
||
/// <summary>
|
||
/// 任务ID
|
||
/// </summary>
|
||
public Guid TaskId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 状态查询URL
|
||
/// </summary>
|
||
public string StatusUrl { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 批处理任务结果回调请求体
|
||
/// </summary>
|
||
public class TaskResultCallbackRequest
|
||
{
|
||
[JsonProperty("execution_id")]
|
||
public string ExecutionId { get; set; }
|
||
|
||
[JsonProperty("software_id")]
|
||
public string SoftwareId { get; set; }
|
||
|
||
[JsonProperty("status")]
|
||
public string Status { get; set; }
|
||
|
||
[JsonProperty("error_message")]
|
||
public string ErrorMessage { get; set; }
|
||
|
||
[JsonProperty("result")]
|
||
public object Result { get; set; }
|
||
|
||
[JsonProperty("finished_at")]
|
||
public string FinishedAt { get; set; }
|
||
|
||
[JsonProperty("token")]
|
||
public string Token { get; set; }
|
||
}
|
||
} |