JobExecution
This commit is contained in:
@@ -12,27 +12,10 @@ namespace Musify.Domain.Entities
|
||||
[Required]
|
||||
public required JobType JobType { get; set; }
|
||||
|
||||
[Required]
|
||||
public JobState JobState { get; set; } = JobState.Pending;
|
||||
|
||||
[NotMapped]
|
||||
public bool IsCompleted => JobState == JobState.Completed;
|
||||
|
||||
[NotMapped]
|
||||
public bool IsFailed => JobState == JobState.Failed;
|
||||
|
||||
[NotMapped]
|
||||
public bool IsPending => JobState == JobState.Pending;
|
||||
|
||||
[Required]
|
||||
public required string Payload { get; set; }
|
||||
|
||||
[Required]
|
||||
public DateTime CreateAt { get; set; } = DateTime.UtcNow;
|
||||
|
||||
[Required]
|
||||
public int RetryCount { get; set; } = 0;
|
||||
|
||||
public DateTime CompletedAt { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Musify.Domain.Entities
|
||||
{
|
||||
#pragma warning disable CS8618
|
||||
[Table("JobExecution")]
|
||||
public class JobExecution
|
||||
{
|
||||
[Key]
|
||||
public Guid Id { get; set; } = Guid.NewGuid();
|
||||
|
||||
[Required]
|
||||
public required Guid JobId { get; set; }
|
||||
|
||||
[Required]
|
||||
public JobState JobState { get; set; } = JobState.Pending;
|
||||
|
||||
[NotMapped]
|
||||
public bool IsCompleted => JobState == JobState.Completed;
|
||||
|
||||
[NotMapped]
|
||||
public bool IsFailed => JobState == JobState.Failed;
|
||||
|
||||
[NotMapped]
|
||||
public bool IsPending => JobState == JobState.Pending;
|
||||
|
||||
[Required]
|
||||
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
||||
|
||||
[Required]
|
||||
public DateTime FinishedAt { get; set; }
|
||||
|
||||
[ForeignKey(nameof(JobId)) ]
|
||||
public Job Job { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user