1.更换软件协议为AGPL
2.切换项目名称为Hua.Todo
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
namespace Hua.Todo.Core.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 任务实体类,表示一个代办
|
||||
/// </summary>
|
||||
public class TaskEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// 任务唯一标识符
|
||||
/// </summary>
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务标题
|
||||
/// </summary>
|
||||
public string Title { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 任务优先级
|
||||
/// </summary>
|
||||
public TaskPriority Priority { get; set; } = TaskPriority.Medium;
|
||||
|
||||
/// <summary>
|
||||
/// 任务是否已完成
|
||||
/// </summary>
|
||||
public bool IsCompleted { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务创建时间(UTC)
|
||||
/// </summary>
|
||||
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 任务最后更新时间(UTC)
|
||||
/// </summary>
|
||||
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
|
||||
|
||||
/// <summary>
|
||||
/// 父任务ID,用于支持子任务功能
|
||||
/// </summary>
|
||||
public int? ParentTaskId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 父任务导航属性
|
||||
/// </summary>
|
||||
public TaskEntity? ParentTask { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 子任务集合
|
||||
/// </summary>
|
||||
public List<TaskEntity> SubTasks { get; set; } = new();
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
namespace Hua.Todo.Core.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 任务优先级枚举,定义任务的三种优先级级别
|
||||
/// </summary>
|
||||
public enum TaskPriority
|
||||
{
|
||||
/// <summary>
|
||||
/// 低优先级
|
||||
/// </summary>
|
||||
Low = 0,
|
||||
|
||||
/// <summary>
|
||||
/// 中优先级(默认)
|
||||
/// </summary>
|
||||
Medium = 1,
|
||||
|
||||
/// <summary>
|
||||
/// 高优先级
|
||||
/// </summary>
|
||||
High = 2
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net10.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
||||
<GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,61 @@
|
||||
using Hua.Todo.Core.Entities;
|
||||
|
||||
namespace Hua.Todo.Core.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// 任务仓储接口,定义任务数据访问操作
|
||||
/// </summary>
|
||||
public interface ITaskRepository
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取所有任务
|
||||
/// </summary>
|
||||
/// <returns>任务列表</returns>
|
||||
System.Threading.Tasks.Task<List<TaskEntity>> GetAllAsync();
|
||||
|
||||
/// <summary>
|
||||
/// 根据ID获取指定任务
|
||||
/// </summary>
|
||||
/// <param name="id">任务ID</param>
|
||||
/// <returns>任务对象,如果不存在则返回null</returns>
|
||||
System.Threading.Tasks.Task<TaskEntity?> GetByIdAsync(int id);
|
||||
|
||||
/// <summary>
|
||||
/// 获取所有未完成的任务
|
||||
/// </summary>
|
||||
/// <returns>未完成任务列表</returns>
|
||||
System.Threading.Tasks.Task<List<TaskEntity>> GetActiveTasksAsync();
|
||||
|
||||
/// <summary>
|
||||
/// 获取所有已完成的任务
|
||||
/// </summary>
|
||||
/// <returns>已完成任务列表</returns>
|
||||
System.Threading.Tasks.Task<List<TaskEntity>> GetCompletedTasksAsync();
|
||||
|
||||
/// <summary>
|
||||
/// 添加新任务
|
||||
/// </summary>
|
||||
/// <param name="taskEntity">要添加的任务对象</param>
|
||||
/// <returns>添加后的任务对象(包含生成的ID)</returns>
|
||||
System.Threading.Tasks.Task<TaskEntity> AddAsync(TaskEntity taskEntity);
|
||||
|
||||
/// <summary>
|
||||
/// 更新任务
|
||||
/// </summary>
|
||||
/// <param name="taskEntity">要更新的任务对象</param>
|
||||
/// <returns>更新后的任务对象</returns>
|
||||
System.Threading.Tasks.Task<TaskEntity> UpdateAsync(TaskEntity taskEntity);
|
||||
|
||||
/// <summary>
|
||||
/// 删除指定ID的任务
|
||||
/// </summary>
|
||||
/// <param name="id">任务ID</param>
|
||||
System.Threading.Tasks.Task DeleteAsync(int id);
|
||||
|
||||
/// <summary>
|
||||
/// 获取指定父任务的所有子任务
|
||||
/// </summary>
|
||||
/// <param name="parentTaskId">父任务ID</param>
|
||||
/// <returns>子任务列表</returns>
|
||||
System.Threading.Tasks.Task<List<TaskEntity>> GetSubTasksAsync(int parentTaskId);
|
||||
}
|
||||
Reference in New Issue
Block a user