添加项目文件。

This commit is contained in:
2026-05-09 17:06:30 +08:00
parent c60f5fe117
commit 720ef957d4
378 changed files with 14843 additions and 0 deletions
+48
View File
@@ -0,0 +1,48 @@
using FileService.Domain.Events;
using FileService.Domain.ValueObjects;
using IM.DomainCommons;
namespace FileService.Domain.Entities
{
public class UploadTask:AggregateRootEntity
{
public Guid UploaderId { get; private set; }
public Guid ConversationId { get; private set; }
public FileName FileName { get; private set; }
public long FileSize { get; private set; }
public ContentType ContentType { get; private set; }
public StorageLocation StorageLocation { get; private set; }
public UploadTaskState State { get; private set; }
public CheckSum CheckSum { get; private set; }
private UploadTask() { }
public UploadTask(Guid uploaderId, Guid conversationId, FileName fileName, long fileSize, ContentType contentType, StorageLocation? storageLocation, CheckSum checkSum)
{
UploaderId = uploaderId;
ConversationId = conversationId;
FileName = fileName;
FileSize = fileSize;
ContentType = contentType;
StorageLocation = storageLocation ?? new StorageLocation();
CheckSum = checkSum;
}
public void StartUpload()
{
State = UploadTaskState.Uploading;
}
public void CompleteUpload(StorageLocation location)
{
State = UploadTaskState.Completed;
AddDomainEvent(new UploadTaskCompletedDomainEvent(this));
}
public void Fail()
{
State = UploadTaskState.Failed;
}
}
}