using Hua.Todo.Core.Entities;
namespace Hua.Todo.Application.CloudSync.Models;
///
/// 云同步任务条目。
///
public class CloudTaskItem
{
///
/// 任务 ID(服务端分配)。
///
public int Id { get; set; }
///
/// 标题。
///
public string Title { get; set; } = string.Empty;
///
/// 优先级。
///
public TaskPriority Priority { get; set; }
///
/// 是否完成。
///
public bool IsCompleted { get; set; }
///
/// 创建时间(UTC)。
///
public DateTime CreatedAtUtc { get; set; }
///
/// 更新时间(UTC)。
///
public DateTime UpdatedAtUtc { get; set; }
///
/// 父任务 ID(v1.2.0 同步可先不使用)。
///
public int? ParentTaskId { get; set; }
}
///
/// 同步请求(增改删)。
///
public class SyncRequest
{
///
/// 新增或更新的任务列表。
///
public List Upserts { get; set; } = new();
///
/// 需要删除的任务 ID 列表。
///
public List Deletes { get; set; } = new();
}
///
/// 任务 Upsert DTO。
///
public class CloudTaskUpsert
{
///
/// 任务 ID;为空表示新建。
///
public int? Id { get; set; }
///
/// 标题。
///
public string Title { get; set; } = string.Empty;
///
/// 优先级。
///
public TaskPriority Priority { get; set; } = TaskPriority.Medium;
///
/// 是否完成。
///
public bool IsCompleted { get; set; }
///
/// 父任务 ID(可选)。
///
public int? ParentTaskId { get; set; }
}
///
/// 同步响应。
///
public class SyncResponse
{
///
/// 服务端时间(UTC)。
///
public DateTime ServerTimeUtc { get; set; }
///
/// 当前用户的任务全量。
///
public List Tasks { get; set; } = new();
}