TellmeRevitPluging/Models/TaskModels.cs
2025-12-09 17:43:30 +08:00

88 lines
1.8 KiB
C#

using System;
namespace RevitHttpControl.Models
{
/// <summary>
/// 任务状态响应
/// </summary>
public class TaskStatusResponse
{
/// <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; }
}
}